:root{color-scheme:dark;--ink:#19191c;--panel:#242428;--line:#44444a;--white:#f5f5f2;--muted:#aaaab1;--orange:#ff891f;--blue:#00a6e2;--pink:#e62d87;--green:#04a777;--yellow:#ffc223;--purple:#914096}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--white);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}::selection{background:var(--pink);color:#fff}.wrap{width:min(100% - 80px,1440px);margin-inline:auto}.skip-link{position:absolute;top:-100px;left:20px;z-index:20;background:#fff;color:#111;padding:12px}.skip-link:focus{top:12px}:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}
.site-header{position:relative;z-index:10;background:var(--ink)}.brand-line{height:5px;background:linear-gradient(90deg,var(--orange) 0 14%,var(--blue) 14% 28%,#e33b43 28% 42%,var(--purple) 42% 57%,var(--green) 57% 72%,var(--pink) 72% 86%,var(--yellow) 86%)}.header-inner{height:100px;display:flex;align-items:center;justify-content:space-between;gap:40px;border-bottom:1px solid var(--line)}.brand{width:178px;flex:none}.main-nav{display:flex;align-items:center;gap:37px;font-size:.88rem;font-weight:700}.main-nav>a:not(.nav-contact){transition:color .2s}.main-nav>a:not(.nav-contact):hover{color:var(--orange)}.nav-contact{border:1px solid #ddd;padding:12px 17px;display:flex;gap:28px;align-items:center}.nav-contact:hover{background:var(--white);color:var(--ink)}.menu-toggle{display:none}
.hero{min-height:710px;display:grid;grid-template-columns:minmax(0,1.22fr) minmax(370px,.78fr);gap:58px;align-items:center;position:relative;padding-top:62px;padding-bottom:84px}.eyebrow,.section-kicker{margin:0;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800}.eyebrow{display:flex;gap:11px;align-items:center;color:#d4d4d7}.eyebrow-rule{height:2px;width:25px;background:var(--orange)}h1,h2,h3,p{margin-top:0}.hero h1{font-size:clamp(3.3rem,5.15vw,6.45rem);letter-spacing:-.064em;line-height:.99;margin:30px 0 28px;font-weight:800;max-width:900px}.hero h1 em,.contact h2 em{font-style:normal;color:var(--orange)}.hero h1 em:nth-of-type(2){color:var(--blue)}.hero h1 em:nth-of-type(3){color:var(--pink)}.hero-lead{max-width:650px;font-size:1.23rem;line-height:1.52;color:#c5c5cb;margin-bottom:30px}.hero-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;gap:32px;align-items:center;justify-content:space-between;font-size:.9rem;font-weight:800}.button-primary{background:var(--orange);color:#18181b;padding:17px 20px;min-width:211px}.button-primary:hover{background:var(--yellow)}.button-text{border-bottom:1px solid #aaa;padding:12px 0}.button-text:hover{border-color:var(--pink);color:var(--pink)}.hero-stage{min-height:535px;background:#222225;border:1px solid #47474c;display:flex;flex-direction:column;position:relative;overflow:hidden}.stage-head,.stage-bottom{padding:21px 23px;display:flex;justify-content:space-between;gap:10px;color:#b9b9bf;font-size:.69rem;font-weight:800;letter-spacing:.13em}.stage-head{border-bottom:1px solid #48484e}.stage-bottom{border-top:1px solid #48484e;margin-top:auto}.stage-bottom span:last-child{font-size:1.1rem;color:var(--orange);line-height:.8}.stage-mark{position:absolute;inset:70px 0 0;overflow:hidden;opacity:.46;display:flex;justify-content:center;align-items:center;pointer-events:none}.stage-mark img{width:77%;height:auto;mix-blend-mode:screen;filter:saturate(1.1)}.stage-list{margin:auto 23px 24px;position:relative;z-index:1}.stage-list>div{padding:16px 12px 16px 0;border-top:1px solid #69696e;display:grid;grid-template-columns:42px 1fr 24px;align-items:center;gap:10px;background:rgba(29,29,32,.67)}.stage-list b{font-size:.72rem;color:#bcbcc0}.stage-list span{font-weight:800;font-size:1.65rem;letter-spacing:-.04em}.stage-list i{width:12px;height:12px;background:var(--orange);transform:rotate(45deg)}.stage-list>div:nth-child(2) i{background:var(--blue)}.stage-list>div:nth-child(3) i{background:var(--pink)}.hero-foot{position:absolute;bottom:27px;left:0;right:0;display:flex;justify-content:space-between;color:#909096;text-transform:uppercase;font-size:.65rem;letter-spacing:.13em;font-weight:800}.hero-foot span span{color:var(--orange);font-size:1rem;vertical-align:middle}
.section-pad{padding:110px 0}.section-kicker{color:var(--orange)}.intro{background:#f1f0ec;color:#1c1c1e}.intro-grid{display:grid;grid-template-columns:1fr 2.25fr;gap:40px}.intro .section-kicker{color:#96531d}.intro h2{font-size:clamp(2.5rem,4.2vw,5.2rem);line-height:1.03;letter-spacing:-.057em;margin-bottom:23px}.intro h2 span{color:#65656a}.intro p:not(.section-kicker){font-size:1.19rem;max-width:770px;color:#49494e;margin:0}
.services{background:#1d1d20}.section-header{display:grid;grid-template-columns:1fr 2.25fr;gap:18px 40px;align-items:start;margin-bottom:38px}.section-header h2{grid-column:2;font-size:clamp(2.5rem,4vw,5rem);letter-spacing:-.055em;line-height:1.02;margin:0}.section-header h2 span,.team h2 span{color:#929299}.section-header>p:last-child{grid-column:2;color:#bcbcc2;max-width:700px;margin:0;font-size:1.05rem}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.service-card{min-height:628px;padding:30px 35px 0;display:flex;flex-direction:column;overflow:hidden}.service-card.creators{background:#263841}.service-card.companies{background:#3b2940}.card-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:64px}.card-number{font-weight:800;font-size:1.1rem}.card-tag{font-size:.72rem;letter-spacing:.11em;font-weight:800}.card-main h3{font-size:clamp(2.7rem,3.5vw,4.4rem);line-height:1.03;letter-spacing:-.06em;margin-bottom:21px}.card-main p{max-width:540px;font-size:1.08rem;color:#e6e3e8;margin-bottom:27px}.service-card ul{list-style:none;margin:0 0 25px;padding:0;max-width:620px}.service-card li{border-top:1px solid #ffffff47;padding:12px 0;font-size:.92rem;color:#e1dfe4}.service-card li span{font-weight:800;color:#fff;margin-right:10px}.card-link{margin:auto -35px 0;padding:21px 35px;display:flex;align-items:center;justify-content:space-between;background:var(--blue);color:#15171a;font-weight:800}.companies .card-link{background:var(--pink)}.card-link:hover{background:var(--yellow)}.card-link span{font-size:1.3rem}
.lens{background:#eeeeea;color:#1a1a1e}.lens .section-kicker{color:#985317}.lens-heading{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:70px;margin:17px 0 56px}.lens h2{font-size:clamp(3rem,5vw,6rem);letter-spacing:-.062em;line-height:1;margin:0}.lens h2 em{font-style:normal;color:var(--purple)}.lens-heading p{font-size:1.12rem;color:#57575b;margin-bottom:5px;max-width:410px}.lens-list{border-top:1px solid #aeacaa}.lens-list article{display:grid;grid-template-columns:90px minmax(250px,.9fr) minmax(310px,1fr) 28px;gap:22px;align-items:center;border-bottom:1px solid #aeacaa;padding:30px 0}.lens-index{font-size:.8rem;font-weight:800}.lens-list h3{font-size:clamp(1.7rem,2.4vw,2.7rem);letter-spacing:-.045em;margin:0}.lens-list p{max-width:560px;color:#55555b;margin:0}.lens-accent{display:block;width:16px;height:16px;transform:rotate(45deg);justify-self:end}.orange{background:var(--orange)}.blue{background:var(--blue)}.pink{background:var(--pink)}
.method{background:#27272b}.method>.wrap{display:grid;grid-template-columns:1fr 1.45fr;gap:100px}.method-title h2{font-size:clamp(3.2rem,4.2vw,5rem);letter-spacing:-.06em;line-height:1;margin:22px 0}.method-title>p:last-child{max-width:460px;color:#bbbcc2;font-size:1.05rem}.method-steps{border-top:1px solid #75757b}.method-steps article{padding:23px 0 25px;border-bottom:1px solid #75757b;display:grid;grid-template-columns:1fr 2fr;gap:0 24px}.method-steps article>span{font-size:.74rem;color:var(--orange);font-weight:800;letter-spacing:.1em}.method-steps h3{font-size:2rem;line-height:1.1;letter-spacing:-.04em;margin:0}.method-steps p{grid-column:2;color:#bdbdc3;margin:7px 0 0;max-width:410px}
.team{background:#19191c}.team-heading{display:grid;grid-template-columns:1fr 2.25fr;gap:40px;margin-bottom:42px}.team h2{font-size:clamp(2.7rem,4.2vw,5.2rem);letter-spacing:-.06em;line-height:1.02;margin:0}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.person{border:1px solid #44444a;background:#222226}.person-initials{height:240px;background:#303039;display:flex;justify-content:space-between;align-items:flex-end;padding:20px 27px;color:var(--orange)}.person-initials span{font-size:7.4rem;font-weight:900;line-height:.84;letter-spacing:-.09em}.person-initials b{font-size:.85rem;color:#e0e0e5}.person-initials.ari{background:#342c36;color:var(--pink)}.person-info{padding:29px 29px 31px}.person-info h3{font-size:2.2rem;letter-spacing:-.045em;margin:0}.person-role{color:var(--blue);font-weight:800;margin:3px 0 17px}.person:nth-child(2) .person-role{color:#f066a9}.person-info p:not(.person-role){max-width:590px;color:#c1c1c6;margin-bottom:20px}.person-info .person-proof{border-top:1px solid #515158;padding-top:16px;margin:0;color:#f2f2f2!important;font-size:.88rem;font-weight:800}.team-note{font-size:.8rem;color:#a1a1a9;margin:23px 0 0}
.contact{background:#f68422;color:#1a1a1d}.contact .section-kicker{color:#482a13}.contact-inner{position:relative}.contact h2{font-size:clamp(3.8rem,8.5vw,10.5rem);line-height:.95;letter-spacing:-.077em;margin:38px 0 27px;max-width:1270px}.contact h2 em{color:#fff}.contact p:not(.section-kicker){font-size:1.19rem;max-width:580px;margin-bottom:27px}.contact-link{display:flex;width:min(100%,580px);justify-content:space-between;align-items:center;border-top:2px solid #222;border-bottom:2px solid #222;padding:18px 0;font-size:2rem;font-weight:800;letter-spacing:-.03em}.contact-link:hover{color:#fff;border-color:#fff}.contact-addresses{display:flex;gap:35px;flex-wrap:wrap;margin-top:70px;font-size:.92rem;font-weight:800}.contact-addresses a:hover{text-decoration:underline}
.site-footer{background:#171719}.footer-inner{padding:53px 0 30px}.footer-inner img{width:200px}.footer-inner p{color:#b2b2b7;margin:25px 0 54px;font-size:.9rem}.footer-inner>div{border-top:1px solid #44444a;padding-top:22px;color:#99999f;display:flex;justify-content:space-between;font-size:.75rem;text-transform:uppercase;letter-spacing:.11em;font-weight:800}.footer-inner a:hover{color:var(--orange)}
@media(max-width:1100px){.hero{grid-template-columns:1fr .75fr;gap:25px}.hero h1{font-size:clamp(3.2rem,5.4vw,5rem)}.stage-list span{font-size:1.35rem}.method>.wrap{gap:40px}.service-card{min-height:660px}.lens-list article{grid-template-columns:54px minmax(180px,.7fr) 1fr 20px}.person-initials{height:195px}}
@media(max-width:780px){.wrap{width:min(100% - 40px,640px)}.header-inner{height:73px}.brand{width:148px}.menu-toggle{display:flex;border:0;background:none;padding:14px 0 14px 15px;flex-direction:column;gap:7px;cursor:pointer}.menu-toggle span{display:block;width:26px;height:2px;background:#f5f5f2}.main-nav{display:none;position:absolute;left:0;right:0;top:78px;padding:22px 20px 28px;background:#242428;border-bottom:1px solid #555;flex-direction:column;align-items:stretch;gap:0}.main-nav.is-open{display:flex}.main-nav a{padding:13px 0;border-bottom:1px solid #444}.main-nav .nav-contact{margin-top:12px;padding:12px 15px}.hero{padding-top:60px;padding-bottom:71px;display:block;min-height:0}.hero h1{font-size:clamp(3.25rem,9.5vw,5.7rem);margin-top:24px}.hero-lead{font-size:1.08rem}.hero-stage{margin-top:50px;min-height:410px}.stage-mark{inset:55px 0 0}.stage-list span{font-size:1.5rem}.hero-foot{bottom:22px}.section-pad{padding:76px 0}.intro-grid,.section-header,.team-heading,.method>.wrap{display:block}.intro h2,.section-header h2,.team h2{margin-top:23px}.section-header>p:last-child{margin-top:16px}.service-grid,.team-grid{grid-template-columns:1fr}.service-card{min-height:590px}.card-top{padding-bottom:49px}.lens-heading{display:block;margin:25px 0 40px}.lens-heading p{margin-top:21px}.lens-list article{grid-template-columns:32px 1fr 20px;gap:8px 15px;padding:27px 0}.lens-list h3{grid-column:2}.lens-list p{grid-column:2;max-width:520px}.lens-accent{grid-column:3;grid-row:1 / 3}.method-title{margin-bottom:42px}.person-initials{height:220px}.contact h2{margin:29px 0 25px;font-size:clamp(3.5rem,12vw,7rem)}.contact-addresses{margin-top:55px}}
@media(max-width:480px){.wrap{width:calc(100% - 32px)}.hero{padding-top:45px}.eyebrow{font-size:.67rem}.hero h1{font-size:clamp(2.72rem,12vw,3.8rem)}.hero-actions{align-items:stretch;gap:15px}.button-primary{width:100%}.button-text{margin-left:0}.hero-stage{min-height:395px}.stage-list span{font-size:1.36rem}.hero-foot span:first-child{display:none}.hero-foot{justify-content:flex-end}.section-pad{padding:66px 0}.intro h2,.section-header h2,.team h2{font-size:clamp(2.55rem,10vw,3.55rem)}.service-card{padding:23px 22px 0;min-height:600px}.card-top{padding-bottom:38px}.card-tag{max-width:150px;text-align:right}.card-main h3{font-size:2.85rem}.card-link{margin-left:-22px;margin-right:-22px;padding:18px 22px}.lens h2,.method-title h2{font-size:3.2rem}.lens-list h3{font-size:1.95rem}.method-steps article{grid-template-columns:1fr}.method-steps h3,.method-steps p{grid-column:1}.method-steps h3{margin-top:8px}.person-initials{height:180px}.person-initials span{font-size:5.5rem}.person-info{padding:22px}.person-info h3{font-size:1.85rem}.contact h2{font-size:clamp(3.25rem,13vw,5rem)}.contact-link{font-size:1.7rem}.contact-addresses{display:block}.contact-addresses a{display:block;margin-top:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Brand art keeps its native ratio at every breakpoint. */
.header-inner{height:114px}
.brand{width:290px}
.brand img{width:100%;height:auto;object-fit:contain}
.footer-inner img{width:200px;height:auto;object-fit:contain}
.hero-stage{justify-content:center}
.stage-mark{inset:0}
.stage-list{margin:auto 23px;position:relative;z-index:1}

/* Make the audience for each service clear at a glance. */
.service-card .card-top{align-items:flex-start;gap:18px;padding-bottom:43px}
.service-card .card-number{font-size:clamp(4.5rem,6vw,6.25rem);line-height:.88;letter-spacing:-.08em;font-weight:800}
.service-card.creators .card-number{color:var(--orange)}
.service-card.companies .card-number{color:var(--blue)}
.service-card .card-tag{flex:0 0 49%;min-height:108px;padding:18px 19px;display:flex;align-items:center;text-align:left;font-size:clamp(1.4rem,1.8vw,1.85rem);line-height:1.05;letter-spacing:-.035em;font-weight:800}
.service-card.creators .card-tag{background:#8bd8ee;color:#17313b}
.service-card.companies .card-tag{background:#ffc1dc;color:#39243b}

/* What we do: three disciplines. */
.work{background:#f1f0ec;color:#1c1c1e}
.work .section-kicker{color:#96531d}
.work-heading{display:grid;grid-template-columns:1fr 2.25fr;gap:40px;align-items:start;margin-bottom:45px}
.work-heading h2{font-size:clamp(2.7rem,4.2vw,5.2rem);line-height:1.03;letter-spacing:-.058em;margin:0}
.work-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.work-pillars article{border-top:5px solid var(--orange);background:#fff;padding:26px 27px 32px;min-height:300px;display:flex;flex-direction:column}
.work-pillars article:nth-child(2){border-color:var(--blue)}
.work-pillars article:nth-child(3){border-color:var(--pink)}
.work-index{font-size:.73rem;letter-spacing:.1em;font-weight:800;color:#5c5c63}
.work-pillars h3{font-size:clamp(1.8rem,2.25vw,2.65rem);line-height:1.08;letter-spacing:-.05em;margin:43px 0 15px}
.work-pillars p{font-size:1rem;color:#53535a;line-height:1.48;margin:0;max-width:350px}

/* Portraits are real supplied photos, with crops that preserve faces. */
.person-photo{height:355px;overflow:hidden;background:#303039}
.person-photo img{width:100%;height:100%;object-fit:cover;object-position:center 35%}
.person-photo.ari img{object-position:center 17%}
.person-photo-link{display:block;position:relative}
.linkedin-badge{position:absolute;right:16px;bottom:16px;width:44px;height:44px;display:grid;place-items:center;color:#fff;background:#0a66c2;border:2px solid #fff;box-shadow:0 3px 12px #0008;pointer-events:none;transition:background-color .2s}
.linkedin-badge svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.person-photo-link:hover .linkedin-badge,.person-photo-link:focus-visible .linkedin-badge{background:#0780d0}
.person-info{min-height:295px;display:flex;flex-direction:column}
.person-info .person-proof{margin-top:auto!important}

/* Monochrome logo treatment preserves the supplied originals. */
.clients{background:#252529}
.clients-heading{display:grid;grid-template-columns:1fr 2.25fr;gap:15px 40px;align-items:start;margin-bottom:38px}
.clients-heading h2{grid-column:2;font-size:clamp(2.7rem,4.2vw,5.2rem);line-height:1.02;letter-spacing:-.058em;margin:0}
.clients-heading>p:last-child{grid-column:2;margin:0;color:#bdbdc3}
.client-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.client-tile{margin:0;min-height:210px;padding:24px 15px 20px;background:#1b1b1e;border:1px solid #424248;display:flex;flex-direction:column;align-items:center;justify-content:center}
.client-tile img{max-width:88%;max-height:105px;width:auto;height:auto;object-fit:contain;opacity:.88}
.client-tile:hover img{opacity:1}
.client-tile .client-name{font-size:.67rem;text-transform:uppercase;letter-spacing:.11em;color:#9f9fa6;margin-top:auto;padding-top:22px;font-weight:800;text-align:center}
.client-tile:hover,.client-tile:focus-visible{border-color:#e8e8eb;background:#2a2a2e}
.client-tile:hover .client-name,.client-tile:focus-visible .client-name{color:#fff}
.client-tile .logo-enchufe{max-height:105px}
.client-tile .logo-polinesios{max-width:95%;max-height:92px}
.client-tile .logo-raptor{max-width:94%;max-height:94px;filter:grayscale(1) brightness(.6) contrast(8) invert(1);mix-blend-mode:screen}
.client-tile .logo-indigo{max-width:95%;max-height:85px;filter:grayscale(1) brightness(0) invert(1)}
.client-tile .logo-inti{max-height:100px;filter:grayscale(1) brightness(.7) contrast(8);mix-blend-mode:screen}
.client-tile .logo-enchufe,.client-tile .logo-polinesios{filter:grayscale(1) brightness(0) invert(1)}
.client-tile .logo-dynamo{max-width:95%;filter:grayscale(1) brightness(1.5) contrast(8);mix-blend-mode:screen}
.client-tile .logo-radio-ambulante{max-width:90%;filter:grayscale(1) invert(1) brightness(1.5) contrast(8);mix-blend-mode:screen}
.client-tile .logo-cazurro{max-height:105px;filter:grayscale(1) brightness(.7) contrast(8);mix-blend-mode:screen}
.client-tile:not(a):hover{background:#1b1b1e;border-color:#424248}
.client-tile:not(a):hover .client-name{color:#9f9fa6}

@media(max-width:1100px){
  .brand{width:230px}
  .header-inner{gap:20px}
  .main-nav{gap:20px}
  .work-pillars h3{margin-top:30px}
  .work-pillars article{min-height:335px}
  .client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:780px){
  .header-inner{height:84px;gap:12px}
  .brand{width:210px}
  .main-nav{top:89px}
  .work-heading,.clients-heading{display:block}
  .work-heading h2,.clients-heading h2{margin-top:22px}
  .work-pillars{grid-template-columns:1fr}
  .work-pillars article{min-height:0}
  .work-pillars h3{margin-top:30px}
  .person-photo{height:350px}
  .person-info{min-height:0}
  .service-card .card-top{padding-bottom:34px}
  .service-card .card-tag{flex-basis:52%;font-size:clamp(1.3rem,4.3vw,1.8rem)}
  .clients-heading>p:last-child{margin-top:16px}
}
@media(max-width:480px){
  .brand{width:min(210px,calc(100% - 60px))}
  .service-card .card-number{font-size:4.25rem}
  .service-card .card-tag{min-height:92px;padding:14px 12px;font-size:clamp(1.18rem,5vw,1.45rem)}
  .service-card .card-top{gap:11px;padding-bottom:28px}
  .work-heading h2,.clients-heading h2{font-size:clamp(2.55rem,10vw,3.55rem)}
  .work-pillars article{padding:22px}
  .person-photo{height:280px}
  .client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .client-tile{min-height:158px;padding:17px 10px}
  .client-tile img{max-height:73px}
  .client-tile .logo-enchufe,.client-tile .logo-inti{max-height:78px}
  .client-tile .client-name{font-size:.58rem;padding-top:13px}
}

/* Social profiles sit beside the section links and share one icon style. */
.main-nav{gap:clamp(16px,2vw,31px)}
.social-links{display:flex;align-items:center;gap:7px;border-left:1px solid var(--line);padding-left:18px}
.social-links a{width:36px;height:36px;display:grid;place-items:center;flex:none;border:1px solid #57575e;color:#dedee3;transition:color .2s,border-color .2s,background-color .2s}
.social-links a:hover,.social-links a:focus-visible{color:var(--orange);border-color:var(--orange);background:#303036}
.social-links svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1100px){.social-links{padding-left:10px;gap:5px}}
@media(max-width:1020px){
  .header-inner{height:84px;gap:12px}
  .brand{width:210px}
  .menu-toggle{display:flex;border:0;background:none;padding:14px 0 14px 15px;flex-direction:column;gap:7px;cursor:pointer}
  .menu-toggle span{display:block;width:26px;height:2px;background:#f5f5f2}
  .main-nav{display:none;position:absolute;left:0;right:0;top:89px;padding:22px 20px 28px;background:#242428;border-bottom:1px solid #555;flex-direction:column;align-items:stretch;gap:0}
  .main-nav.is-open{display:flex}
  .main-nav>a{padding:13px 0;border-bottom:1px solid #444}
  .main-nav .nav-contact{margin-top:12px;padding:12px 15px}
  .social-links{border-left:0;padding:18px 0 0;gap:10px}
  .main-nav .social-links a{width:42px;height:42px;padding:0;border:1px solid #57575e}
}
@media(max-width:480px){.brand{width:min(210px,calc(100% - 60px))}}

/* Language choice follows the navigation and remains visible in the mobile menu. */
.language-switch{display:flex;align-items:center;flex:none;border:1px solid #57575e}
.language-switch a{min-width:36px;height:36px;display:grid;place-items:center;color:#dedee3;font-size:.72rem;font-weight:800;letter-spacing:.05em;transition:color .2s,background-color .2s}
.language-switch a+a{border-left:1px solid #57575e}
.language-switch a[aria-current="page"]{background:var(--orange);color:var(--ink)}
.language-switch a:not([aria-current]):hover,.language-switch a:not([aria-current]):focus-visible{background:#303036;color:var(--orange)}
@media(max-width:1020px){.language-switch{align-self:flex-start;margin-top:17px}.main-nav .language-switch a{width:44px;height:44px;padding:0;border-bottom:0}}
