
:root{
  --wine:#490c0d;
  --ivory:#f5f2ec;
  --soft:#daccc5;
  --muted:#bfaeaa;
  --line:rgba(245,242,236,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--wine);
  color:var(--ivory);
  font-family:"Glacial Indifference","Helvetica Neue",sans-serif;
}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
p{line-height:1.5}
.back-home{
  position:fixed;
  z-index:50;
  top:18px;
  left:22px;
  padding:9px 12px;
  background:rgba(63,27,31,.74);
  color:var(--ivory);
  backdrop-filter:blur(10px);
  font-size:9px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.wedding-landing{width:min(1280px,100%);margin:0 auto;background:var(--wine);overflow:hidden}
.wedding-section{position:relative;padding:92px 68px;border-bottom:1px solid var(--line);background:var(--wine)}
.eyebrow,.w-section-number{font-size:9px;letter-spacing:.16em;text-transform:uppercase}
h1,h2,h3{margin-top:0}
.wedding-section>h2,
.w-intro h2,
.w-index h2,
.w-approach-copy h2,
.w-services>h2,
.w-stationery h2,
.w-live-copy h2,
.w-how-copy h2,
.w-paper-copy h2,
.w-delivery-copy h2,
.w-favors h2,
.w-couple-copy h2,
.w-together-copy h2,
.w-contact-copy h2,
.w-portfolio-heading h2{
  font-family:"Notable",sans-serif;
  font-weight:400;
  letter-spacing:.065em;
  line-height:1.02;
  text-transform:uppercase;
}
/* HERO */
.w-hero{padding:0;min-height:100svh;height:100svh}
.w-hero-image{position:absolute;inset:0;z-index:1}
.w-hero-image img,.w-hero-image{object-position:center;}
.w-hero-overlay{
  position:relative;z-index:2;min-height:100svh;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:24px;
  background:linear-gradient(to bottom, rgba(63,27,31,.18), rgba(63,27,31,.26));
}
.w-hero-title{font-family:"Notable",sans-serif;font-weight:400;letter-spacing:.09em;text-transform:uppercase;font-size:clamp(44px,6vw,92px);line-height:1.02;margin:16px 0 0;color:#fff;text-shadow:0 6px 24px rgba(0,0,0,.12)}
.w-hero .eyebrow{color:#fff;background:rgba(63,27,31,.55);padding:8px 12px}
/* INTRO */
.w-intro{display:grid;grid-template-columns:1fr 1.18fr;gap:56px;align-items:end}
.w-intro h2{font-size:clamp(46px,5vw,78px);margin-bottom:40px}
.w-intro p{max-width:520px;font-size:15px;margin:0;color:var(--soft)}
.w-intro-image{height:560px;object-position:center 36%}
/* INDEX */
.w-index h2{font-size:clamp(46px,5vw,80px);margin-bottom:58px}
.w-index-grid{display:grid;grid-template-columns:1.45fr .55fr;gap:42px;align-items:stretch}
.w-index-grid>img{height:620px}
.w-index-list{display:flex;flex-direction:column;gap:5px;padding-top:4px;font-size:13px;line-height:1.5}
.w-index-list span{height:18px}
.w-index-list a{opacity:.86}
.w-index-list a:hover{opacity:1;text-decoration:underline;text-underline-offset:5px}
/* WHO */
.w-about>h2{display:inline-block;font-size:clamp(44px,5vw,76px);margin:0 0 70px 12px}
.w-section-number{display:inline-block;vertical-align:top;margin-top:10px}
.w-about-grid{display:grid;grid-template-columns:1.3fr .55fr;gap:72px;align-items:end}
.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:50px;font-size:14px}
.two-cols p{margin:0;color:var(--soft)}
.w-about-grid>img{height:520px}
/* APPROACH */
.w-approach{display:grid;grid-template-columns:.92fr 1.08fr;gap:0;padding:0}
.w-approach>img{min-height:720px}
.w-approach-copy{padding:96px 72px;display:flex;flex-direction:column;justify-content:center}
.w-approach-copy h2{font-size:clamp(42px,5vw,70px);margin-bottom:72px}
.w-approach-copy h2 span,
.w-services>h2 span,
.w-together-copy h2 span,
.w-contact-copy h2 span{font-family:"Glacial Indifference",sans-serif;font-size:.52em;letter-spacing:.16em}
.w-approach-copy p{max-width:520px;font-size:14px;color:var(--soft);margin:0 0 18px}
/* SERVICES */
.w-services>h2{font-size:clamp(48px,5vw,78px);margin-bottom:72px}
.w-services-list{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin:0}
.w-services-list>div{min-height:260px;padding:28px 24px;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;background:rgba(255,255,255,.015)}
.w-services-list h3{font-family:"Notable",sans-serif;letter-spacing:.06em;font-size:22px;line-height:1.08;color:var(--ivory);margin:0 0 34px;text-transform:uppercase}
.w-services-list p{font-size:12px;color:var(--soft);margin:0}
/* STATIONERY */
.w-stationery h2{font-size:clamp(48px,5vw,78px);margin-bottom:74px}
.w-stationery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.w-stationery figure{margin:0}
.w-stationery figcaption,.w-paper figcaption,.w-delivery figcaption{font-size:12px;letter-spacing:.03em;margin-bottom:12px;color:var(--soft)}
.w-stationery figure img{height:230px}
.w-stationery-note{margin:30px 0 0 auto;max-width:360px;font-size:13px;color:var(--soft)}
/* LIVE */
.w-live{padding:0;display:grid;grid-template-columns:.9fr 1.1fr}
.w-live-image{min-height:760px;overflow:hidden}
.w-live-image img{min-height:760px;object-position:center top;transform:scale(1.24);transform-origin:center top}
.w-live-copy{padding:94px 72px}
.w-live-copy h2{font-size:clamp(48px,5vw,78px);margin-bottom:60px}
.w-live-copy h3{font-size:12px;letter-spacing:.12em;font-weight:400;margin:0 0 28px}
.w-live-copy>p{max-width:430px;font-size:14px;color:var(--soft)}
.w-live-foot{margin-top:64px;display:grid;grid-template-columns:1fr 150px;align-items:end;gap:40px}
.w-live-foot p{font-size:11px;color:var(--soft);margin:0}
.w-live-foot img{height:210px;object-fit:contain;background:transparent}
/* FAQ */
.w-faq-hero{height:500px;object-position:center}
.w-faq-grid{margin-top:38px;display:grid;grid-template-columns:1.35fr repeat(4,1fr);gap:20px}
.w-faq-grid>div{padding:26px 20px;border-top:1px solid var(--line)}
.w-faq-title h2{font-family:"Notable",sans-serif;letter-spacing:.065em;font-size:26px;line-height:1.08;margin:0 0 14px;text-transform:uppercase}
.w-faq-title span{font-size:9px;color:var(--muted)}
.w-faq-grid h3{font-size:18px;font-weight:400;margin:0 0 13px}
.w-faq-grid p{font-size:11px;color:var(--soft);margin:0}
/* HOW */
.w-how{display:grid;grid-template-columns:.88fr 1.12fr;gap:0;padding:0}
.w-how>img{min-height:720px}
.w-how-copy{padding:92px 72px}
.w-how-lead{font-size:24px;max-width:560px;margin:0 0 64px}
.w-how-copy h2{font-size:30px;margin-bottom:28px}
.w-how-copy p:not(.w-how-lead){font-size:14px;max-width:560px;color:var(--soft)}
.w-how-copy small{display:block;max-width:260px;font-size:9px;margin:48px 0 0 auto;color:var(--muted)}
/* PAPER */
.w-paper-formats{display:grid;grid-template-columns:repeat(4,1fr) 1.2fr;gap:18px;align-items:start}
.w-paper figure{margin:0}
.w-paper figure img{height:240px;object-fit:cover;object-position:center;background:transparent}
.w-paper-copy{padding-left:18px}
.w-paper-copy h2,.w-delivery-copy h2{font-size:38px;margin-bottom:22px}
.w-paper-copy p,.w-delivery-copy p{font-size:11px;color:var(--soft)}
.w-delivery{display:grid;grid-template-columns:1.2fr repeat(4,1fr);gap:18px;align-items:end;margin-top:74px}
.w-delivery figure img{height:230px;object-position:center}
.w-delivery-copy{align-self:start;padding-right:18px}
/* FAVORS */
.w-favors{display:grid;grid-template-columns:1.5fr .62fr;gap:54px}
.w-favors h2{font-size:clamp(48px,5vw,78px);margin-bottom:64px}
.w-favors-columns{display:grid;grid-template-columns:1.5fr .8fr;gap:52px}
.w-favors-columns h3{font-size:11px;letter-spacing:.08em;margin:0 0 9px}
.w-favors-columns p{font-size:12px;color:var(--soft);margin:0 0 30px}
.w-favors-summary p{font-size:16px}
.w-favors-main small{display:block;font-size:9px;color:var(--muted);margin-top:32px}
.w-favors>img{height:320px;align-self:end}
/* COUPLE */
.w-couple{padding:0;display:grid;grid-template-columns:.44fr 1fr}
.w-couple-main{min-height:760px}
.w-couple-copy{padding:92px 72px}
.w-couple-copy h2{font-size:clamp(48px,5vw,76px);margin-bottom:60px}
.w-couple-columns{display:grid;grid-template-columns:.75fr 1fr;gap:56px}
.w-couple-columns p{font-size:12px;color:var(--soft)}
.w-couple-mini{display:flex;gap:12px;width:230px;margin-top:32px}
.w-couple-mini img{width:108px;height:160px;object-fit:cover}
.w-couple-copy small{display:block;font-size:9px;color:var(--muted);max-width:330px;margin-top:20px}
/* PROCESS */
.w-together{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.w-together>img{height:520px}
.w-together-copy{padding:64px 0 0 58px;display:flex;flex-direction:column;justify-content:space-between}
.w-together-copy h2{font-size:clamp(40px,4vw,64px);margin:0}
.w-together-copy h3{font-size:18px;font-weight:400;margin:0 0 12px}
.w-together-copy p{font-size:11px;color:var(--soft);max-width:220px}
.w-process{padding-top:58px;padding-bottom:86px}
.w-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.w-process-grid>div{min-height:190px;padding-top:20px;border-top:1px solid var(--line)}
.w-process-grid h3{font-size:18px;font-weight:400;margin:0 0 14px}
.w-process-grid p{font-size:11px;color:var(--soft)}
/* PORTFOLIO */
.w-portfolio{padding:84px 68px 96px;border-bottom:0}
.w-portfolio-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:42px}
.w-portfolio-heading h2{font-size:clamp(48px,5vw,76px);margin:0}
.w-portfolio-heading p{max-width:360px;margin:0;font-size:13px;color:var(--soft)}
.w-portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:16px}
.portfolio-item{margin:0;overflow:hidden;background:rgba(255,255,255,.03)}
.portfolio-item img{transition:transform .35s ease}
.portfolio-item:hover img{transform:scale(1.03)}
.portfolio-item.large{grid-column:span 2;grid-row:span 2}
.portfolio-item.tall{grid-row:span 2}
.portfolio-item.wide{grid-column:span 2}
/* CONTACT */
.w-contact{min-height:760px;display:grid;grid-template-columns:1.05fr .95fr;padding:0}
.w-contact-copy{padding:84px 68px 56px;display:flex;flex-direction:column}
.w-contact-copy h2{font-size:clamp(48px,5vw,76px);margin-bottom:70px}
.w-contact-copy p{font-size:13px;color:var(--soft);margin:0 0 28px}
.w-cta{margin-top:12px;display:inline-block;border-bottom:1px solid var(--ivory);padding-bottom:5px;align-self:flex-start;font-size:10px;letter-spacing:.08em}
.w-contact>img{height:100%;object-position:center}
.w-signature{margin-top:auto;position:relative;height:170px;overflow:hidden}
.w-signature .with-love{position:absolute;left:0;top:28px;font-size:14px;font-style:italic;z-index:2}
.w-signature img{position:absolute;left:65px;bottom:-180px;width:420px;height:auto;object-fit:contain;mix-blend-mode:screen}
/* RESPONSIVE */
@media(max-width:900px){
  .wedding-section{padding:58px 28px}
  .w-intro,.w-approach,.w-live,.w-how,.w-couple,.w-contact,.w-together{grid-template-columns:1fr}
  .w-intro-image,.w-approach>img,.w-how>img,.w-couple-main,.w-contact>img{height:520px;min-height:0}
  .w-live-image,.w-live-image img{min-height:520px}
  .w-index-grid,.w-about-grid{grid-template-columns:1fr}
  .w-index-grid>img,.w-about-grid>img{height:480px}
  .two-cols{grid-template-columns:1fr}
  .w-services-list{grid-template-columns:1fr 1fr}
  .w-stationery-grid{grid-template-columns:1fr 1fr}
  .w-faq-grid{grid-template-columns:1fr 1fr}.w-faq-title{grid-column:1/-1}
  .w-paper-formats,.w-delivery{grid-template-columns:1fr 1fr}.w-paper-copy,.w-delivery-copy{grid-column:1/-1;padding:0}
  .w-favors{grid-template-columns:1fr}.w-favors>img{height:380px}
  .w-together-copy{padding:40px 0 0}
  .w-process-grid{grid-template-columns:1fr 1fr}
  .w-portfolio-heading{display:block}.w-portfolio-heading p{margin-top:12px}
  .w-portfolio-grid{grid-template-columns:1fr 1fr;grid-auto-rows:240px}
  .portfolio-item.large,.portfolio-item.tall,.portfolio-item.wide{grid-column:auto;grid-row:auto}
  .w-signature img{left:30px}
}
@media(max-width:600px){
  .wedding-section{padding:46px 18px}
  .back-home{top:10px;left:10px}
  .w-hero-title{font-size:clamp(34px,12vw,60px)}
  .w-services-list,.w-stationery-grid,.w-faq-grid,.w-paper-formats,.w-delivery,.w-process-grid,.w-portfolio-grid{grid-template-columns:1fr}
  .w-services-list>div{min-height:210px}
  .w-stationery figure img{height:280px}
  .w-faq-hero{height:340px}
  .w-live-foot{grid-template-columns:1fr}
  .w-live-foot img{width:140px}
  .w-couple-columns{grid-template-columns:1fr}
  .w-favors-columns{grid-template-columns:1fr}
  .w-portfolio-grid{grid-auto-rows:280px}
  .w-contact>img{height:460px}
  .w-signature img{width:340px;left:10px;bottom:-145px}
}


/* --- refinement update --- */
body{font-size:16px}
.eyebrow,.w-section-number,.back-home,.w-index-list,.w-faq-title span,.w-how-copy small,.w-favors-main small,.w-couple-copy small,.w-cta{font-size:13.5px;letter-spacing:.09em}
.w-stationery figcaption,.w-paper figcaption,.w-delivery figcaption,.w-services-list p,.w-contact-copy p,.w-process-grid p,.w-faq-grid p,.w-live-foot p,.w-favors-columns p,.w-couple-columns p,.w-approach-copy p,.w-how-copy p:not(.w-how-lead),.w-stationery-note,.w-intro p,.w-portfolio-heading p{font-size:14px}
.w-faq-grid h3,.w-process-grid h3,.w-together-copy h3{font-size:22px}
.w-heading{display:flex;align-items:flex-start;gap:18px;margin-bottom:44px}
.w-heading .w-section-number{margin-top:10px;min-width:30px;color:var(--muted)}
.w-heading h2{margin:0;font-size:clamp(46px,5vw,78px)}
.w-about>.w-heading{margin:0 0 70px 12px}
.w-about>h2,.w-about>.w-section-number{display:none}
.w-approach-copy .w-heading,.w-services>.w-heading,.w-stationery .w-heading,.w-live-copy .w-heading,.w-paper-copy .w-heading,.w-delivery-copy .w-heading,.w-favors-main .w-heading,.w-couple-copy .w-heading,.w-together-copy .w-heading,.w-portfolio-heading .w-heading,.w-contact-copy .w-heading{margin-bottom:46px}
.w-faq-title .w-heading{margin-bottom:20px;display:block}
.w-faq-title .w-heading .w-section-number{display:block;margin:0 0 12px;min-width:unset}
.w-faq-title .w-heading h2{font-size:34px;line-height:1.04}
.w-services-list h3{font-size:24px}
.w-live-image,.w-live-image img{min-height:760px;height:100%}
.w-live-image img{object-fit:cover;object-position:center 18%;transform:scale(1.05)}
.w-paper figure img,.w-delivery figure img{height:260px}
.w-portfolio-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:240px;grid-auto-flow:dense}
.portfolio-item{background:rgba(255,255,255,.02)}
.portfolio-item.contain{background:#ece8e4}
.portfolio-item.contain img{object-fit:contain;padding:0}
.portfolio-item.item-1{grid-column:span 2;grid-row:span 2}
.portfolio-item.item-2{grid-column:span 1;grid-row:span 2}
.portfolio-item.item-3{grid-column:span 2;grid-row:span 2}
.portfolio-item.item-10{grid-row:span 2}
.portfolio-item.item-8 img{object-position:center 30%}
.portfolio-item.item-2 img{object-position:center}
.portfolio-item.item-10 img{object-position:center center}
.w-contact{min-height:620px}
.w-closing{display:grid;grid-template-columns:1.7fr .95fr;min-height:520px}
.w-closing-left{background:#ece8e4;color:var(--wine);display:flex;align-items:center;justify-content:center;padding:40px}
.w-closing-left p{font-family:"Times New Roman", Georgia, serif;font-style:italic;font-size:clamp(54px,7vw,106px);line-height:1.15;margin:0}
.w-closing-right{position:relative;overflow:hidden;min-height:520px}
.w-closing-right img{width:100%;height:100%;object-fit:cover;object-position:center}
.w-closing-right span{position:absolute;left:8%;bottom:10%;font-family:"Times New Roman", Georgia, serif;font-style:italic;font-size:clamp(54px,6vw,92px);color:#fff;letter-spacing:.02em;text-shadow:0 2px 10px rgba(0,0,0,.12)}
@media(max-width:900px){
  .w-heading{gap:12px;margin-bottom:32px}
  .w-heading .w-section-number{margin-top:8px}
  .w-heading h2{font-size:clamp(36px,8vw,58px)}
  .w-portfolio-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px}
  .portfolio-item.item-1,.portfolio-item.item-2,.portfolio-item.item-3,.portfolio-item.item-10{grid-column:auto;grid-row:auto}
  .w-closing{grid-template-columns:1fr}
  .w-closing-right{min-height:320px}
}
@media(max-width:600px){
  .eyebrow,.w-section-number,.back-home,.w-index-list,.w-faq-title span,.w-how-copy small,.w-favors-main small,.w-couple-copy small,.w-cta{font-size:13px}
  .w-closing-left p,.w-closing-right span{font-size:44px}
  .w-portfolio-grid{grid-template-columns:1fr;grid-auto-rows:260px}
}


/* --- refinement v4 fixes --- */
.w-live-image{min-height:760px;height:760px;background:var(--wine)}
.w-live-image img{width:100%;height:100%;object-fit:cover;object-position:center top;transform:none}

.w-paper-formats{grid-template-columns:repeat(4,minmax(0,1fr)) 1.18fr;column-gap:22px;row-gap:26px;align-items:start}
.w-paper figure,.w-delivery figure{margin:0}
.paper-item img,.delivery-item img{width:100%;height:auto;display:block;object-fit:contain;background:transparent}
.paper-a5 img{aspect-ratio:394/591}
.paper-a4 img{aspect-ratio:498/600}
.paper-custom img{aspect-ratio:332/591}
.paper-personal img{aspect-ratio:724/543}
.w-paper-copy{padding-left:26px;align-self:start}
.w-paper-copy p,.w-delivery-copy p{max-width:300px}

.w-delivery{grid-template-columns:1.18fr repeat(4,minmax(0,1fr));column-gap:22px;row-gap:26px;align-items:start;margin-top:64px}
.delivery-paper img,.delivery-acetate img,.delivery-tissue img,.delivery-frame img{aspect-ratio:527/746}
.delivery-frame img{aspect-ratio:422/597}
.w-delivery-copy{padding-right:22px;align-self:start}

/* closing closer to the PDF */
.w-closing{display:grid;grid-template-columns:2.15fr 1fr;min-height:540px;background:#ece8e4}
.w-closing-copy{position:relative;background:#ece8e4;color:var(--wine);padding:80px 70px 56px;overflow:hidden}
.w-closing-signoff{position:absolute;left:70px;bottom:148px;font-family:"Times New Roman", Georgia, serif;font-style:italic;font-size:clamp(66px,6.6vw,120px);line-height:.92;letter-spacing:.01em}
.w-closing-signoff.second{left:70px;bottom:58px}
.w-closing-script{position:absolute;right:-14px;bottom:32px;width:min(44vw,460px);height:auto;object-fit:contain;opacity:.98}
.w-closing-photo{position:relative;overflow:hidden;min-height:540px;background:var(--wine)}
.w-closing-photo img{width:100%;height:100%;object-fit:cover;object-position:center center}

@media(max-width:1100px){
  .w-paper-formats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .w-paper-copy{grid-column:1/-1;padding-left:0;max-width:620px}
  .w-delivery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .w-delivery-copy{grid-column:1/-1;padding-right:0;max-width:620px}
}
@media(max-width:900px){
  .w-live-image{height:560px;min-height:560px}
  .w-closing{grid-template-columns:1fr}
  .w-closing-photo{min-height:360px}
  .w-closing-copy{min-height:320px;padding:56px 28px}
  .w-closing-signoff{left:28px;bottom:108px;font-size:62px}
  .w-closing-signoff.second{left:28px;bottom:30px}
  .w-closing-script{width:320px;right:-8px;bottom:16px}
}
@media(max-width:600px){
  .w-paper-formats,.w-delivery{grid-template-columns:1fr}
  .w-closing-copy{min-height:270px}
  .w-closing-signoff{font-size:48px;bottom:88px}
  .w-closing-signoff.second{bottom:24px}
  .w-closing-script{width:240px}
}


/* --- V5 precise corrections --- */
.w-live-image{height:760px!important;min-height:760px!important;overflow:hidden;position:relative;background:var(--wine)}
.w-live-image img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;transform:none!important}

.w-paper-formats{grid-template-columns:repeat(4,minmax(0,1fr)) 1.15fr!important;gap:22px!important;align-items:start!important}
.w-paper-formats figure{margin:0!important}
.w-paper-formats figure img{width:100%!important;height:auto!important;aspect-ratio:1/1!important;object-fit:contain!important;object-position:center!important;background:#d7d0c8!important}
.w-paper-formats figure:nth-child(4) img{object-fit:cover!important}
.w-paper-formats figcaption{margin-bottom:12px!important;min-height:20px!important}
.w-paper-copy{padding-left:24px!important}

.w-closing-ref{background:#ece9e5;margin:0;padding:0;overflow:hidden;border:0}
.w-closing-ref img{display:block;width:100%;height:auto;object-fit:contain}

@media(max-width:1100px){
 .w-paper-formats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .w-paper-copy{grid-column:1/-1;padding-left:0!important}
}
@media(max-width:900px){.w-live-image{height:560px!important;min-height:560px!important}}
@media(max-width:600px){
 .w-paper-formats{grid-template-columns:1fr!important}
 .w-live-image{height:430px!important;min-height:430px!important}
}


/* --- v6 content/layout adjustments --- */
.w-intro-image{height:640px;object-position:center 8%;}
.w-index-grid>img{height:680px;object-position:center center;}
.w-approach>img{min-height:700px;object-position:center 62%;}
.w-live-image,.w-live-image img{min-height:760px;height:100%;}
.w-live-image img{object-fit:cover;object-position:center center;transform:none;}
.w-how-figure{margin:0;position:relative;min-height:720px;}
.w-how-figure img{min-height:720px;}
.w-how-figure figcaption{position:absolute;left:24px;bottom:24px;padding:8px 12px;background:rgba(63,27,31,.76);backdrop-filter:blur(8px);font-size:12px;letter-spacing:.04em;color:var(--ivory);}

/* readable body copy */
body{font-size:17px;}
.w-index-list{font-size:15px;line-height:1.6;}
.w-intro p,.two-cols,.w-approach-copy p,.w-services-list p,.w-stationery-note,.w-live-copy>p,.w-live-foot p,.w-faq-grid p,.w-how-copy p:not(.w-how-lead),.w-paper-copy p,.w-delivery-copy p,.w-favors-columns p,.w-couple-columns p,.w-process-grid p,.w-contact-copy p,.w-portfolio-heading p{font-size:15px;line-height:1.6;}
.w-favors-summary p{font-size:17px;line-height:1.55;}
.w-live-copy h3,.w-favors-columns h3{font-size:13px;}
.w-faq-grid h3,.w-process-grid h3,.w-together-copy h3{font-size:22px;}
.w-how-copy small,.w-favors-main small,.w-couple-copy small,.w-cta,.back-home,.w-section-number,.eyebrow,.w-faq-title span{font-size:12px;}

/* paper & delivery cleanup */
.w-paper-copy{padding:0 0 34px;max-width:760px;}
.w-paper-copy .w-heading,.w-delivery-copy .w-heading{margin-bottom:34px;}
.w-paper-formats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start;}
.w-paper figure img{height:auto;aspect-ratio:1 / 1;object-fit:cover;object-position:center;background:transparent;}
.w-delivery{display:block;margin-top:82px;}
.w-delivery-copy{padding:0 0 34px;max-width:860px;}
.w-delivery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start;}
.w-delivery figure{margin:0;}
.w-delivery figure img{height:auto;aspect-ratio:4 / 5;object-fit:cover;object-position:center;}

/* couple section image panel */
.w-couple-mini{gap:18px;width:100%;max-width:520px;margin-top:38px;}
.w-couple-mini img{width:calc(50% - 9px);height:230px;object-fit:cover;}
.w-couple-mini img:last-child{object-position:center top;}

@media(max-width:900px){
  .w-paper-formats,.w-delivery-grid{grid-template-columns:1fr 1fr;}
  .w-intro-image{height:520px;}
}
@media(max-width:600px){
  .w-paper-formats,.w-delivery-grid{grid-template-columns:1fr;}
  .w-how-figure figcaption{left:14px;bottom:14px;}
}


/* --- v7 refinements requested --- */
body{font-size:18px;}
.wedding-section{padding:104px 72px;}
.eyebrow,.w-section-number,.back-home,.w-index-list,.w-faq-title span,.w-how-copy small,.w-favors-main small,.w-couple-copy small,.w-cta{font-size:13px;letter-spacing:.1em;}
.w-intro p,.two-cols,.w-approach-copy p,.w-services-list p,.w-stationery-note,.w-live-copy>p,.w-live-foot p,.w-faq-grid p,.w-how-copy p:not(.w-how-lead),.w-paper-copy p,.w-delivery-copy p,.w-favors-columns p,.w-couple-columns p,.w-process-grid p,.w-contact-copy p,.w-portfolio-heading p,.w-stationery figcaption,.w-paper figcaption,.w-delivery figcaption{font-size:16px;line-height:1.68;}
.w-faq-grid h3,.w-process-grid h3,.w-together-copy h3{font-size:24px;}
.w-live-copy h3,.w-favors-columns h3{font-size:14px;letter-spacing:.1em;}
.w-favors-summary p{font-size:18px;line-height:1.6;}

/* intro */
.w-intro{grid-template-columns:.68fr 1.32fr;gap:40px;align-items:center;}
.w-intro-copy{display:flex;align-items:center;height:100%;}
.w-intro-copy p{max-width:420px;font-size:16px;}
.w-intro-image{height:760px;object-fit:cover;object-position:center 12%;}

/* approach */
.w-approach>img{min-height:760px;object-position:center center;}
.w-approach-copy{padding:100px 78px;}

/* paper and delivery */
.w-paper-copy{max-width:980px;padding:0 0 38px;}
.w-paper-copy p,.w-delivery-copy p{max-width:820px;}
.w-paper-formats{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;align-items:start;}
.w-paper-formats figure,.w-delivery-grid figure{display:flex;flex-direction:column;}
.w-paper-formats figure img{height:auto!important;aspect-ratio:4/5!important;object-fit:cover!important;object-position:center!important;background:#d8d1c9!important;}
.w-paper-formats figure:nth-child(4) img{object-fit:cover!important;}
.w-paper figcaption,.w-delivery figcaption{margin-bottom:14px;font-size:15px;}
.w-delivery-grid{gap:28px;}
.w-delivery figure img{aspect-ratio:4/5;object-fit:cover;}

/* bomboniere */
.w-favors{grid-template-columns:1.18fr .82fr;gap:42px;align-items:start;}
.w-favors>img{height:720px;width:100%;object-fit:cover;object-position:center center;align-self:stretch;}

/* couple */
.w-couple{grid-template-columns:.5fr .95fr;align-items:stretch;}
.w-couple-main{min-height:880px;object-fit:cover;object-position:center 24%;}
.w-couple-copy{padding:96px 72px;}
.w-couple-columns p{font-size:15px;line-height:1.65;}
.w-couple-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:680px;width:100%;margin-top:42px;}
.w-couple-mini img{width:100%;height:390px;object-fit:contain;background:#efe9e2;padding:0;}

/* responsive tune */
@media(max-width:1100px){
  .wedding-section{padding:82px 44px;}
  .w-intro{grid-template-columns:1fr;}
  .w-intro-image{height:620px;}
  .w-paper-formats,.w-delivery-grid{grid-template-columns:1fr 1fr!important;}
  .w-favors{grid-template-columns:1fr;}
  .w-favors>img{height:580px;}
  .w-couple{grid-template-columns:1fr;}
  .w-couple-main{height:620px;min-height:620px;}
}
@media(max-width:700px){
  .wedding-section{padding:58px 22px;}
  .w-paper-formats,.w-delivery-grid,.w-couple-mini{grid-template-columns:1fr!important;}
  .w-intro-image{height:460px;}
  .w-favors>img{height:420px;}
  .w-couple-main{height:460px;min-height:460px;}
}

/* ===== v8 final overrides ===== */
[hidden]{display:none!important}
body{font-size:19px}
.eyebrow,.w-section-number,.back-home,.w-index-list,.w-faq-title span,.w-how-copy small,.w-favors-main small,.w-couple-copy small,.w-cta{font-size:13px!important;letter-spacing:.1em!important}
.w-intro p,.two-cols,.w-approach-copy p,.w-services-list p,.w-stationery-note,.w-live-copy>p,.w-live-foot p,.w-faq-grid p,.w-how-copy p:not(.w-how-lead),.w-paper-copy p,.w-delivery-copy p,.w-favors-columns p,.w-couple-columns p,.w-process-grid p,.w-contact-copy p,.w-portfolio-heading p,.w-stationery figcaption,.w-paper figcaption,.w-delivery figcaption{font-size:17px!important;line-height:1.72!important}
.w-faq-grid h3,.w-process-grid h3,.w-together-copy h3{font-size:25px!important}
.w-favors-summary p,.w-how-copy .w-how-lead{font-size:19px!important;line-height:1.64!important}

/* approach */
.w-approach{grid-template-columns:1.18fr .82fr!important;align-items:stretch}
.w-approach>img{min-height:790px!important;width:100%;object-fit:cover!important;object-position:center 54%!important}
.w-approach-copy{padding:96px 72px!important}
.w-approach-copy p{max-width:620px}

/* bomboniere */
.w-favors{padding:0!important;display:grid!important;grid-template-columns:.88fr 1.12fr!important;gap:0!important;align-items:stretch!important}
.w-favors-main{padding:96px 72px 84px!important;display:flex;flex-direction:column;justify-content:center}
.w-favors h2{margin-bottom:52px!important}
.w-favors-columns{grid-template-columns:1.1fr .9fr!important;gap:44px!important;align-items:start}
.w-favors-columns > div:first-child{display:grid;gap:20px}
.w-favors-columns h3{margin-bottom:8px!important}
.w-favors-main small{margin-top:26px!important;max-width:640px;color:var(--soft)!important}
.w-favors-image{display:block;width:100%;height:100vh;min-height:860px;object-fit:cover;object-position:center center}

/* couple */
.w-couple-main{min-height:960px!important;object-fit:cover!important;object-position:center 28%!important}
.w-couple-copy{padding:96px 72px 90px!important}
.w-couple-mini{display:flex!important;gap:18px!important;flex-wrap:wrap!important;align-items:flex-start!important;max-width:100%!important}
.w-couple-mini img{display:block;height:390px!important;width:auto!important;max-width:100%!important;object-fit:cover!important;object-position:center top!important;background:none!important;padding:0!important;flex:0 0 auto!important}

/* paper and delivery */
.w-paper-copy p,.w-delivery-copy p{max-width:900px}
.w-paper-formats{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:28px!important}
.w-paper-formats figure img{aspect-ratio:1/1!important;object-fit:cover!important}
.w-delivery-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:28px!important}
.w-delivery figure img{aspect-ratio:1/1;object-fit:cover}

/* portfolio */
.w-portfolio{padding:96px 72px 108px!important}
.w-portfolio-heading p{max-width:430px!important}
.w-portfolio-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-rows:220px!important;gap:20px!important;grid-auto-flow:dense!important}
.portfolio-item{margin:0;cursor:pointer;overflow:hidden;position:relative;background:#d8d1c9}
.portfolio-item:focus-visible{outline:2px solid #ece9e5;outline-offset:4px}
.portfolio-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.portfolio-item.contain img{object-fit:contain;background:#ded8d0}
.portfolio-item:hover img{transform:scale(1.02)}
.portfolio-item.hero-tall{grid-row:span 3}
.portfolio-item.hero-wide{grid-column:span 2;grid-row:span 2}
.portfolio-item.item-3{grid-row:span 2}
.portfolio-item.item-4{grid-row:span 2}
.portfolio-item.item-7{grid-column:span 2}
.portfolio-item.item-9{grid-column:span 2}

/* lightbox */
.portfolio-lightbox{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;padding:32px}
.portfolio-lightbox-panel{position:relative;width:min(1120px,calc(100vw - 90px));max-height:calc(100vh - 110px);background:#ece9e5;padding:56px 52px 34px;overflow:hidden}
.portfolio-lightbox-close{position:fixed;top:64px;right:72px;z-index:2002;border:0;background:transparent;color:#ece9e5;font-size:34px;line-height:1;cursor:pointer}
.portfolio-lightbox-track{display:flex;gap:26px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-behavior:smooth;align-items:flex-start;padding-bottom:12px}
.portfolio-lightbox-track img{display:block;flex:0 0 auto;height:min(64vh,620px);width:auto;max-width:none;object-fit:contain;scroll-snap-align:start}
.portfolio-lightbox-track::-webkit-scrollbar{height:8px}.portfolio-lightbox-track::-webkit-scrollbar-thumb{background:rgba(50,26,31,.35)}

/* hide closing ref if still present */
.w-closing-ref{display:none!important}

@media (max-width:1200px){
  .w-favors{grid-template-columns:1fr!important}
  .w-favors-image{height:72vh;min-height:560px}
  .w-approach{grid-template-columns:1fr!important}
  .w-approach>img{min-height:560px!important}
  .w-portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width:900px){
  .w-paper-formats,.w-delivery-grid{grid-template-columns:1fr 1fr!important}
  .w-portfolio-grid{grid-template-columns:1fr 1fr!important;grid-auto-rows:200px!important}
  .portfolio-item.hero-wide,.portfolio-item.item-7,.portfolio-item.item-9{grid-column:span 2}
  .w-couple{grid-template-columns:1fr!important}
  .w-couple-main{min-height:620px!important}
  .w-couple-mini img{height:300px!important}
  .portfolio-lightbox-panel{width:min(100%,calc(100vw - 36px));padding:48px 18px 24px}
  .portfolio-lightbox-close{top:18px;right:18px}
  .portfolio-lightbox-track img{height:min(56vh,460px)}
}
@media (max-width:640px){
  .w-intro p,.two-cols,.w-approach-copy p,.w-services-list p,.w-stationery-note,.w-live-copy>p,.w-live-foot p,.w-faq-grid p,.w-how-copy p:not(.w-how-lead),.w-paper-copy p,.w-delivery-copy p,.w-favors-columns p,.w-couple-columns p,.w-process-grid p,.w-contact-copy p,.w-portfolio-heading p,.w-stationery figcaption,.w-paper figcaption,.w-delivery figcaption{font-size:16px!important}
  .w-paper-formats,.w-delivery-grid,.w-portfolio-grid{grid-template-columns:1fr!important}
  .portfolio-item.hero-wide,.portfolio-item.item-7,.portfolio-item.item-9{grid-column:span 1}
  .portfolio-item.hero-tall,.portfolio-item.hero-wide,.portfolio-item.item-3,.portfolio-item.item-4,.portfolio-item.item-7,.portfolio-item.item-9{grid-row:span 1}
  .w-favors-main,.w-couple-copy,.w-approach-copy{padding:64px 22px!important}
  .w-favors-columns{grid-template-columns:1fr!important}
  .w-couple-mini img{height:220px!important}
  .portfolio-lightbox{padding:12px}
  .portfolio-lightbox-close{font-size:30px}
}

/* ===== v9 final refinements ===== */
/* hero without translucent box */
.w-hero-overlay{background:none!important;padding:0 24px!important}
.w-hero .eyebrow{display:none!important}
.w-hero-title{padding:0 18px;text-shadow:0 8px 28px rgba(0,0,0,.22)!important}

/* carta e formato: cleaner card photos */
.w-paper{padding-top:96px!important}
.w-paper-copy{max-width:1080px;margin-bottom:10px}
.w-paper-copy p{max-width:880px}
.w-paper-formats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:34px!important;align-items:start!important}
.w-paper-formats figure{display:flex!important;flex-direction:column!important;gap:12px!important}
.w-paper-formats figcaption{min-height:0!important;margin-bottom:0!important}
.w-paper-formats figure img{
  width:100%!important;
  aspect-ratio:4/5!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#e4ddd5!important;
  padding:0!important;
  border-radius:0!important;
}
.w-paper-formats .paper-a5 img{object-position:center center!important}
.w-paper-formats .paper-a4 img{object-position:center 56%!important}
.w-paper-formats .paper-custom img{object-position:center center!important}
.w-paper-formats .paper-personal img{object-fit:cover!important;object-position:center center!important}

/* section 10 without quadro */
.w-couple.w-couple-no-main{display:block!important;padding:96px 72px 108px!important}
.w-couple.w-couple-no-main .w-couple-copy{padding:0!important;max-width:1240px!important}
.w-couple.w-couple-no-main .w-couple-columns{max-width:1120px!important}
.w-couple.w-couple-no-main .w-couple-mini{margin-top:46px!important;display:flex!important;flex-wrap:wrap!important;gap:22px!important;max-width:100%!important}
.w-couple.w-couple-no-main .w-couple-mini img{height:420px!important;width:auto!important;max-width:100%!important;object-fit:cover!important;object-position:center top!important;flex:0 0 auto!important}
.w-couple.w-couple-no-main small{max-width:720px!important;margin-top:24px!important}

/* portfolio mixed with new images */
.w-portfolio-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-rows:235px!important;gap:20px!important}
.portfolio-item.item-1 img{object-fit:cover!important;object-position:center top!important}
.portfolio-item.item-3 img{object-fit:cover!important;object-position:center center!important}
.portfolio-item.item-4 img{object-fit:cover!important;object-position:center center!important}
.portfolio-item.item-10{grid-column:span 2!important}
.portfolio-item.item-11 img,.portfolio-item.item-12 img{background:#e3ddd6!important;object-fit:contain!important}

@media (max-width: 900px){
  .w-paper-formats{grid-template-columns:1fr 1fr!important;gap:24px!important}
  .w-couple.w-couple-no-main{padding:72px 24px 84px!important}
  .w-couple.w-couple-no-main .w-couple-mini img{height:300px!important}
}
@media (max-width: 640px){
  .w-paper-formats{grid-template-columns:1fr!important}
  .w-couple.w-couple-no-main .w-couple-mini img{height:220px!important;width:100%!important}
}


/* v10 wedding fixes */
.w-signature,.with-love{display:none !important;}
.w-paper-formats{grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:28px !important; align-items:start !important;}
.w-paper-formats figure{display:flex !important; flex-direction:column !important; gap:10px !important;}
.w-paper-formats figure img{width:100% !important; height:500px !important; object-fit:cover !important; object-position:center center !important; background:#ece4dc !important;}
.w-paper-formats .paper-a5 img{object-position:center center !important;}
.w-paper-formats .paper-a4 img{object-position:center 60% !important;}
.w-paper-formats .paper-custom img{object-position:center center !important;}
.w-paper-formats .paper-personal img{object-position:center center !important;}
.w-delivery-grid figure img{height:500px !important;}
.w-couple-mini img:first-child{object-position:center top !important;}
.w-contact-card{background:#f7f3ed; padding:32px; border:1px solid rgba(40,28,24,.08);}
.w-contact-wordmark{font:400 clamp(34px,4vw,56px)/.9 "Notable",sans-serif; letter-spacing:-.04em; margin:10px 0 8px;}
.w-contact-sub{font-size:12px; letter-spacing:.14em; text-transform:uppercase; opacity:.78; margin-bottom:20px;}
.w-contact-grid-main{display:grid; gap:12px; margin:0 0 24px;}
.w-contact-grid-main span{display:inline-block; min-width:110px; font-size:11px; letter-spacing:.14em; text-transform:uppercase; opacity:.6;}
.w-contact-grid-main a{text-decoration:none; border-bottom:1px solid currentColor;}
.w-portfolio-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important; grid-auto-rows:230px !important;}
.w-portfolio-grid .item-1{grid-column:span 2 !important; grid-row:span 2 !important;}
.w-portfolio-grid .item-2,.w-portfolio-grid .item-3{grid-row:span 1 !important;}
.w-portfolio-grid .item-10,.w-portfolio-grid .item-11{background:#e5dfd7;}
@media(max-width:900px){
  .w-paper-formats figure img,.w-delivery-grid figure img{height:360px !important;}
  .w-portfolio-grid{grid-template-columns:1fr 1fr !important; grid-auto-rows:220px !important;}
  .w-portfolio-grid .item-1{grid-column:span 2 !important; grid-row:span 1 !important; height:auto !important;}
}
@media(max-width:640px){
  .w-paper-formats{grid-template-columns:1fr !important;}
  .w-paper-formats figure img,.w-delivery-grid figure img{height:320px !important;}
  .w-portfolio-grid{grid-template-columns:1fr !important;}
  .w-portfolio-grid .item-1{grid-column:auto !important;}
}


/* v11 refinements */
.w-approach{grid-template-columns:1.22fr .78fr !important;align-items:stretch !important;}
.w-approach>img{width:100%;min-height:820px !important;object-fit:contain !important;object-position:center center !important;background:#ebe4db !important;padding:24px !important;}
.w-how{grid-template-columns:1.06fr .94fr !important;align-items:stretch !important;}
.w-how-figure{margin:0;position:relative;overflow:hidden;background:#e8e0d7;}
.w-how-figure img{width:100%;height:100%;min-height:840px;object-fit:cover;object-position:center 58%;display:block;}
.w-how-figure figcaption{position:absolute;left:28px;bottom:28px;background:#6f4145;color:#fff;padding:16px 24px;font-size:17px;line-height:1;}
.w-paper-formats,.w-delivery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:28px !important;align-items:start !important;}
.w-paper-formats figure,.w-delivery-grid figure{display:flex;flex-direction:column;gap:12px;margin:0;}
.w-paper-formats figure img,.w-delivery-grid figure img{width:100%;height:520px !important;aspect-ratio:auto !important;object-fit:cover !important;object-position:center center !important;background:#ded7cf !important;display:block;}
.w-paper-formats .paper-a5 img{object-position:center center !important;}
.w-paper-formats .paper-a4 img{object-position:center 45% !important;}
.w-paper-formats .paper-custom img{object-position:center center !important;}
.w-paper-formats .paper-personal img{object-position:center 34% !important;}
.w-favors{display:block !important;padding:0 !important;}
.w-favors-main{max-width:1360px;margin:0 auto;padding:96px 72px 64px !important;}
.w-favors-columns{grid-template-columns:1.15fr .85fr !important;gap:48px !important;}
.w-favors-image{display:block;width:100vw;max-width:none;height:100vh;min-height:960px;object-fit:cover;object-position:center center;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
.w-contact{display:grid !important;grid-template-columns:1fr 1fr !important;gap:28px !important;padding:34px !important;align-items:start !important;background:#f4f0ea !important;}
.w-contact-card-main{background:#871313;color:#f7f1e9;min-height:560px;padding:64px 58px;display:flex;flex-direction:column;justify-content:space-between;}
.w-contact-wordmark-main{font:400 clamp(56px,7vw,110px)/.86 "Notable",sans-serif;letter-spacing:-.05em;}
.w-contact-sub-main{font-size:18px;letter-spacing:.08em;margin-top:18px;}
.w-contact-grid-main{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:auto;}
.w-contact-grid-main div{display:grid;gap:10px;}
.w-contact-grid-main span{font-size:14px;letter-spacing:.08em;opacity:.72;}
.w-contact-grid-main a{color:inherit;text-decoration:none;font-size:22px;font-weight:600;}
.w-quote-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-content:start;background:transparent;padding:8px 0 0;}
.w-quote-form .form-head{grid-column:1/-1;margin-bottom:10px;}
.w-quote-form .form-head span{font-size:14px;letter-spacing:.08em;}
.w-quote-form .form-head p{font-size:clamp(34px,3.8vw,62px);letter-spacing:-.04em;margin:18px 0 0;line-height:1.02;}
.w-quote-form label{display:grid;gap:10px;font-size:14px;letter-spacing:.08em;color:var(--ink);}
.w-quote-form input,.w-quote-form select,.w-quote-form textarea{border:0;border-bottom:1px solid rgba(22,19,18,.25);background:transparent;border-radius:0;padding:14px 0;outline:none;font:inherit;color:inherit;}
.w-quote-form textarea{border:1px solid rgba(22,19,18,.18);padding:14px;resize:vertical;min-height:180px;}
.w-quote-form .full{grid-column:1/-1;}
.w-quote-form button{grid-column:1/-1;background:#121010;color:#f5efe7;border:0;padding:22px 24px;text-align:left;font-size:15px;letter-spacing:.08em;cursor:pointer;}
.w-footer{display:flex;justify-content:space-between;align-items:center;padding:0 34px 34px;background:#f4f0ea;font-size:14px;letter-spacing:.08em;}
@media(max-width:1100px){
  .w-approach{grid-template-columns:1fr !important;}
  .w-approach>img{min-height:620px !important;}
  .w-how{grid-template-columns:1fr !important;}
  .w-how-figure img{min-height:620px;height:620px;}
  .w-contact{grid-template-columns:1fr !important;}
  .w-contact-card-main{min-height:420px;}
}
@media(max-width:800px){
  .w-paper-formats,.w-delivery-grid,.w-contact-grid-main,.w-quote-form{grid-template-columns:1fr !important;}
  .w-paper-formats figure img,.w-delivery-grid figure img{height:360px !important;}
  .w-favors-main{padding:64px 22px 42px !important;}
  .w-favors-columns{grid-template-columns:1fr !important;}
  .w-favors-image{height:74vh;min-height:520px;}
  .w-contact{padding:18px !important;}
  .w-contact-card-main{padding:36px 24px;}
  .w-contact-grid-main a{font-size:18px;}
  .w-footer{padding:0 18px 24px;font-size:12px;}
}


/* v12 — final requested refinements */
/* Approach: use the supplied photo exactly in its native proportions, with no artificial frame/background. */
.w-approach{grid-template-columns:1fr 1fr !important;align-items:center !important;background:var(--wine) !important;}
.w-approach>img{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:initial !important;
  object-position:initial !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  align-self:center !important;
}

/* Carta e formato: same visual size as La consegna, but no aggressive zoom/cropping. */
.w-paper-formats,.w-delivery-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:28px !important;}
.w-paper-formats figure img,.w-delivery-grid figure img{width:100% !important;height:520px !important;aspect-ratio:auto !important;display:block !important;}
.w-paper-formats figure img{object-fit:contain !important;object-position:center center !important;background:#d7d0c8 !important;padding:0 !important;}
.w-delivery-grid figure img{object-fit:cover !important;object-position:center center !important;}

/* Bomboniere: full-width, natural-proportion presentation to preserve sharpness. */
.w-favors-image{
  display:block !important;
  width:100vw !important;
  max-width:none !important;
  height:auto !important;
  min-height:0 !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  image-rendering:auto !important;
}

/* Refined request/quote section, matching the main-site editorial rhythm. */
.w-contact{grid-template-columns:1fr 1fr !important;gap:30px !important;padding:36px !important;background:#f4f0ea !important;}
.w-contact-card-main{min-height:620px !important;padding:64px 58px 48px !important;}
.w-contact-wordmark-main{font-size:clamp(64px,7.5vw,118px) !important;line-height:.84 !important;}
.w-contact-sub-main{font-size:15px !important;letter-spacing:.11em !important;}
.w-contact-grid-main span{font-size:12px !important;letter-spacing:.1em !important;}
.w-contact-grid-main a{font-size:18px !important;}
.w-quote-form{grid-template-columns:1fr 1fr !important;gap:24px 26px !important;padding:14px 2px 0 !important;}
.w-quote-form .form-head{grid-column:1/-1 !important;margin-bottom:28px !important;padding-bottom:22px !important;border-bottom:1px solid rgba(22,19,18,.18) !important;}
.w-quote-form .form-head span{font-size:12px !important;letter-spacing:.14em !important;}
.w-quote-form .form-head p{font-size:clamp(38px,4.2vw,64px) !important;line-height:.98 !important;max-width:760px !important;margin-top:20px !important;}
.w-quote-form label{font-size:12px !important;letter-spacing:.1em !important;gap:10px !important;}
.w-quote-form input,.w-quote-form select{padding:15px 0 12px !important;font-size:15px !important;}
.w-quote-form textarea{padding:16px !important;min-height:190px !important;font-size:15px !important;line-height:1.5 !important;}
.w-quote-form button{padding:22px 24px !important;font-size:12px !important;letter-spacing:.12em !important;}

@media(max-width:1100px){
  .w-approach{grid-template-columns:1fr !important;}
  .w-approach>img{width:100% !important;height:auto !important;}
}
@media(max-width:800px){
  .w-paper-formats,.w-delivery-grid,.w-contact-grid-main,.w-quote-form{grid-template-columns:1fr !important;}
  .w-paper-formats figure img,.w-delivery-grid figure img{height:380px !important;}
  .w-contact{grid-template-columns:1fr !important;padding:18px !important;}
  .w-quote-form .form-head,.w-quote-form .full,.w-quote-form button{grid-column:auto !important;}
}


/* v21 global corrections */
.w-contact-card-main,
.w-contact-card-main *{
  color:#000 !important;
}
.w-mobile-painting-only{display:none;}


/* v21 — MOBILE ONLY. Everything below is confined to phone width. */
@media (max-width:600px){

  /* HERO: use the girls photo already present below, without altering the asset */
  .w-hero-image{
    content:url("matrimoni-assets/intro-party.webp");
    object-fit:cover !important;
    object-position:center center !important;
  }
  .w-hero-title{
    font-size:clamp(30px,10vw,48px) !important;
    line-height:.98 !important;
  }

  /* remove intro / about / approach content on phone */
  .w-intro{display:none !important;}
  .w-about{display:none !important;}
  .w-approach{display:none !important;}

  /* index: remove heading and old image, keep list only */
  .w-index>h2{display:none !important;}
  .w-index-grid{
    display:block !important;
  }
  .w-index-grid>img{display:none !important;}
  .w-index-list{
    padding-top:0 !important;
    gap:2px !important;
    line-height:1.22 !important;
    font-size:13px !important;
  }
  .w-index-list span{height:8px !important;}
  .w-index-list a[href="#approccio"],
  .w-index-list a[href="#come-lavoriamo"]{
    display:none !important;
  }

  /* services: after the service cards show only the painting photo */
  .w-services{
    padding-bottom:24px !important;
  }
  .w-services>h2,
  .w-services>.w-heading{
    margin-bottom:28px !important;
  }
  .w-services-list{
    gap:10px !important;
  }
  .w-services-list>div{
    min-height:150px !important;
    padding:18px 16px !important;
  }
  .w-services-list h3{
    font-size:19px !important;
    line-height:1 !important;
    margin-bottom:18px !important;
  }
  .w-mobile-painting-only{
    display:block !important;
    width:calc(100% + 36px) !important;
    height:auto !important;
    margin:34px -18px 0 !important;
    object-fit:cover !important;
  }

  /* stationery: smaller horizontal strip */
  .w-stationery{
    overflow:hidden;
  }
  .w-stationery .w-heading h2{
    font-size:32px !important;
  }
  .w-stationery-grid{
    display:flex !important;
    grid-template-columns:none !important;
    gap:12px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x proximity;
    padding-bottom:8px !important;
    -webkit-overflow-scrolling:touch;
  }
  .w-stationery-grid figure{
    flex:0 0 58vw !important;
    max-width:230px !important;
    scroll-snap-align:start;
  }
  .w-stationery figure img{
    height:190px !important;
    object-fit:cover !important;
  }
  .w-stationery-note{
    margin:18px 0 0 !important;
    max-width:none !important;
    line-height:1.35 !important;
  }

  /* live portraits: align all copy left and remove envelope photo */
  .w-live{
    text-align:left !important;
  }
  .w-live-copy{
    padding:44px 18px !important;
    text-align:left !important;
  }
  .w-live-copy .w-heading,
  .w-live-copy h2,
  .w-live-copy h3,
  .w-live-copy>p,
  .w-live-foot{
    text-align:left !important;
    margin-left:0 !important;
  }
  .w-live-foot{
    margin-top:30px !important;
    display:block !important;
  }
  .w-live-foot img{
    display:none !important;
  }

  /* FAQ: tighter title, tighter overall vertical rhythm, copy left */
  .w-faq-hero{
    height:260px !important;
  }
  .w-faq-grid{
    margin-top:22px !important;
    gap:8px !important;
  }
  .w-faq-title .w-heading h2{
    font-size:28px !important;
    line-height:.98 !important;
  }
  .w-faq-grid>div{
    padding:16px 0 !important;
    text-align:left !important;
  }
  .w-faq-grid h3{
    font-size:18px !important;
    line-height:1.08 !important;
  }
  .w-faq-grid p{
    line-height:1.32 !important;
    text-align:left !important;
  }

  /* following explanatory text: keep left aligned */
  .w-how-copy{
    padding:40px 18px !important;
    text-align:left !important;
  }
  .w-how-lead,
  .w-how-copy h2,
  .w-how-copy p{
    text-align:left !important;
    margin-left:0 !important;
  }

  /* Carta e formato: copy stays normal, images become small horizontal strip */
  .w-paper{
    overflow:hidden;
  }
  .w-paper-copy{
    padding:0 !important;
    text-align:left !important;
  }
  .w-paper-formats{
    display:flex !important;
    grid-template-columns:none !important;
    flex-wrap:nowrap !important;
    gap:12px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding-bottom:8px !important;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
  }
  .w-paper-formats figure{
    flex:0 0 58vw !important;
    max-width:230px !important;
    scroll-snap-align:start;
  }
  .w-paper-formats figure img{
    width:100% !important;
    height:210px !important;
    object-fit:contain !important;
    background:#d7d0c8 !important;
  }

  /* Delivery: text first, then small horizontal strip */
  .w-delivery{
    display:block !important;
    margin-top:42px !important;
  }
  .w-delivery-copy{
    padding:0 !important;
    text-align:left !important;
    margin-bottom:20px !important;
  }
  .w-delivery-grid{
    display:flex !important;
    grid-template-columns:none !important;
    flex-wrap:nowrap !important;
    gap:12px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding-bottom:8px !important;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
  }
  .w-delivery-grid figure{
    flex:0 0 58vw !important;
    max-width:230px !important;
    scroll-snap-align:start;
  }
  .w-delivery-grid figure img{
    width:100% !important;
    height:210px !important;
    object-fit:cover !important;
  }

  /* favors: reduce leading */
  .w-favors-columns p,
  .w-favors-summary p{
    line-height:1.3 !important;
  }
  .w-favors .w-heading{
    margin-bottom:28px !important;
  }

  /* couple: show mini images fully */
  .w-couple-copy{
    padding:46px 18px !important;
    text-align:left !important;
  }
  .w-couple-mini{
    width:100% !important;
    display:flex !important;
    gap:10px !important;
    margin-top:20px !important;
  }
  .w-couple-mini img{
    width:calc(50% - 5px) !important;
    height:220px !important;
    object-fit:contain !important;
    object-position:center center !important;
    background:#e6ded5 !important;
  }

  /* remove “Come lavoreremo insieme?” and process on phone */
  .w-together,
  .w-process{
    display:none !important;
  }

  /* portfolio: same structural layout as desktop, not the single-column mobile version */
  .w-portfolio{
    padding:58px 18px 68px !important;
  }
  .w-portfolio-heading{
    display:block !important;
    text-align:left !important;
    margin-bottom:26px !important;
  }
  .w-portfolio-heading .w-heading{
    justify-content:flex-start !important;
    text-align:left !important;
  }
  .w-portfolio-heading p{
    margin:10px 0 0 !important;
    text-align:left !important;
    max-width:none !important;
  }
  .w-portfolio-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    grid-auto-rows:92px !important;
    gap:6px !important;
  }
  .w-portfolio-grid .item-1{
    grid-column:span 2 !important;
    grid-row:span 2 !important;
  }
  .w-portfolio-grid .item-2,
  .w-portfolio-grid .item-3{
    grid-row:span 1 !important;
  }
  .w-portfolio-grid .item-10,
  .w-portfolio-grid .item-11{
    background:#e5dfd7 !important;
  }
  .w-portfolio-grid .portfolio-item img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
  .w-portfolio-grid .portfolio-item.contain img{
    object-fit:contain !important;
  }

  /* contact form arrow: same project arrow, not diagonal glyph */
  .w-quote-form button{
    font-size:0 !important;
  }
  .w-quote-form button::before{
    content:"PREPARA LA RICHIESTA →";
    font-size:12px;
    letter-spacing:.12em;
  }
}

/* v22: targeted adjustments; all other v21 rules remain untouched. */
.w-contact-card-main,.w-contact-card-main *{color:#fff !important;}
.w-quote-form,.w-quote-form .form-head,.w-quote-form label,.w-quote-form input,.w-quote-form select,.w-quote-form textarea{color:#000 !important;}
.w-quote-form button{color:#fff !important;}
@media(max-width:600px){
 .w-about{display:block !important;}
 .w-about-grid{display:flex !important;flex-direction:column !important;}
 .w-about-copy{display:block !important;column-count:1 !important;columns:initial !important;}
 .w-about-copy p{display:block !important;width:100% !important;}
 .w-about-grid>img{display:block !important;width:100% !important;height:auto !important;object-fit:contain !important;}
 .w-index{overflow:hidden !important;}
 .w-index-grid{overflow:hidden !important;}
 .w-index-list{display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;overflow-x:auto !important;overflow-y:hidden !important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;white-space:nowrap !important;gap:20px !important;max-width:100% !important;touch-action:pan-x !important;}
 .w-index-list a{display:block;flex:0 0 auto !important;white-space:nowrap !important;}
 .w-index-list span{display:none !important;}
}
