/* ==========================================================================
   Christina Tasci — site styles
   Desktop layout is drawn on a 1920px-wide design and scales down
   proportionally (1 design px = var(--p)). Below 960px it switches to a
   stacked mobile layout.
   ========================================================================== */

@font-face{font-family:"Figtree";font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/figtree-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Figtree";font-weight:500;font-style:normal;font-display:swap;src:url(../fonts/figtree-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Figtree";font-weight:600;font-style:normal;font-display:swap;src:url(../fonts/figtree-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Figtree";font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/figtree-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Figtree";font-weight:800;font-style:normal;font-display:swap;src:url(../fonts/figtree-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Source Sans 3";font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/source-sans-3-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Source Sans 3";font-weight:600;font-style:normal;font-display:swap;src:url(../fonts/source-sans-3-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/montserrat-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-weight:500;font-style:normal;font-display:swap;src:url(../fonts/montserrat-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/montserrat-latin-700-normal.woff2) format("woff2")}

:root{
  --p: min(1px, calc(100vw / 1920));
  --bg:#faf9f6;
  --ink:#000;
  --blue:#1469ff;
  --teal:#008977;
  --sand:#f0ece5;
  --pill:#f4f4f4;
  --sky:#89dffc;
  --ice:#d6f7ff;
  --peach:#efc083;
  --cream:#fcead7;
  --mist:#edefef;
  --display:"Figtree","Greycliff CF",system-ui,sans-serif;
  --text:"Source Sans 3","Myriad Pro",system-ui,sans-serif;
  color-scheme: light;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--display);letter-spacing:.045em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,p{margin:0}
.u-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* anchor offset so the sticky nav doesn't cover section tops */
[id]{scroll-margin-top:calc(var(--p) * 110)}

/* ---------- Nav ---------- */
.nav{position:sticky;top:0;z-index:50;background:#fff;height:calc(var(--p)*86)}
.nav__inner{max-width:calc(var(--p)*1920);margin:0 auto;height:100%;display:flex;align-items:center;padding:0 calc(var(--p)*68) 0 calc(var(--p)*83);position:relative}
.brand{display:flex;align-items:center;gap:calc(var(--p)*10);text-decoration:none;margin-top:calc(var(--p)*-8)}
.brand img{width:calc(var(--p)*46);height:auto}
.brand span{font-weight:700;font-size:calc(var(--p)*32);letter-spacing:.03em;line-height:1}
.nav__menu{display:flex;align-items:center;margin-left:auto}
.nav__links{display:flex;align-items:center;gap:calc(var(--p)*62);list-style:none;padding:0;margin-top:0;margin-bottom:0}
.nav__links a{font-weight:700;font-size:calc(var(--p)*20);letter-spacing:.045em;text-transform:uppercase;text-decoration:none}
.nav__links a:hover{color:var(--blue)}
.nav__cta{margin-left:calc(var(--p)*98)}
.btn{letter-spacing:.04em!important;display:inline-flex;align-items:center;justify-content:center;background:#000;color:#fff;text-decoration:none;font-family:var(--display);font-weight:600;font-size:calc(var(--p)*27);letter-spacing:.02em;height:calc(var(--p)*60);transition:background .2s}
.btn:hover{background:var(--blue)}
.nav__cta .btn{width:calc(var(--p)*266)}
.nav__toggle{display:none}

.page{max-width:calc(var(--p)*1920);margin:0 auto}

/* ---------- Hero ---------- */
.hero{position:relative;height:calc(var(--p)*650);}
.hero__copy{position:absolute;left:calc(var(--p)*77);top:calc(var(--p)*(195 - 86))}
.hero h1{font-weight:700;font-size:calc(var(--p)*72);line-height:calc(var(--p)*92);letter-spacing:.045em;margin-top:calc(var(--p)*2)}
.hero__lede{font-family:var(--text);letter-spacing:0;font-size:calc(var(--p)*24);line-height:calc(var(--p)*36.3);margin-top:calc(var(--p)*16);margin-left:calc(var(--p)*-3);width:calc(var(--p)*860)}
.hero__list{list-style:none;padding:0;margin:calc(var(--p)*11) 0 0 calc(var(--p)*15);font-family:var(--text);letter-spacing:0;font-size:calc(var(--p)*24);line-height:calc(var(--p)*50)}
.hero__list li::before{content:"▪";display:inline-block;width:calc(var(--p)*18);font-size:.8em}
.hero .btn{width:calc(var(--p)*418);margin-top:calc(var(--p)*26);margin-left:calc(var(--p)*-2)}
.hero__art{position:absolute;left:calc(var(--p)*988);top:calc(var(--p)*28);width:calc(var(--p)*840);height:calc(var(--p)*622);object-fit:cover}

/* ---------- Client logos ---------- */
.logos{display:flex;justify-content:center;align-items:center;gap:calc(var(--p)*80);height:calc(var(--p)*225);padding:calc(var(--p)*8) 0 0;list-style:none;margin:0}
.logos li{display:flex;align-items:center}
.logos img{height:auto}

/* ---------- Stat strip ---------- */
.stats{display:grid;grid-template-columns:repeat(3,calc(var(--p)*504));justify-content:space-between;padding:0 calc(var(--p)*82) 0 calc(var(--p)*90);margin-top:calc(var(--p)*0)}
.stat{background:var(--sand);border-radius:calc(var(--p)*30);height:calc(var(--p)*170);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--blue);text-align:center}
.stat b{font-weight:800;font-size:calc(var(--p)*73);line-height:1;letter-spacing:0;margin-top:calc(var(--p)*-6)}
.stat span{font-weight:700;font-size:calc(var(--p)*25);letter-spacing:.03em;margin-top:calc(var(--p)*10)}

/* ---------- Approach ---------- */
.approach{padding:calc(var(--p)*117) 0 0}
.eyebrow{font-weight:700;font-size:calc(var(--p)*22.5);letter-spacing:.03em;margin-left:calc(var(--p)*90)}
.pillars{display:grid;grid-template-columns:calc(var(--p)*652) calc(var(--p)*599) calc(var(--p)*560);column-gap:0;padding-left:calc(var(--p)*88);margin-top:calc(var(--p)*44)}
.pillar img{width:calc(var(--p)*84);height:calc(var(--p)*84)}
.pillar h3{font-weight:700;font-size:calc(var(--p)*52);line-height:calc(var(--p)*71);margin-top:calc(var(--p)*19);margin-left:calc(var(--p)*4);letter-spacing:.036em}
.pillar p{font-size:calc(var(--p)*25);line-height:calc(var(--p)*36.3);margin-top:calc(var(--p)*39);margin-left:calc(var(--p)*8);max-width:calc(var(--p)*492)}
.pillar:nth-child(2) p{max-width:calc(var(--p)*470)}
.pillar:nth-child(3) p{max-width:calc(var(--p)*515)}
.pillar:nth-child(2) p{margin-left:calc(var(--p)*-33)}
.pillar:nth-child(2){margin-left:calc(var(--p)*0)}

.impact{text-align:center;padding-top:calc(var(--p)*82)}
.impact h2{font-weight:700;font-size:calc(var(--p)*72);line-height:calc(var(--p)*82);letter-spacing:.045em}
.impact p{font-size:calc(var(--p)*25);line-height:calc(var(--p)*36.3);width:calc(var(--p)*820);margin:calc(var(--p)*34) auto 0}
.levers{display:grid;grid-template-columns:calc(var(--p)*435) calc(var(--p)*449) calc(var(--p)*450) calc(var(--p)*300);padding-left:calc(var(--p)*165);margin-top:calc(var(--p)*64);text-align:left;list-style:none;padding-right:0;margin-bottom:0}
.levers li{display:flex;align-items:center;gap:calc(var(--p)*21);font-weight:700;font-size:calc(var(--p)*25);line-height:calc(var(--p)*36.3);letter-spacing:.03em}
.levers img{width:calc(var(--p)*65);height:calc(var(--p)*65);flex:none;border-radius:calc(var(--p)*14);box-shadow:0 0 0 1px rgba(0,0,0,.015)}

/* ---------- Results grid ---------- */
.results{display:grid;grid-template-columns:repeat(3,calc(var(--p)*601));column-gap:calc(var(--p)*17.5);row-gap:calc(var(--p)*28);padding-left:calc(var(--p)*37);margin-top:calc(var(--p)*42)}
.card{display:block;background:#fff;border-radius:calc(var(--p)*20);padding:calc(var(--p)*11) calc(var(--p)*11) calc(var(--p)*16);min-height:calc(var(--p)*423);text-decoration:none;color:inherit;transition:background-color .2s,transform .2s,box-shadow .2s}
a.card:hover,a.card:focus-visible{background:var(--mist);transform:translateY(calc(var(--p)*-3));box-shadow:0 calc(var(--p)*8) calc(var(--p)*24) rgba(0,0,0,.06)}
a.card:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.card__panel{position:relative;height:calc(var(--p)*249);border-radius:calc(var(--p)*16);padding:calc(var(--p)*22) calc(var(--p)*30) 0 calc(var(--p)*24)}
.card__top{display:flex;justify-content:space-between;align-items:flex-start}
.tag{display:inline-block;background:#000;color:#fff;font-family:var(--text);letter-spacing:-.012em;font-size:calc(var(--p)*24);line-height:calc(var(--p)*34);padding:0 calc(var(--p)*11);white-space:nowrap}
.card__type{font-size:calc(var(--p)*24);letter-spacing:.03em;line-height:calc(var(--p)*34);margin-top:calc(var(--p)*-1);white-space:nowrap}
.card__logo{height:auto;margin-top:calc(var(--p)*2)}
.card__num{display:block;font-weight:800;font-size:calc(var(--p)*73);line-height:calc(var(--p)*99);margin-top:calc(var(--p)*22);margin-left:calc(var(--p)*2);letter-spacing:0}
.card__label{display:block;font-weight:700;font-size:calc(var(--p)*25);letter-spacing:.03em;line-height:calc(var(--p)*34);margin-top:calc(var(--p)*-11)}
.card__desc{font-size:calc(var(--p)*25);line-height:calc(var(--p)*36.3);padding:calc(var(--p)*21) calc(var(--p)*14) 0 calc(var(--p)*10)}
.card--sky .card__panel{background:var(--sky)}
.card--peach .card__panel{background:var(--peach)}
.card--mist .card__panel{background:var(--mist)}
.card--ice .card__panel{background:var(--ice)}
.card--cream .card__panel{background:var(--cream)}
/* small per-card nudges to match the design */
.card--r2 .card__panel{padding-top:calc(var(--p)*25)}
.card--r2 .card__num{margin-top:calc(var(--p)*20)}
.card--r2 .card__desc{padding-top:calc(var(--p)*22)}
.results > .card--r3{margin-top:calc(var(--p)*8)}
.card--r3 .card__panel{padding-top:calc(var(--p)*28)}
.card--r3 .card__num{margin-top:calc(var(--p)*15)}

/* ---------- Awards ---------- */
.awards{text-align:center;padding-top:calc(var(--p)*103)}
.awards h2{font-weight:700;font-size:calc(var(--p)*72);line-height:calc(var(--p)*98);letter-spacing:.045em}
.awards ul{list-style:none;padding:0;margin:calc(var(--p)*58) 0 0;display:grid;grid-template-columns:calc(var(--p)*600) calc(var(--p)*384) calc(var(--p)*634);justify-content:start;padding-left:calc(var(--p)*134)}
.awards li{display:flex;flex-direction:column;align-items:center}
.awards .award-logo{height:calc(var(--p)*72);display:flex;align-items:flex-end}
.awards p{font-family:var(--text);letter-spacing:0!important;font-size:calc(var(--p)*26);line-height:calc(var(--p)*32);margin-top:calc(var(--p)*16);letter-spacing:-.005em}

/* ---------- Skills ---------- */
.skills{display:grid;grid-template-columns:calc(var(--p)*725) 1fr;padding:calc(var(--p)*172) calc(var(--p)*82) 0 calc(var(--p)*62)}
.skills__intro h2{font-weight:700;font-size:calc(var(--p)*48);line-height:calc(var(--p)*64);letter-spacing:.036em}
.skills__intro p{font-size:calc(var(--p)*25);line-height:calc(var(--p)*36.3);max-width:calc(var(--p)*540);margin-top:calc(var(--p)*30)}
.skills__intro .blk{height:calc(var(--p)*279)}
.skills__intro .blk:first-child{margin-top:calc(var(--p)*19)}
.skills__intro .blk:nth-child(2){height:calc(var(--p)*294)}
.skills__intro .blk:nth-child(2) p{margin-top:calc(var(--p)*7)}
.panels{display:grid;grid-template-columns:repeat(3,calc(var(--p)*326));column-gap:calc(var(--p)*36);row-gap:calc(var(--p)*35);align-content:start}
.panel{background:#fff;border-radius:calc(var(--p)*18);height:calc(var(--p)*284);padding:calc(var(--p)*30) calc(var(--p)*12) 0 calc(var(--p)*21)}
.panel h3{font-weight:700;font-size:calc(var(--p)*26);line-height:calc(var(--p)*40);margin-left:calc(var(--p)*15);letter-spacing:.012em;white-space:nowrap}
.pills{margin-top:calc(var(--p)*14);display:flex;flex-direction:column;gap:calc(var(--p)*13)}
.pills div{display:flex;gap:calc(var(--p)*10);flex-wrap:nowrap}
.pills span{display:inline-flex;align-items:center;height:calc(var(--p)*38);padding:0 calc(var(--p)*22);background:var(--pill);border-radius:999px;font-weight:700;font-size:calc(var(--p)*17);letter-spacing:.04em;white-space:nowrap}
.kpis{display:flex;gap:calc(var(--p)*30);margin:calc(var(--p)*26) 0 0 calc(var(--p)*18);color:var(--teal);font-weight:700;font-size:calc(var(--p)*17);letter-spacing:.04em}
.kpis span::before{content:"";display:inline-block;width:calc(var(--p)*7);height:calc(var(--p)*7);border-radius:50%;background:currentColor;margin-right:calc(var(--p)*8);vertical-align:middle;position:relative;top:calc(var(--p)*-1)}

/* ---------- Contact ---------- */
.contact{display:flex;justify-content:flex-start;padding-left:calc(var(--p)*427)!important;padding:calc(var(--p)*136) 0 calc(var(--p)*160)}
.contact__card{width:calc(var(--p)*988);height:calc(var(--p)*302);background:#fff;border-radius:calc(var(--p)*44);text-align:center;padding-top:calc(var(--p)*14)}
.contact h2{margin-left:calc(var(--p)*-14);font-weight:700;font-size:calc(var(--p)*72);line-height:calc(var(--p)*98);letter-spacing:.045em}
.contact p{font-size:calc(var(--p)*24);line-height:calc(var(--p)*32);margin-top:calc(var(--p)*-12);margin-left:calc(var(--p)*-44)}
.contact a{display:inline-block;margin-left:calc(var(--p)*-14);letter-spacing:.03em;color:var(--blue);text-decoration:none;font-size:calc(var(--p)*45);line-height:calc(var(--p)*61);margin-top:calc(var(--p)*36)}
.contact a:hover{text-decoration:underline}

/* ==========================================================================
   Case-study pages (keeps the original portfolio look)
   ========================================================================== */
.case-body{background:#fff}
.case-body .nav{box-shadow:0 1px 0 rgba(0,0,0,.06)}
.case{letter-spacing:0;font-family:"Montserrat",system-ui,sans-serif;font-size:20px;line-height:30px;color:#000;padding:0 20px 60px}
.case__head{max-width:800px;margin:0 auto;padding:60px 0;text-align:center}
.case__head h1{font-weight:500;font-size:50px;line-height:70px;color:#444;text-transform:uppercase}
.case__body{max-width:1134px;margin:0 auto}
.case .m-text{max-width:800px;margin:0 auto;padding-top:10px}
.case .m-text > div{padding-bottom:25px}
.case .m-text > div.sub-title{padding-bottom:10px;text-align:center;font-size:20px}
.case strong{font-weight:700}
.case .accent{color:#2247bc}
.case .ink{color:#000}
.case .lg{font-size:30px}
.case .m-image{padding-bottom:40px}
.case .m-image img{width:100%;height:auto;margin:0 auto}
.case .m-gallery{display:flex;gap:8px;padding-bottom:40px}
.case .m-gallery figure{margin:0;min-width:0}
.case .m-gallery img{width:100%;height:auto}
.case .m-tree{display:grid;gap:8px;align-items:start}
.case .m-tree .m-text{max-width:none;margin:0;padding-left:0;padding-right:0}
.case .m-tree > .m-text:first-child{padding-right:12px}
.case .m-tree > .m-text:last-child{padding-left:12px}
.case .m-gallery-stack{display:flex;flex-direction:column;gap:8px}
.case .m-gallery-stack .m-gallery{padding-bottom:0}
.case .m-gallery-stack:last-child{padding-bottom:40px}
.case .m-video{padding-bottom:40px}
.case .m-video .ratio{position:relative;padding-bottom:56.25%;height:0;max-width:1280px;margin:0 auto}
.case .m-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.case__top{display:block;text-align:center;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#444;text-decoration:none;margin:40px auto 0}
.case__top:hover{color:#2247bc}
.case__more{max-width:1134px;margin:60px auto 0;border-top:1px solid #e6e6e6;padding-top:36px;text-align:center;font-family:var(--display)}
.case__more a{font-weight:700;font-size:18px;text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:2px}
.case__more a:hover{color:var(--blue)}

/* ==========================================================================
   Mobile / tablet (below 960px): stacked layout
   ========================================================================== */
@media (max-width: 959px){
  :root{--p:1px}
  .nav{height:64px}
  .nav__inner{padding:0 16px}
  .brand{margin-top:0}
  .brand img{width:34px}
  .brand span{font-size:22px}
  .nav__toggle{display:inline-flex;margin-left:auto;align-items:center;justify-content:center;width:44px;height:44px;border:0;background:none;padding:0;cursor:pointer}
  .nav__toggle span,.nav__toggle span::before,.nav__toggle span::after{display:block;width:24px;height:2px;background:#000;position:relative;content:""}
  .nav__toggle span::before{position:absolute;top:-7px}
  .nav__toggle span::after{position:absolute;top:7px}
  .nav__menu{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;padding:8px 16px 20px;box-shadow:0 8px 16px rgba(0,0,0,.06)}
  .nav.is-open .nav__menu{display:block}
  .nav__links{flex-direction:column;align-items:flex-start;gap:0;margin:0}
  .nav__links li{width:100%}
  .nav__links a{display:block;padding:14px 0;font-size:16px}
  .nav__cta{margin:12px 0 0}
  .nav__cta .btn{width:100%;font-size:18px;height:52px}
  [id]{scroll-margin-top:76px}

  .hero{height:auto;padding:32px 16px 0;display:flex;flex-direction:column}
  .hero__copy{position:static}
  .hero h1{font-size:clamp(30px,8.6vw,44px);line-height:1.2;margin:0;letter-spacing:.03em}
  .hero__lede{width:auto;font-size:18px;line-height:27px;margin:20px 0 0}
  .hero__list{font-size:18px;line-height:36px;margin:12px 0 0 4px}
  .hero__list li::before{width:16px}
  .hero .btn{width:100%;max-width:340px;height:54px;font-size:20px;margin:24px 0 0}
  .hero__art{position:static;width:100%;height:auto;aspect-ratio:840/622;margin-top:32px}

  .logos{flex-wrap:wrap;height:auto;gap:20px 32px;padding:40px 16px 8px}
  .logos img{transform:scale(.62);transform-origin:center}
  .logos li{height:44px;justify-content:center}

  .stats{grid-template-columns:1fr;gap:12px;padding:24px 16px 0}
  .stat{height:auto;padding:22px 12px;border-radius:22px}
  .stat b{font-size:48px;margin:0}
  .stat span{font-size:18px;margin-top:6px}

  .approach{padding:64px 16px 0}
  .eyebrow{margin:0;font-size:18px}
  .pillars{grid-template-columns:1fr;row-gap:36px;padding:0;margin-top:24px}
  .pillar img{width:64px;height:64px}
  .pillar h3{font-size:36px;line-height:44px;margin:14px 0 0}
  .pillar p,.pillar:nth-child(2) p{font-size:18px;line-height:27px;margin:10px 0 0;max-width:none}

  .impact{padding:72px 16px 0}
  .impact h2{font-size:40px;line-height:46px}
  .impact p{width:auto;font-size:18px;line-height:27px;margin-top:18px}
  .levers{grid-template-columns:1fr 1fr;gap:20px 12px;padding:0;margin-top:32px;text-align:left}
  .levers li{font-size:16px;line-height:22px;gap:12px}
  .levers img{width:48px;height:48px;border-radius:10px}

  .results{grid-template-columns:1fr;row-gap:16px;padding:0 16px;margin-top:48px}
  .card{height:auto;padding:10px 10px 22px;border-radius:20px}
  .card__panel{height:auto;padding:18px 18px 20px;border-radius:14px}
  .card--r2 .card__panel,.card--r3 .card__panel{padding-top:18px}
  .tag{font-size:16px;line-height:26px;padding:0 9px}
  .card__type{font-size:16px;line-height:26px;margin-left:10px;text-align:right}
  .card__logo{max-height:28px;width:auto!important}
  .card__num,.card--r2 .card__num,.card--r3 .card__num{font-size:52px;line-height:64px;margin-top:14px}
  .card__label{font-size:19px;line-height:26px;margin-top:-4px}
  .card__desc,.card--r2 .card__desc{font-size:18px;line-height:27px;padding:16px 8px 0}

  .awards{padding:80px 16px 0}
  .awards h2{font-size:40px;line-height:46px}
  .awards ul{grid-template-columns:1fr;row-gap:36px;padding:0;margin-top:36px}
  .awards .award-logo{height:auto}
  .awards .award-logo img{transform:scale(.8)}
  .awards p{font-size:19px;line-height:24px;margin-top:10px}

  .skills{grid-template-columns:1fr;padding:80px 16px 0}
  .skills__intro .blk,.skills__intro .blk:first-child,.skills__intro .blk:nth-child(2){height:auto;margin:0 0 28px}
  .skills__intro h2{font-size:30px;line-height:38px}
  .skills__intro p,.skills__intro .blk:nth-child(2) p{font-size:18px;line-height:27px;margin-top:8px;max-width:none}
  .panels{grid-template-columns:1fr;row-gap:14px;margin-top:12px}
  .panel{height:auto;padding:22px 18px 22px;border-radius:18px}
  .panel h3{font-size:22px;line-height:30px;margin-left:2px;white-space:normal}
  .pills{margin-top:12px;gap:10px}
  .pills div{gap:8px;flex-wrap:wrap}
  .pills span{height:34px;padding:0 16px;font-size:15px}
  .kpis{margin:16px 0 0 4px;font-size:15px;gap:20px}
  .kpis span::before{width:6px;height:6px;margin-right:7px}

  .contact{padding:72px 16px 80px!important;justify-content:center}
  .contact__card{width:100%;height:auto;margin:0;padding:32px 16px 36px;border-radius:28px}
  .contact h2{margin-left:0;font-size:44px;line-height:52px}
  .contact p{font-size:18px;line-height:26px;margin:6px 0 0}
  .contact a{font-size:clamp(20px,6.4vw,30px);line-height:1.3;margin-top:22px;word-break:break-word}

  .case{font-size:17px;line-height:26px;padding:0 16px 48px}
  .case__head{padding:40px 0 32px}
  .case__head h1{font-size:30px;line-height:40px}
  .case .lg{font-size:24px}
  .case .m-tree{grid-template-columns:1fr!important}
  .case .m-tree > .m-text:first-child,.case .m-tree > .m-text:last-child{padding-left:0;padding-right:0}
  .case .m-tree > .m-image{padding-bottom:24px}
  .case .m-gallery{flex-wrap:wrap}
  .case .m-gallery:not(.m-gallery--row) figure{flex:1 1 100%!important}
  .case .m-image,.case .m-gallery,.case .m-video{padding-bottom:24px}
  .case .m-text > div{padding-bottom:18px}
}
@media (max-width: 380px){
  .levers{grid-template-columns:1fr}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .card{transition:none}
}
