/* V4: typographic refinement of V3, not a replacement layout.
   Keep the centered cinema, inline image, asymmetric gallery,
   low/right film copy, staggered statement and offset cases. */
:root{
  --gutter:clamp(24px,5vw,96px);
  --sans:Arial,Helvetica,sans-serif;
  --serif:Georgia,'Times New Roman',serif;
  --body-size:clamp(20px,1.6vw,23px);
}
body{font-size:18px;line-height:1.5}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
strong{font-weight:600}
.eyebrow{font-size:12px;line-height:1.5;letter-spacing:.13em}
.meta-right{font-size:13px;line-height:1.5;opacity:.72}
.section-meta{min-height:24px}
.site-header{height:94px;gap:26px}
.brand,.brand img{width:154px;height:48px}
.brand img{object-fit:contain;object-position:left center}
.desktop-nav{font-size:14px;gap:26px;margin-right:2vw}
.desktop-nav a{opacity:.88}
.header-contact{font-size:14px;gap:22px;padding:12px 18px;border-radius:0}
.header-contact svg{width:18px;height:18px}
.button{font-size:15px;min-height:56px;padding:16px 23px;border-radius:0;gap:32px}
.button svg{width:19px;height:19px}
.text-link{font-size:15px;gap:21px;padding-bottom:7px}
.text-link svg{width:18px;height:18px}
.brand-dot{width:7px;height:7px}

