/* REVIVE — approved September layout. */
:root{--olive:#3D473A;--blue:#314F62;--ochre:#E2A437}
.header-label{font-size:clamp(10px,1.1vw,17px);letter-spacing:0;line-height:1.15}
.header img{width:clamp(85px,8vw,145px);height:auto}
.hero{padding-top:0}
.revive-word{font-size:23.5vw;margin:0;padding:.04em .05em .1em 0;line-height:1.04}
.hero-copy{padding-top:25px;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}
.hero-copy h2{font-size:clamp(40px,4.65vw,86px)}
.hero-copy p{max-width:39ch;margin-block:25px 30px;font-size:clamp(16px,1.4vw,23px)}
.hero-note{font:500 italic clamp(12px,1.05vw,18px)/1.5 AvenirIT;text-transform:none;letter-spacing:0;margin-top:25px}
.motion-stage{background:var(--ochre);min-height:clamp(410px,32vw,640px)}
.stage-caption{font-size:clamp(12px,1vw,18px);font-weight:600;top:15px;left:20px}
.bts-video{position:absolute;width:31%;aspect-ratio:9/16;object-fit:cover;border-radius:10px;top:17%;background:var(--ink)}
.bts-1{left:8%;transform:rotate(-9deg);z-index:1;animation:bts-left 9s ease-in-out infinite}
.bts-2{left:35%;top:22%;z-index:3;animation:bts-center 9s ease-in-out infinite}
.bts-3{right:7%;top:13%;transform:rotate(4deg);z-index:2;animation:bts-right 9s ease-in-out infinite}
.stage-pause{position:absolute;bottom:12px;right:12px;z-index:4;display:grid;place-items:center;border:1px solid currentColor;background:var(--paper);color:var(--ink);width:32px;height:32px;border-radius:50%}
.stage-pause svg{width:16px;height:16px;stroke-width:1.6}
.motion-stage.is-paused .bts-video{animation-play-state:paused}
.brand-disc{display:inline-block;width:1em;height:1em;border-radius:50%;background:currentColor;position:relative;flex:none;overflow:hidden}
.brand-disc::after{content:'';position:absolute;inset:0 27%;background:var(--paper);border-radius:50%;transform:rotate(-42deg)}
.hero-ribbon{margin-inline:calc(-1 * var(--edge));border-block:1px solid var(--ink);overflow:hidden;padding-block:15px}
.hero-ribbon>div{display:flex;width:max-content;animation:marquee 35s linear infinite}
.hero-ribbon span{display:flex;align-items:center;gap:30px;padding-right:30px;white-space:nowrap;font-size:clamp(12px,1.3vw,21px)}
.hero-ribbon .brand-disc{color:#762723;font-size:23px}
.showcase .section-heading h2{font-size:clamp(40px,4.9vw,88px)}
.showcase .section-heading p{font-size:clamp(14px,1.2vw,20px)}
.portfolio-row{gap:18px}
.portfolio-video-card{position:relative;aspect-ratio:9/16;border-radius:10px;overflow:hidden;background:#111;isolation:isolate}
.portfolio-video-card:nth-child(even){margin-top:55px}
.portfolio-video-card video{width:100%;height:100%;object-fit:cover;display:block}
.video-actions{position:absolute;left:12px;right:12px;bottom:12px;display:flex;justify-content:space-between;gap:8px;z-index:2}
.video-actions button{display:grid;place-items:center;width:38px;height:38px;border:1px solid #efe9e180;border-radius:50%;color:var(--paper);background:#1e1e1c80;backdrop-filter:blur(8px)}
.video-actions svg{width:21px;height:21px;stroke-width:1.6}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.showcase-foot{justify-content:flex-end}
.showcase-foot .text-link{font-size:clamp(14px,1.4vw,23px)}
.opportunity-grid h2{font-size:clamp(65px,7.4vw,145px)}
.intent-wheel{font-size:clamp(32px,3.3vw,62px);line-height:.98;letter-spacing:-.07em}
.intent-wheel .brand-disc{font-size:50px;color:#C95F35}
.big-ticker{background:var(--olive);color:var(--paper)}
.big-ticker .brand-disc{font-size:.68em}
.big-ticker .brand-disc::after{background:var(--olive)}
.pack-grid{grid-template-columns:1.13fr 1fr;gap:7%;align-items:center}
.pack-description h2{font-size:clamp(50px,5.7vw,105px)}
.pack-description>p{font-size:clamp(15px,1.2vw,20px)}
.deliverables-label{font:600 13px/1.5 AvenirIT;letter-spacing:.07em;margin-top:35px}
.deliverables{margin-top:5px}
.deliverables>div{gap:25px;padding-block:16px}
.deliverables strong{width:75px;flex:none;font-size:clamp(64px,5.5vw,100px)}
.deliverables span{font-size:clamp(24px,2.65vw,46px);line-height:1.15;letter-spacing:-.035em}
.pack-description .pack-total{font-size:clamp(31px,3vw,55px);max-width:none}
.pack-description .pack-support{font-size:clamp(14px,1.1vw,19px);opacity:1;max-width:47ch}
.price-card{background:var(--blue);color:var(--paper);padding:clamp(25px,3vw,50px);border-radius:22px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.price-card>.micro{font-size:11px;letter-spacing:.08em}
.price-main{margin-top:40px}
.price-label{font-size:12px;letter-spacing:.06em}
.price-main strong{font-size:clamp(100px,10vw,170px);letter-spacing:-.075em;line-height:1.1}
.price-main>div>span{font-size:clamp(40px,4vw,65px)}
.price-main small{font-size:13px;text-transform:none;font-weight:500}
.commitment{font-size:14px;margin-bottom:22px}
.price-card .pill{font-size:14px;gap:12px;min-height:52px;padding-inline:22px}
.price-card .pill-solid{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.price-card .pill:hover{background:var(--paper);color:var(--ink)}
.price-card .pill-solid:hover{background:transparent;color:var(--paper)}
.upfront{border-color:#efe9e170;margin-top:28px;padding-top:23px}
.upfront h3{font-size:clamp(35px,3.2vw,58px);white-space:nowrap}
.upfront p{font-size:clamp(14px,1.13vw,19px);margin-block:9px}
.upfront-price{display:flex;align-items:baseline;gap:15px;margin-top:10px}
.upfront-price strong{font-size:clamp(60px,6.3vw,110px);line-height:1;white-space:nowrap}
.upfront-price>span{font-size:13px;white-space:nowrap}
.saving-badge{display:table;border:1px solid currentColor;border-radius:30px;padding:5px 15px;font-size:10px;font-weight:600;letter-spacing:.15em;margin:12px 0 18px}
.price-fine{font-size:11px;line-height:1.65;opacity:1;margin-top:22px;max-width:none}
.price-spark{top:70px;right:25px;width:50px;height:50px}
.extras{background:var(--olive);color:var(--paper)}
.extras .section-heading{margin:45px 0 30px;align-items:center}
.extras h2{font-size:clamp(55px,7vw,125px)}
.extras .section-heading p{font-size:clamp(15px,1.2vw,21px);max-width:45ch}
.extra-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.extra-card{background:var(--paper);color:var(--ink);border-radius:20px;padding:25px;display:flex;flex-direction:column}
.extra-art{height:clamp(155px,15vw,265px);display:grid;place-items:center;margin-bottom:25px}
.extra-art svg{width:100%;height:100%;max-width:280px;stroke-width:1;overflow:visible}
.extra-card h3{font-size:clamp(32px,3vw,55px);min-height:2.15em}
.extra-card>p{font-size:clamp(14px,1.14vw,19px);margin-block:18px;max-width:35ch}
.extra-price{margin-top:auto;border-top:1px solid var(--ink);padding-top:12px;display:flex;flex-direction:column;align-items:flex-start}
.extra-price>span{font-size:16px;line-height:1.3}
.extra-price>span b{font-family:DidotIT;letter-spacing:-.065em;font-size:1.15em}
.extra-price>strong{font:700 clamp(58px,5vw,90px)/1.15 DidotIT;letter-spacing:-.075em;margin-bottom:10px;white-space:nowrap}
.extra-price>strong small{font:700 14px DidotIT;letter-spacing:-.05em;margin-right:7px}
.extra-price .price-tax{display:block;font:500 16px/1.5 AvenirIT,sans-serif;letter-spacing:0}
.extra-price .regular-price{font-size:18px;margin-top:8px}
.extra-price .regular-price s{text-decoration-color:#762723;text-decoration-thickness:1px}
.extra-note{font-size:clamp(14px,1.2vw,20px);max-width:none;margin-top:24px}
.draw-outline,.draw-content{stroke-dasharray:1;stroke-dashoffset:0}
.extras.is-animated .draw-outline{animation:line-build 7s ease-in-out infinite}
.extras.is-animated .draw-content{animation:line-build-content 7s ease-in-out infinite}
.extras.is-animated .art-appear,.extras.is-animated .poster-letter{animation:line-appear 7s ease-in-out infinite}
.poster-letter{font:400 italic 125px DidotIT;fill:currentColor;stroke:none}
.extras.is-animated .reel-curve{transform-origin:center;animation:line-wave 7s ease-in-out infinite}
.extras.is-animated .reel-progress{animation:line-progress 7s linear infinite}
.faq{padding-top:50px}
@keyframes bts-left{50%{transform:translateY(-8px) rotate(-6deg)}}
@keyframes bts-center{50%{transform:translateY(6px)}}
@keyframes bts-right{50%{transform:translateY(-6px) rotate(7deg)}}
@keyframes line-build{0%,5%{stroke-dashoffset:1}35%,78%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}
@keyframes line-build-content{0%,22%{stroke-dashoffset:1}52%,78%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}
@keyframes line-appear{0%,28%,100%{opacity:0}50%,78%{opacity:1}}
@keyframes line-wave{0%,100%{transform:scaleY(.5);opacity:0}30%,80%{opacity:1}55%{transform:scaleY(1)}}
@keyframes line-progress{0%,100%{transform:translateX(0);opacity:0}15%,85%{opacity:1}90%{transform:translateX(58px)}}
@media(min-width:1800px){.motion-stage{min-height:32vw}}
@media(max-width:1100px){.pack-grid{gap:4%;grid-template-columns:1fr 1fr}.deliverables span{font-size:26px}.deliverables strong{width:65px}.extra-card{padding:20px}.extra-card h3{font-size:32px}.upfront h3{font-size:36px}.price-card{padding:25px}.price-spark{width:38px;height:38px;top:55px;right:20px}}
@media(max-width:700px){
 .header{gap:10px}.header-label{display:none}.header-cta{font-size:10px;padding:8px 11px;gap:10px}.header img{width:70px}
 .revive-word{font-size:21.6vw;margin:12px 0 18px;padding-block:0;line-height:1.15}
 .hero-copy{padding:25px 0 30px}.hero-copy h2{font-size:clamp(35px,9.2vw,63px)}.hero-copy p{font-size:15px;max-width:38ch;margin:20px 0 23px}.hero-note{font-size:11px;margin-top:20px}
 .motion-stage{min-height:0;aspect-ratio:1.18;border:0;border-radius:0;margin-inline:calc(-1 * var(--pad));margin-top:2px}
 .bts-video{width:29%;border-radius:7px;top:17%}.bts-1{left:7%}.bts-2{left:35%;top:23%}.bts-3{right:7%;top:14%}
 .stage-caption{font-size:11px;top:12px;left:17px}.stage-pause{width:27px;height:27px;right:8px;bottom:8px}
 .hero-ribbon{padding-block:11px}.hero-ribbon span{font-size:11px;gap:20px;padding-right:20px}.hero-ribbon .brand-disc{font-size:16px}
 .showcase .section-heading h2{font-size:clamp(33px,8.6vw,60px)}.showcase .section-heading p{font-size:13px}
 .portfolio-row{grid-template-columns:repeat(4,83%);gap:15px}.portfolio-video-card{scroll-snap-align:center}.portfolio-video-card:nth-child(even){margin-top:0}
 .video-actions button{width:36px;height:36px}.showcase-foot{align-items:flex-end}.showcase-foot .text-link{font-size:13px}
 .opportunity-grid h2{font-size:clamp(62px,15vw,90px)}.opportunity-copy p{font-size:15px}.intent-wheel{font-size:36px;gap:15px}.intent-wheel .brand-disc{font-size:36px}
 .pack-grid{grid-template-columns:1fr;gap:35px;align-items:start}.pack-description h2{font-size:clamp(40px,10.6vw,65px)}.pack-description>p{font-size:15px}
 .deliverables-label{font-size:11px;margin-top:28px}.deliverables>div{gap:18px;padding-block:14px}.deliverables strong{font-size:59px;width:60px}.deliverables span{font-size:clamp(22px,6.4vw,32px)}
 .pack-description .pack-total{font-size:32px}.pack-description .pack-support{font-size:14px}
 .price-card{padding:23px;border-radius:16px}.price-card>.micro{font-size:9px}.price-label{font-size:10px}.price-main{margin-top:32px}.price-main strong{font-size:110px}.price-main>div>span{font-size:40px}.price-main small{font-size:11px}.commitment{font-size:12px}
 .price-card .pill{padding:11px 14px;font-size:12px;gap:10px}.price-card .pill svg{width:21px;height:21px}.price-spark{top:52px;right:20px;width:33px;height:33px}.upfront h3{font-size:clamp(31px,8.2vw,42px)}.upfront p{font-size:13px}.upfront-price{gap:10px}.upfront-price strong{font-size:clamp(54px,14vw,80px)}.upfront-price>span{font-size:11px}.price-fine{font-size:10px}
 .extras .section-heading{margin-top:30px;align-items:flex-start;gap:22px}.extras h2{font-size:clamp(48px,12vw,70px)}.extras .section-heading p{font-size:14px;max-width:30ch}
 .extra-grid{grid-template-columns:1fr;gap:18px}.extra-card{padding:25px;border-radius:16px}.extra-art{height:170px;margin-bottom:20px}.extra-card h3{font-size:40px;min-height:0}.extra-card>p{font-size:15px;margin:18px 0 22px}.extra-price>strong{font-size:72px}.extra-price>span{font-size:15px}.extra-price .regular-price{font-size:17px}.extra-note{font-size:13px;line-height:1.5}.faq{padding-top:30px}
}
@media(prefers-reduced-motion:reduce){.draw-outline,.draw-content{stroke-dashoffset:0!important}.art-appear,.poster-letter,.reel-curve,.reel-progress{opacity:1!important}}
.contact{background:var(--paper)}
/* Corrections: flexible figures, readable form and a larger final line. */
.deliverables{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:clamp(20px,2.2vw,40px)}
.deliverables>div{display:grid;grid-template-columns:subgrid;grid-column:1/-1;column-gap:inherit;align-items:center}
.deliverables strong{width:auto;min-width:1.32em;letter-spacing:-.07em;padding-right:.08em}
.deliverables span{min-width:0;overflow-wrap:normal}
#revive-form label{font-size:15px}
#revive-form input:not([type=checkbox]):not([type=radio]),#revive-form textarea{font-size:18px;line-height:1.5}
#revive-form .consent{font-size:14px}
#revive-form .form-note{font-size:14px;opacity:.8}
#revive-form .submit-button{font-size:17px}
#revive-form #form-status{font-size:17px}
.contact h2{display:inline-flex;flex-direction:column;align-items:flex-start;max-width:100%;line-height:1.06}
.contact-title-first,.contact-title-life{display:block;white-space:nowrap;letter-spacing:-.075em}
.contact-title-life{font-size:1.6em;line-height:1.02;margin-top:.02em}
.footer-word{font-size:inherit;line-height:1;margin:45px auto 10px;width:100%;max-width:1600px;padding:0}
.footer-word .footer-morph{display:block;width:100%;height:auto;aspect-ratio:1200/507;margin:0;vertical-align:initial;fill:currentColor;stroke:none;animation:none;overflow:visible}
.footer-fallback,.morph-character{font-family:DidotIT,Didot,serif;font-weight:700;font-size:600px;letter-spacing:0;fill:currentColor;stroke:none}
.footer-word path{fill:currentColor;stroke:none}
@supports not (grid-template-columns:subgrid){.deliverables{display:block}.deliverables>div{grid-template-columns:1.65em minmax(0,1fr);font-size:clamp(64px,5.5vw,100px);gap:clamp(20px,2.2vw,40px)}}
@media(max-width:700px){
 .deliverables{column-gap:20px}.deliverables strong{font-size:53px;min-width:1.22em}.deliverables span{font-size:clamp(20px,5.7vw,28px)}
 #revive-form input:not([type=checkbox]):not([type=radio]),#revive-form textarea{font-size:20px}
 #revive-form .submit-button{font-size:16px}
 #revive-form .form-note{font-size:13px}
 .contact h2{font-size:clamp(60px,15vw,83px)}
 .footer-word{margin-top:35px;margin-bottom:15px}
}

/* Campaign closing date stays visible at both decision points. */
.offer-availability{font:600 16px/1.5 AvenirIT,sans-serif;border-block:1px solid currentColor;padding:12px 0;margin:20px 0;letter-spacing:0}
#revive-form .offer-availability{margin:0}

/* Explicit payment choice: neither option is selected on arrival. */
#revive-form .payment-options{border:0;padding:0;margin:4px 0;min-width:0}
#revive-form .payment-options legend{font:600 18px/1.4 AvenirIT,sans-serif;padding:0;margin-bottom:8px}
#revive-form .payment-options legend span{font-size:14px;font-weight:500}
#payment-help{font-size:15px;line-height:1.5;margin-bottom:16px}
#revive-form .payment-choice{display:flex;align-items:flex-start;gap:14px;padding:18px;border:1px solid var(--ink);border-radius:16px;margin:0 0 12px;cursor:pointer;letter-spacing:0}
#revive-form .payment-choice:has(input:checked){background:var(--olive);color:var(--paper)}
#revive-form .payment-choice:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:4px}
#revive-form .payment-choice input{width:22px;height:22px;flex:0 0 22px;margin:3px 0 0;accent-color:var(--ink);cursor:pointer}
#revive-form .payment-choice>span{display:grid;gap:5px;min-width:0;line-height:1.45}
#revive-form .payment-choice strong{font-size:19px;font-weight:600}
#revive-form .payment-choice span span{font-size:17px}
#revive-form .payment-choice small{font-size:14px}
.custom-pack{background:var(--olive);color:var(--paper);display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:clamp(25px,5vw,90px);padding-block:clamp(40px,5vw,85px)}
.custom-pack .micro{font-size:12px;margin-bottom:22px}
.custom-pack h2{font-size:clamp(48px,5.8vw,100px)}
.custom-pack-copy p{font-size:clamp(17px,1.5vw,23px);max-width:36ch;margin-bottom:25px}
.custom-pack .pill{font-size:16px}
.custom-pack .pill:hover{background:var(--paper);color:var(--ink)}
@media(max-width:700px){.custom-pack{grid-template-columns:1fr;gap:26px}.custom-pack h2{font-size:clamp(48px,12vw,70px)}.custom-pack .pill{font-size:15px;padding:12px 18px;gap:16px}#revive-form .payment-choice{padding:16px;gap:12px}}