/* 01 / Cinematic opening: compact headline, legible introduction. */
.hero{height:100svh;min-height:750px}
.hero-content{padding:144px 28px 138px;margin:0;max-width:1240px}
.hero-eyebrow{font-size:13px;margin-bottom:28px;opacity:.92}
.hero h1{font-size:clamp(62px,5.7vw,86px);font-weight:500;line-height:1.08;letter-spacing:-.047em}
.hero-line-one{font-size:1em}
.hero-line-two{font-size:1em;margin-top:5px;white-space:nowrap}
.hero-line-two em{font-size:1.065em;letter-spacing:-.053em;font-weight:400}
.hero-summary{font-size:22px;line-height:1.47;max-width:690px;margin:28px auto 27px;color:#e8eeeb}
.hero-summary strong{font-weight:600;color:#fff}
.hero-bottom{bottom:28px;padding-top:20px;font-size:13px;line-height:1.4}
.hero-credit{font-size:12px;letter-spacing:.015em}
.video-control{font-size:12px;gap:10px;line-height:1.4;min-height:32px}
.hero-shade{background:linear-gradient(180deg,#09242bb0,#0e292d70 25%,#0c292d73 55%,#0b252aeb),linear-gradient(90deg,#0c292d44,transparent 35%,#0c292d25)}

/* 02 / Reading moment. The image remains IN the heading. */
.difference{min-height:810px;padding-top:76px;padding-bottom:38px}
.manifesto{padding:62px 0 65px;width:100%;margin:auto 0;text-align:center}
.manifesto h2{font-size:clamp(45px,4.25vw,62px);font-weight:500;line-height:1.1;letter-spacing:-.044em}
.manifesto-first{margin-left:-7%}
.manifesto-middle{gap:24px;margin-top:11px}
.inline-picture{width:165px;height:69px;border-radius:0}
.manifesto-last{font-size:.79em;margin-top:22px;line-height:1.2;letter-spacing:-.036em}
.manifesto-last em{font-family:var(--sans);font-size:1em;font-style:normal;font-weight:600;letter-spacing:inherit}
.manifesto-summary{font-size:var(--body-size);line-height:1.5;max-width:795px;color:#687174;margin:31px auto 0}
.manifesto-summary strong{color:var(--ink);font-weight:600}
.manifesto-bottom{font-size:12px;line-height:1.5;letter-spacing:.09em;padding-top:22px;gap:36px}
.small-cross{font-size:19px}

/* 03 / Preserve the V3 asymmetric collage and the right-hand heading. */
.identity{padding-top:70px;padding-bottom:73px}
.identity-composition{margin-top:50px;column-gap:27px}
.identity-portrait{padding-top:3px}
.identity-portrait .media-button{height:540px}
.identity-heading{margin-top:0;margin-bottom:38px;text-align:right;grid-column:5/13}
.identity-heading h2{font-size:clamp(43px,3.75vw,57px);line-height:1.08;letter-spacing:-.041em;font-weight:500}
.identity-heading em{font-size:1.04em;letter-spacing:-.04em;line-height:1.22}
.identity-landscape .media-button{height:248px}
.identity-detail{padding-top:50px}
.identity-detail .media-button{height:181px}
.identity-summary{font-size:20px;line-height:1.48;color:#bacdc9;max-width:620px;margin-top:28px;grid-column:5/12}
.identity-summary strong{color:var(--white);font-weight:500}
.identity figcaption{font-size:13px;line-height:1.45;margin-top:12px;color:#c6d6d2}
.identity figcaption span:last-child{font-size:11px;opacity:.8}

/* 04 / Wide immersive film: the type stays low and RIGHT. */
.trust{height:88svh;min-height:750px;padding-top:58px}
.trust-copy{width:min(650px,57%);bottom:86px;right:var(--gutter);text-align:right}
.trust-first{font-size:28px;line-height:1.2;letter-spacing:-.025em;margin-bottom:13px}
.trust-copy h2{font-size:clamp(54px,4.8vw,72px);line-height:1.06;font-weight:500;letter-spacing:-.04em}
.trust-copy h2 em{font-family:var(--sans);font-style:normal;font-weight:500;letter-spacing:inherit}
.trust-summary{font-size:21px;line-height:1.48;max-width:525px;margin:26px 0 0 auto;color:#e2e6e1}
.trust-summary strong{color:#fff;font-weight:600}
.film-play{top:34%;left:21%;font-size:14px;line-height:1.3}
.film-play>svg{width:88px;height:88px;padding:30px}
.film-play>span{font-size:14px}
.trust-pause{bottom:30px}

/* 05 / Stepped typography. The paragraph sits BELOW the statement. */
.purpose{min-height:795px;padding-top:65px;padding-bottom:38px}
.purpose-body{padding:40px 0 38px;max-width:1240px;width:100%;margin:auto}
.purpose h2{font-weight:500;line-height:1.12;letter-spacing:-.044em}
.purpose h2>span:first-child{font-size:clamp(28px,2.7vw,39px);line-height:1.15;letter-spacing:-.026em;margin-left:5.5%;margin-bottom:8px}
.purpose-to{font-size:clamp(46px,4.35vw,65px);margin-left:26%;margin-top:0}
.purpose h2>em{font-size:clamp(80px,7.5vw,112px);line-height:1.11;letter-spacing:-.05em;margin-left:12%;margin-top:4px}
.purpose-baseline{margin:29px 0 0 35%;gap:27px;align-items:flex-start;max-width:730px}
.purpose-baseline p{font-size:22px;line-height:1.48;color:#ffedf7;max-width:600px}
.purpose-baseline strong{display:block;font-size:1em;font-weight:600;color:#fff;margin-top:13px}
.direction-arrow{width:67px;height:60px;stroke-width:1.2;flex:none;margin-top:5px;opacity:.85}
.purpose-link{font-size:14px;padding-top:21px;line-height:1.4;letter-spacing:0}

/* 06 / Cases retain their different scales and vertical offsets. */
.projects{padding-top:76px;padding-bottom:75px}
.projects-heading{padding:58px 0 68px}
.projects-heading h2{line-height:1.15;letter-spacing:-.035em;font-weight:500}
.projects-heading span{font-size:25px;margin-bottom:10px;letter-spacing:-.02em;color:#6a7371}
.projects-heading em{font-family:var(--sans);font-style:normal;font-size:clamp(38px,3.4vw,52px);letter-spacing:-.045em;font-weight:500;color:var(--ink)}
.case-grid{grid-template-columns:1.25fr .85fr;gap:7.5vw}
.case-aspaldiko{margin-top:154px}
.case-name{font-size:14px;letter-spacing:.01em;margin-bottom:10px;color:#5a6565}
.case-chip{font-size:12px;padding:8px 11px;letter-spacing:0}
.case h3{font-size:clamp(25px,2.1vw,32px);font-weight:500;line-height:1.15;letter-spacing:-.032em}
.case-heading{padding-top:23px}
.case-view{width:42px;height:42px}
.media-open{width:40px;height:40px}
.project-index>button{padding:23px 0;gap:21px}
.project-index>button>span:nth-child(2){font-size:25px;letter-spacing:-.023em}
.project-index small{font-size:14px;line-height:1.4;color:#5f6b6c}
.index-number{font-size:12px}
.clients{padding-top:57px;padding-bottom:64px}
.clients h2{font-size:32px;font-weight:500;line-height:1.25;letter-spacing:-.029em;margin:20px 0 38px}
.clients em{font-family:var(--sans);font-style:normal;font-weight:500;letter-spacing:inherit}
.client-logos{max-width:890px}
.client-logos img{opacity:.86}

/* 07 / Closing statement, then the form. Never another split section. */
.contact{padding-top:77px;padding-bottom:25px}
.contact h2{font-size:clamp(51px,4.65vw,70px);font-weight:500;line-height:1.1;letter-spacing:-.044em;margin:26px auto 22px}
.contact h2 em{font-family:var(--sans);font-style:normal;font-weight:500;letter-spacing:inherit}
.contact-dot{width:11px;height:11px;right:-24px;bottom:8px}
.contact-intro{font-size:21px;line-height:1.48;color:#c9d8d3;max-width:640px;margin:auto}
.contact-form-wrap{max-width:1000px;margin:45px auto 59px}
.contact-form-wrap label{font-size:14px;line-height:1.5;color:#dfe8e3}
.contact-form-wrap input,.contact-form-wrap textarea{font-size:18px;line-height:1.5;color:#fff;padding:12px 0 14px}
.contact-form-wrap input::placeholder,.contact-form-wrap textarea::placeholder{color:#a7bbb4;opacity:1}
.form-three{gap:33px}
.form-message{margin-top:26px}
.form-message textarea{min-height:92px}
.form-note{font-size:12px;color:#b4c6bf;line-height:1.5;max-width:370px}
.form-bottom{gap:24px;margin-top:22px}
.form-status{font-size:16px;line-height:1.5}
.footer{font-size:12px;color:#b7c9c1;min-height:80px;padding-top:23px}
.footer img{width:142px;height:auto}
.footer .back-top{font-size:13px;gap:20px}
.dialog-top h2{font-size:28px}
.dialog-top .eyebrow{font-size:12px}
.dialog-tabs button,#original-video{font-size:14px}
.video-error{font-size:16px;line-height:1.5}
.noscript-note{font-size:15px;line-height:1.5}

@media(min-width:1700px){
  .identity-composition{column-gap:34px}
  .identity-portrait .media-button{height:580px}
  .identity-landscape .media-button{height:282px}
  .identity-detail .media-button{height:205px}
  .identity-summary{font-size:22px;max-width:710px}
  .identity-heading{margin-bottom:45px}
  .hero-summary{font-size:23px;max-width:735px}
  .difference{min-height:830px}
  .identity{padding-top:80px;padding-bottom:82px}
  .trust-summary{font-size:23px;max-width:575px}
  .purpose-baseline p{font-size:24px}
}
@media(max-width:1100px){
  .desktop-nav{display:none}
  .site-header{height:84px;gap:19px}
  .brand,.brand img{width:140px;height:44px}
  .menu-toggle{display:block}
  .header-contact{margin-left:auto;font-size:14px;padding:12px 16px;gap:20px}
  .mobile-nav{top:84px;padding-top:30px}
  .mobile-nav a{font-size:26px;line-height:1.4}
  .hero h1{font-size:clamp(53px,6.6vw,73px)}
  .hero-content{padding-top:140px;padding-bottom:138px}
  .hero-summary{font-size:21px;max-width:635px}
  .identity-composition{column-gap:21px}
  .identity-portrait .media-button{height:495px}
  .identity-heading h2{font-size:45px}
  .identity-landscape .media-button{height:218px}
  .identity-detail .media-button{height:149px}
  .identity-summary{font-size:20px;max-width:520px;grid-column:4/13;margin-top:24px}
  .trust-copy{width:65%}
  .trust-summary{font-size:20px}
  .purpose-baseline{margin-left:26%;max-width:650px}
  .purpose-baseline p{font-size:21px}
  .purpose{min-height:755px}
}
@media(max-width:800px){
  :root{--gutter:28px;--body-size:20px}
  .site-header{height:80px;gap:16px}
  .brand,.brand img{width:132px;height:41px}
  .header-contact{border:0;padding:12px 0;font-size:14px}
  .mobile-nav{top:80px}
  .eyebrow{font-size:12px}
  .meta-right{font-size:12px;max-width:190px}
  .hero{min-height:740px}
  .hero-content{padding:140px 26px 120px}
  .hero-eyebrow{font-size:12px;margin-bottom:25px}
  .hero h1{font-size:clamp(43px,7.4vw,59px);line-height:1.1;letter-spacing:-.045em}
  .hero-line-one,.hero-line-two{font-size:1em;line-height:inherit}
  .hero-line-two{white-space:normal;margin-top:4px}
  .hero-line-two em{display:inline;font-size:1.05em;margin:0}
  .hero-summary{font-size:20px;line-height:1.5;max-width:590px;margin-top:26px;margin-bottom:26px}
  .hero .button{font-size:15px;min-height:54px;padding:16px 23px}
  .hero-credit{display:none}
  .hero-bottom{font-size:12px}
  .video-control{font-size:12px}
  .difference{min-height:765px;padding-top:62px;padding-bottom:30px}
  .manifesto{padding:55px 0}
  .manifesto h2{font-size:clamp(37px,6.8vw,51px)}
  .manifesto-middle{flex-direction:row;gap:18px}
  .manifesto-middle>span:last-child{font-size:1em}
  .inline-picture{width:135px;height:57px;min-width:0}
  .manifesto-first{margin-left:0}
  .manifesto-last{font-size:.85em;margin-top:22px;line-height:1.17}
  .manifesto-last em{display:inline;font-size:1em;line-height:inherit}
  .manifesto-summary{font-size:20px;line-height:1.5;max-width:635px;margin-top:30px}
  .manifesto-bottom{font-size:11px;gap:24px}
  .identity{padding-top:58px;padding-bottom:60px}
  .identity-composition{grid-template-columns:repeat(6,1fr);margin-top:40px;column-gap:20px;row-gap:0}
  .identity-heading{grid-column:1/7;grid-row:1;text-align:right;margin:0 0 25px}
  .identity-heading h2{font-size:43px;line-height:1.08}
  .identity-heading h2 br:first-child{display:inline}
  .identity-heading em{font-size:1.045em}
  .identity-portrait{grid-column:1/3;grid-row:2/4;padding:0}
  .identity-portrait .media-button{height:399px}
  .identity-landscape{grid-column:3/7;grid-row:2;margin-top:27px}
  .identity-landscape .media-button{height:190px}
  .identity-detail{grid-column:4/7;grid-row:3;padding:0;margin-top:22px}
  .identity-detail .media-button{height:149px}
  .identity-summary{grid-column:2/7;grid-row:4;font-size:20px;margin:27px 0 0 auto;max-width:525px;line-height:1.48}
  .identity figcaption{font-size:12px;margin-top:10px}
  .identity figcaption span:last-child{display:none}
  .trust{height:87svh;min-height:760px;padding-top:49px}
  .trust-copy{width:82%;right:var(--gutter);bottom:81px}
  .trust-first{font-size:26px}
  .trust-copy h2{font-size:55px;line-height:1.06}
  .trust-summary{font-size:20px;max-width:460px;line-height:1.48}
  .film-play{left:13%;top:26%}
  .film-play>svg{width:76px;height:76px;padding:26px}
  .film-play>span{font-size:13px}
  .purpose{min-height:755px;padding-top:58px;padding-bottom:30px}
  .purpose-body{padding:41px 0 44px}
  .purpose h2>span:first-child{font-size:28px;line-height:1.2;margin-left:0;max-width:none}
  .purpose-to{font-size:49px;margin-left:19%;margin-top:8px}
  .purpose h2>em{font-size:76px;line-height:1.1;margin:8px 0 0 3%}
  .purpose-baseline{margin:32px 0 0 13%;gap:22px;max-width:610px}
  .purpose-baseline p{font-size:20px;line-height:1.5;max-width:500px}
  .direction-arrow{width:48px;height:45px}
  .purpose-link{font-size:14px}
  .projects{padding-top:57px;padding-bottom:57px}
  .projects-heading{padding:46px 0 49px}
  .projects-heading span{font-size:23px}
  .projects-heading em{font-size:40px;line-height:1.15;margin-top:11px;display:block}
  .case-grid{grid-template-columns:1.15fr .85fr;gap:29px}
  .case-aspaldiko{margin-top:105px}
  .case h3{font-size:24px}
  .case-name{font-size:13px}
  .case-chip{font-size:11px;padding:7px 9px}
  .case-heading{padding-top:18px}
  .media-open{width:34px;height:34px}
  .project-index{margin-top:43px}
  .project-index>button{grid-template-columns:25px 1fr 24px;gap:15px;padding:21px 0}
  .project-index>button>span:nth-child(2){font-size:23px}
  .project-index small{display:none}
  .clients{padding-top:49px;padding-bottom:54px}
  .clients h2{font-size:30px;max-width:600px;margin:20px auto 34px}
  .contact{padding-top:62px}
  .contact h2{font-size:51px;line-height:1.1;margin-top:24px}
  .contact-dot{width:9px;height:9px;right:-20px;bottom:7px}
  .contact-intro{font-size:20px;max-width:525px}
  .contact-form-wrap{margin:36px auto 50px}
  .contact-form-wrap label{font-size:14px}
  .contact-form-wrap input,.contact-form-wrap textarea{font-size:18px}
  .form-three{gap:24px}
  .form-note{font-size:12px;max-width:290px}
  .footer>span{display:none}
  .footer img{width:128px}
  .text-link{font-size:14px}
}
@media(max-width:600px){
  :root{--gutter:23px;--body-size:18px}
  .site-header{gap:13px;height:78px}
  .brand,.brand img{width:124px;height:39px}
  .header-contact{font-size:14px;gap:12px}
  .menu-toggle{width:34px}
  .mobile-nav{top:78px;padding-top:24px}
  .mobile-nav a{font-size:24px;padding:13px 0}
  .hero{height:100svh;min-height:745px}
  .hero-content{padding:125px 23px 112px}
  .hero h1{font-size:clamp(36px,9.7vw,47px);line-height:1.08;letter-spacing:-.044em}
  .hero-line-one{font-size:1em}
  .hero-line-two{font-size:1.04em;line-height:1.1;margin-top:4px}
  .hero-line-two em{display:block;font-size:1.14em;letter-spacing:-.05em;margin-top:0}
  .hero-eyebrow{font-size:11px;margin-bottom:26px}
  .hero-summary{font-size:18px;line-height:1.5;max-width:340px;margin-top:27px;margin-bottom:25px}
  .hero-bottom{bottom:22px;font-size:11px;line-height:1.4;gap:20px;align-items:flex-start}
  .hero-bottom .scroll-link{gap:9px}
  .hero .video-control{font-size:11px;gap:7px;min-height:24px;padding:0}
  .hero .video-control span{max-width:100px;line-height:1.4;text-align:right}
  .eyebrow{font-size:11px;letter-spacing:.11em}
  .meta-right{font-size:11px;max-width:140px;line-height:1.5}
  .difference{min-height:0;padding-top:61px;padding-bottom:29px}
  .difference .meta-right{display:none}
  .manifesto{padding:43px 0 41px}
  .manifesto h2{font-size:clamp(31px,8.35vw,41px);line-height:1.15;letter-spacing:-.04em}
  .manifesto-first{font-size:1em;margin:0}
  .manifesto-middle{flex-direction:row;gap:13px;margin-top:13px}
  .manifesto-middle .inline-picture{width:85px;height:45px;flex:none}
  .manifesto-middle>span:last-child{font-size:1em}
  .manifesto-last{font-size:.91em;line-height:1.16;margin:24px auto 0;max-width:365px}
  .manifesto-last em{display:inline;font-size:1em;line-height:inherit}
  .manifesto-summary{font-size:18px;line-height:1.54;margin-top:29px;max-width:450px}
  .manifesto-bottom{font-size:10px;gap:19px;line-height:1.5;letter-spacing:.07em;padding-top:20px}
  .identity{padding-top:51px;padding-bottom:55px}
  .identity .meta-right{max-width:132px}
  .identity-composition{gap:0 16px;margin-top:35px}
  .identity-heading{grid-column:1/7;margin-bottom:28px;text-align:right}
  .identity-heading h2{font-size:36px;line-height:1.09;letter-spacing:-.035em}
  .identity-heading em{font-size:1.06em}
  .identity-portrait .media-button{height:305px}
  .identity-landscape{margin-top:27px}
  .identity-landscape .media-button{height:146px}
  .identity-detail{margin-top:17px}
  .identity-detail .media-button{height:118px}
  .identity figcaption{font-size:11px;line-height:1.42;margin-top:9px}
  .identity-summary{grid-column:1/7;font-size:18px;line-height:1.5;max-width:360px;margin:27px 0 0 auto;text-align:left}
  .trust{height:91svh;min-height:744px;padding-top:47px}
  .trust .meta-right{display:none}
  .trust-copy{right:var(--gutter);bottom:81px;width:calc(100% - 46px)}
  .trust-first{font-size:23px;margin-bottom:11px;letter-spacing:-.025em}
  .trust-copy h2{font-size:clamp(42px,11.2vw,52px);line-height:1.06;letter-spacing:-.04em}
  .trust-summary{font-size:18px;line-height:1.48;max-width:335px;margin-top:22px}
  .film-play{left:12%;top:24%;gap:13px}
  .film-play>svg{width:73px;height:73px;padding:25px}
  .trust-pause{font-size:11px;bottom:25px}
  .purpose{min-height:0;padding-top:51px;padding-bottom:28px}
  .purpose .meta-right{display:none}
  .purpose-body{padding:51px 0 43px}
  .purpose h2>span:first-child{font-size:23px;max-width:350px;line-height:1.2;margin:0 0 0 1%}
  .purpose-to{font-size:37px;line-height:1.1;margin:11px 0 0 17%}
  .purpose h2>em{font-size:clamp(49px,13.8vw,71px);margin:12px 0 0 2%;letter-spacing:-.045em;line-height:1.12}
  .purpose-baseline{margin:32px 0 0 5%;gap:17px;max-width:none}
  .purpose-baseline p{font-size:18px;line-height:1.52}
  .purpose-baseline strong{margin-top:17px;font-weight:600}
  .direction-arrow{width:31px;height:35px;margin-top:5px}
  .purpose-link{font-size:13px;padding-top:21px;line-height:1.4}
  .projects{padding-top:49px;padding-bottom:54px}
  .projects>.section-meta{align-items:flex-start;gap:16px}
  .projects>.section-meta .eyebrow{max-width:150px}
  .projects>.section-meta .text-link{font-size:12px;gap:12px;white-space:nowrap}
  .projects-heading{padding:42px 0 41px}
  .projects-heading span{font-size:21px;margin-bottom:12px}
  .projects-heading em{font-size:34px;letter-spacing:-.04em;line-height:1.12;max-width:365px;margin:0 auto}
  .case-grid{grid-template-columns:1fr;gap:44px}
  .case-oliver .case-media{aspect-ratio:1.18}
  .case-aspaldiko{margin-top:0;margin-left:10%}
  .case-aspaldiko .case-media{aspect-ratio:1.04}
  .case-name{font-size:13px}
  .case h3{font-size:25px;line-height:1.15;letter-spacing:-.032em}
  .case-chip{font-size:11px}
  .case-heading{padding-top:17px}
  .project-index>button>span:nth-child(2){font-size:21px}
  .project-index>button{padding:21px 0;gap:11px}
  .index-number{font-size:11px}
  .clients{padding-top:45px;padding-bottom:48px}
  .clients h2{font-size:26px;line-height:1.23;letter-spacing:-.025em;max-width:345px;margin:20px auto 33px}
  .clients em{white-space:normal}
  .client-logos{display:grid;grid-template-columns:1fr 1fr;gap:31px 24px;justify-items:center}
  .contact{padding-top:59px}
  .contact h2{font-size:clamp(36px,10vw,47px);line-height:1.12;letter-spacing:-.04em;max-width:410px;margin:23px auto 22px}
  .contact h2 em{display:inline}
  .contact-dot{width:8px;height:8px;right:-12px;bottom:6px}
  .contact-intro{font-size:18px;line-height:1.5;max-width:340px}
  .contact-intro br{display:none}
  .contact-form-wrap{margin-top:37px;margin-bottom:45px}
  .form-three{grid-template-columns:1fr;gap:24px}
  .contact-form-wrap input,.contact-form-wrap textarea{font-size:18px;line-height:1.5}
  .contact-form-wrap label{font-size:14px}
  .form-message{margin-top:27px}
  .form-message textarea{min-height:110px}
  .form-bottom{flex-direction:column-reverse;gap:17px;align-items:stretch}
  .form-bottom .button{font-size:15px}
  .form-note{font-size:12px;line-height:1.5;text-align:center;max-width:none}
  .form-status{font-size:15px}
  .footer{padding-top:22px;min-height:66px}
  .footer img{width:118px}
  .footer .back-top{font-size:12px;gap:11px}
  .dialog-top h2{font-size:25px}
  .dialog-top .eyebrow{font-size:10px}
  .dialog-tabs button,#original-video{font-size:13px}
  .video-error{font-size:15px}
}
@media(max-width:359px){
  :root{--gutter:20px}
  .header-contact{gap:8px;font-size:13px}
  .brand,.brand img{width:114px;height:36px}
  .hero h1{font-size:34px}
  .manifesto-middle .inline-picture{width:68px;height:39px}
  .manifesto-middle{gap:10px}
  .manifesto h2{font-size:30px}
  .contact-dot{display:none}
}
@media(prefers-reduced-motion:reduce){
  .ambient-video{display:block}
  .reveal-enabled [data-reveal].awaiting{opacity:1!important;transform:none!important}
}
/* Keep the editorial offset within the content box at every width. */
.manifesto-first{width:fit-content;max-width:100%;margin:0 auto;transform:translateX(-6%)}
.menu-toggle{width:44px;height:44px}
@media(max-width:800px){.manifesto-first{transform:none}}
