
:root{
  --ink:#011F3E; --text:#23374F; --muted:#5A6A7C;
  --paper:#FFFFFF; --wash:#F2F4F7; --line:#D8DEE5; --on-ink:#F4F1EA; --on-ink-muted:#B9C4D1;
  --serif:"Source Serif 4", Georgia, "Times New Roman", serif;
  --sans:"Source Sans 3", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --s1:8px; --s2:16px; --s3:24px; --s4:40px; --s5:64px; --s6:96px;
  --wrap:1320px; --gutter:clamp(20px,4vw,56px);
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme:dark){ :root:not([data-theme="light"]){ } }
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:env(safe-area-inset-top,0px); -webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--text);font:400 18px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}

/* nav */
.site-nav{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:env(safe-area-inset-top,0px);z-index:20}
.site-nav .wrap{display:flex;align-items:center;justify-content:space-between;height:76px}
.wordmark{color:var(--ink);display:block;line-height:0}
.wordmark .logo{height:22px;width:auto}
.nav-links{display:flex;align-items:center;gap:36px;font:500 16px/1 var(--sans);color:var(--ink)}
.nav-links > a,.nav-dropdown-toggle{text-decoration:none;padding:10px 0;border-bottom:2px solid transparent}
.nav-links > a:hover,.nav-dropdown-toggle:hover{border-bottom-color:var(--line)}
.nav-links [aria-current="page"]{border-bottom-color:var(--ink)}
.nav-item-dropdown{position:relative}
.nav-dropdown-toggle{background:none;border-top:0;border-left:0;border-right:0;font:inherit;color:inherit;cursor:pointer}
.nav-dropdown-toggle::after{content:"";display:inline-block;width:6px;height:6px;margin-left:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-3px) rotate(45deg)}
.nav-dropdown-menu{list-style:none;margin:0;padding:8px 0;position:absolute;left:-16px;top:100%;min-width:300px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 32px rgba(1,31,62,.08);display:none}
.nav-item-dropdown:hover .nav-dropdown-menu,.nav-item-dropdown:focus-within .nav-dropdown-menu{display:block}
.nav-dropdown-menu a{display:block;padding:12px 16px;text-decoration:none;font-weight:400;line-height:1.3}
.nav-dropdown-menu a:hover{background:var(--wash)}
.nav-dropdown-menu a[aria-current="page"]{font-weight:600;box-shadow:inset 3px 0 0 var(--ink)}
.nav-toggle{display:none;background:none;border:0;width:44px;height:44px;padding:0;cursor:pointer;color:var(--ink)}
.nav-toggle span{display:block;width:22px;height:1.5px;background:currentColor;margin:6px auto}
.mobile-menu{display:none}

/* page header */
.offer-header{padding:var(--s5) 0}
.offer-header .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0 32px;align-items:center}
.offer-header .title{grid-column:1 / span 6}
.crumb{display:block;font:500 15px/1.3 var(--sans);color:var(--muted);margin-bottom:var(--s3)}
.crumb a{text-decoration:none;border-bottom:1px solid var(--line)}
h1{text-wrap:balance;font:600 clamp(36px,5vw,56px)/1.08 var(--serif);color:var(--ink);letter-spacing:-.01em;margin:0}
.lead{font:400 21px/1.55 var(--sans);color:var(--text);margin:var(--s3) 0 0;max-width:34ch}
.hero-img{grid-column:7 / span 6;aspect-ratio:4/3;background:var(--wash);border:1px solid var(--line);display:flex;align-items:flex-end;padding:var(--s2);color:var(--muted);font-size:14px}

.hero-img.has-img{padding:0;border:0;background:none;overflow:hidden}
.hero-img.has-img img{width:100%;height:100%;object-fit:cover}
.sec h3{display:flex;gap:14px;align-items:baseline}
.snum{font:600 28px/1 var(--serif);color:var(--ink);min-width:20px}
/* service tabs */
.tabs-wrap{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--wash)}
.tablist{display:grid;grid-template-columns:repeat(3,1fr)}
.tab{font-size:17px;appearance:none;border:0;background:none;text-align:left;cursor:pointer;padding:20px 24px;font:500 16px/1.35 var(--sans);color:var(--muted);border-left:1px solid var(--line)}
.tab:first-child{border-left:0}
.tab:hover{color:var(--ink);background:#fff;box-shadow:inset 0 -3px 0 var(--line)}
.tab[aria-selected="true"]:hover{box-shadow:inset 0 -3px 0 var(--ink)}
.tab[aria-selected="true"]{background:#fff;color:var(--ink);font-weight:600;box-shadow:inset 0 -3px 0 var(--ink)}
.panel-head{padding:var(--s5) 0 var(--s4)}
.panel-head .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0 32px;align-items:center}
.panel-head h2{grid-column:1 / span 6;font:600 clamp(30px,3.6vw,42px)/1.12 var(--serif);color:var(--ink);margin:0;text-wrap:balance}
.panel-head .hero-img{grid-column:7 / span 6}
.panel[hidden],.svc-head[hidden]{display:none}
.panel .sec:first-of-type{border-top:0}
/* old switcher (unused) */
.switcher{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--wash)}
.switcher ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr)}
.switcher li + li{border-left:1px solid var(--line)}
.switcher a{display:block;padding:20px 24px;text-decoration:none;font:500 16px/1.35 var(--sans);color:var(--muted)}
.switcher a:hover{color:var(--ink);background:#fff}
.switcher a[aria-current="page"]{background:#fff;color:var(--ink);font-weight:600;box-shadow:inset 0 -3px 0 var(--ink)}

/* content sections */
.sec{padding:var(--s5) 0}
.sec + .sec{border-top:1px solid var(--line)}
.sec .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0 32px}
.sec h3{text-wrap:balance;grid-column:1 / span 4;font:500 26px/1.25 var(--serif);color:var(--ink);margin:0 0 var(--s2)}
.sec .body{grid-column:5 / span 7;max-width:70ch}
.body p{margin:0 0 var(--s3)}
.body p:last-child{margin-bottom:0}
.body p{font-size:19px}

/* outcome: same weight as other sections */
.outcome{padding:0;border-top:1px solid var(--line)}
.outcome .grp{display:grid;grid-template-columns:repeat(12,1fr);gap:0 32px;padding:var(--s5) 0}
.outcome .grp + .grp{border-top:1px solid var(--line)}
.outcome h2{text-wrap:balance;grid-column:1 / span 4;font:500 26px/1.25 var(--serif);color:var(--ink);margin:0 0 var(--s2);padding-right:16px}
.outcome .body{grid-column:5 / span 7;max-width:62ch}
.site-footer{border-top:1px solid var(--line)}
/* footer */
.site-footer{padding:var(--s4) 0;font-size:15px;color:var(--muted)}
.site-footer .wrap{display:flex;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}
.footer-links{display:flex;gap:var(--s3)}
.footer-links a{text-decoration:none}
.footer-links a:hover{text-decoration:underline}

/* tablet */
@media (max-width:960px){
  .nav-links{display:none}
  .nav-toggle{display:block}
  .mobile-menu.open{display:block;border-top:1px solid var(--line);background:var(--paper);padding:var(--s1) 0 var(--s2)}
  .mobile-menu a{display:block;padding:14px var(--gutter);text-decoration:none;color:var(--ink);font-size:17px}
  .mobile-menu .sub{padding-left:calc(var(--gutter) + 16px);color:var(--text);font-size:16px}
  .mobile-menu .grp-label{display:block;padding:14px var(--gutter) 4px;color:var(--muted);font-size:14px}
  .mobile-menu a[aria-current="page"]{font-weight:600;box-shadow:inset 3px 0 0 var(--ink)}
}
/* mobile */
@media (max-width:760px){
  body{font-size:17px}
  .site-nav .wrap{height:64px}
  .wordmark .logo{height:19px}
  .offer-header{padding:var(--s4) 0 var(--s4)}
  .offer-header .title,.hero-img{grid-column:1 / -1}
  .hero-img{aspect-ratio:3/2;margin-top:var(--s4)}
  .lead{font-size:19px}
  .switcher ul{grid-template-columns:1fr}
  .switcher li + li{border-left:0;border-top:1px solid var(--line)}
  .switcher a{padding:16px var(--gutter)}
  .switcher a[aria-current="page"]{box-shadow:inset 3px 0 0 var(--ink)}
  .sec{padding:var(--s4) 0}
  .sec h3,.sec .body{grid-column:1 / -1}
  .sec h3{font-size:22px}
  .tabs-wrap .wrap{padding:0}
  .tab{padding:14px 12px;font-size:14px;line-height:1.3}
  .tab:first-child{padding-left:var(--gutter)}
  .panel-head{padding:var(--s4) 0}
  .panel-head h2,.panel-head .hero-img{grid-column:1 / -1}
  .panel-head .hero-img{margin-top:var(--s3);aspect-ratio:3/2}
  .body p{font-size:17px}
  .outcome .grp{padding:var(--s4) 0}
}


/* compact one-screen layout */
.tabs-wrap{position:sticky;top:calc(76px + env(safe-area-inset-top,0px));z-index:10}
.tabs-row .tablist{flex:1}
.panel-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:0 48px;padding:var(--s4) var(--gutter) var(--s5)}
.panel-grid > *{min-width:0}
.side{grid-column:1 / span 4}
.side h1{font-size:clamp(30px,3.2vw,40px);margin:0 0 var(--s3)}
.side .hero-img{aspect-ratio:4/3;grid-column:auto;margin:0}
.blocks{grid-column:5 / span 8;display:grid;grid-template-columns:1fr 1fr;gap:var(--s4) 40px;align-content:start}
.blocks.n3{grid-template-columns:1fr}
.blk{border-top:2px solid var(--ink);padding-top:var(--s2)}
.blk h3{display:flex;gap:12px;align-items:baseline;font:500 21px/1.25 var(--serif);color:var(--ink);margin:0 0 12px;text-wrap:balance}
.blk .snum{font:600 26px/1 var(--serif);min-width:0}
.blk p{font-size:16px;line-height:1.6;margin:0 0 12px}
.blk p:last-child{margin-bottom:0}
@media (max-width:1100px){
  .panel-grid{gap:0 32px}
  .side{grid-column:1 / span 3}
  .blocks{grid-column:4 / span 9;gap:var(--s4) 28px}
  .side h1{font-size:30px}
  .blk h3{font-size:19px}
  .blk .snum{font-size:23px}
  .blk p{font-size:15.5px}
}
@media (max-width:960px){
  .tabs-wrap{top:calc(64px + env(safe-area-inset-top,0px))}
}
@media (max-width:760px){
  .panel-grid{grid-template-columns:1fr}
  .side,.blocks{grid-column:1 / -1}
  .side{display:grid;align-items:center}
  .side h1{margin:0}
  .blocks{grid-template-columns:1fr}
}
@media (max-width:760px){
  .panel-grid{padding-top:var(--s3);padding-bottom:var(--s4)}
  .side{grid-template-columns:1fr 110px;gap:16px;margin-bottom:var(--s3)}
  .side h1{font-size:28px}
  .side .hero-img{aspect-ratio:1/1}
  .blk h3{font-size:19px}
  .blocks{gap:var(--s3)}
}

/* ===== home ===== */

.pg-head{padding:var(--s5) 0 var(--s5)}
.pg-head .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0 48px;align-items:center}
.pg-head .copy{grid-column:1 / span 8}
.pg-head .copy.wide{grid-column:1 / span 9}
.pg-head .crumb{margin-bottom:var(--s2)}
.pg-head h1{font-size:clamp(32px,3.6vw,46px);line-height:1.12;margin:0 0 var(--s3)}
.pg-head p{font-size:18px;line-height:1.65;margin:0 0 var(--s2);max-width:74ch}
.pg-head p:last-child{margin-bottom:0}
.pg-head p.sub{font-size:15px;color:var(--muted)}
.pg-head .hero-img{grid-column:9 / span 4;aspect-ratio:4/3;margin:0}
.hero-img.has-img{padding:0;border:0;background:none;overflow:hidden}
.hero-img.has-img img{width:100%;height:100%;object-fit:cover}
.band{padding:var(--s5) 0;border-top:1px solid var(--line)}
.band.wash{background:var(--wash)}
.band-title{font:500 26px/1.25 var(--serif);color:var(--ink);margin:0 0 var(--s4)}
.cols{display:grid;gap:var(--s4) 40px}
.cols.c3{grid-template-columns:repeat(3,1fr)}
.cols.c4{grid-template-columns:repeat(4,1fr)}
.item{border-top:2px solid var(--ink);padding-top:var(--s2)}
.item h3{font:500 20px/1.3 var(--serif);color:var(--ink);margin:0 0 10px;text-wrap:balance}
.item p{font-size:16px;line-height:1.6;margin:0}
@media (max-width:1100px){ .cols.c4{grid-template-columns:1fr 1fr} }
@media (max-width:860px){
  .pg-head .wrap{grid-template-columns:1fr}
  .pg-head .copy,.pg-head .copy.wide,.pg-head .hero-img{grid-column:1 / -1}
  .pg-head .hero-img{margin-top:var(--s4);aspect-ratio:3/2}
  .cols.c3,.cols.c4{grid-template-columns:1fr}
  .pg-head,.band{padding:var(--s4) 0}
}

.sit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.sit{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-top:2px solid var(--ink);padding:var(--s3);text-decoration:none;color:var(--text);transition:box-shadow .15s ease,transform .15s ease}
.sit:hover{box-shadow:0 10px 28px rgba(1,31,62,.10);transform:translateY(-2px)}
.sit .head{display:flex;gap:12px;align-items:baseline;margin:0 0 12px}
.sit .snum{font:600 26px/1 var(--serif);color:var(--ink)}
.sit h2{font:500 20px/1.3 var(--serif);color:var(--ink);margin:0}
.sit p{font-size:16px;line-height:1.6;margin:0 0 var(--s3)}
.sit .go{margin-top:auto;font:600 16px/1.3 var(--sans);color:var(--ink);border-top:1px solid var(--line);padding-top:var(--s2)}
.sit .go span{display:inline-block;transition:transform .15s ease}
.sit:hover .go span{transform:translateX(4px)}
@media (max-width:960px){ .sit-grid{grid-template-columns:1fr} }


/* ===== market-signals ===== */

.pg-head{padding:var(--s5) 0 var(--s5)}
.pg-head .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0 48px;align-items:center}
.pg-head .copy{grid-column:1 / span 8}
.pg-head .copy.wide{grid-column:1 / span 9}
.pg-head .crumb{margin-bottom:var(--s2)}
.pg-head h1{font-size:clamp(32px,3.6vw,46px);line-height:1.12;margin:0 0 var(--s3)}
.pg-head p{font-size:18px;line-height:1.65;margin:0 0 var(--s2);max-width:74ch}
.pg-head p:last-child{margin-bottom:0}
.pg-head p.sub{font-size:15px;color:var(--muted)}
.pg-head .hero-img{grid-column:9 / span 4;aspect-ratio:4/3;margin:0}
.hero-img.has-img{padding:0;border:0;background:none;overflow:hidden}
.hero-img.has-img img{width:100%;height:100%;object-fit:cover}
.band{padding:var(--s5) 0;border-top:1px solid var(--line)}
.band.wash{background:var(--wash)}
.band-title{font:500 26px/1.25 var(--serif);color:var(--ink);margin:0 0 var(--s4)}
.cols{display:grid;gap:var(--s4) 40px}
.cols.c3{grid-template-columns:repeat(3,1fr)}
.cols.c4{grid-template-columns:repeat(4,1fr)}
.item{border-top:2px solid var(--ink);padding-top:var(--s2)}
.item h3{font:500 20px/1.3 var(--serif);color:var(--ink);margin:0 0 10px;text-wrap:balance}
.item p{font-size:16px;line-height:1.6;margin:0}
@media (max-width:1100px){ .cols.c4{grid-template-columns:1fr 1fr} }
@media (max-width:860px){
  .pg-head .wrap{grid-template-columns:1fr}
  .pg-head .copy,.pg-head .copy.wide,.pg-head .hero-img{grid-column:1 / -1}
  .pg-head .hero-img{margin-top:var(--s4);aspect-ratio:3/2}
  .cols.c3,.cols.c4{grid-template-columns:1fr}
  .pg-head,.band{padding:var(--s4) 0}
}

.signal{padding:var(--s5) 0;border-top:1px solid var(--line)}
.signal .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0 48px}
.signal .lhs{grid-column:1 / span 5}
.signal .snum{display:block;font:600 30px/1 var(--serif);color:var(--ink);margin:0 0 var(--s2)}
.signal h2{font:500 26px/1.3 var(--serif);color:var(--ink);margin:0;text-wrap:balance}
.signal .rhs{grid-column:7 / span 6}
.signal .rhs p{font-size:17px;line-height:1.65;margin:0 0 var(--s2)}
.source{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:var(--s3);padding-top:var(--s2);border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.source a{font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap}
.source a span{display:inline-block;transition:transform .15s}
.source a:hover span{transform:translateX(4px)}
@media (max-width:860px){
  .signal .wrap{grid-template-columns:1fr}
  .signal .lhs,.signal .rhs{grid-column:1 / -1}
  .signal .lhs{margin-bottom:var(--s3)}
  .signal{padding:var(--s4) 0}
  .signal h2{font-size:23px}
}


/* ===== about ===== */

.pg-head{padding:var(--s5) 0 var(--s5)}
.pg-head .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0 48px;align-items:center}
.pg-head .copy{grid-column:1 / span 8}
.pg-head .copy.wide{grid-column:1 / span 9}
.pg-head .crumb{margin-bottom:var(--s2)}
.pg-head h1{font-size:clamp(32px,3.6vw,46px);line-height:1.12;margin:0 0 var(--s3)}
.pg-head p{font-size:18px;line-height:1.65;margin:0 0 var(--s2);max-width:74ch}
.pg-head p:last-child{margin-bottom:0}
.pg-head p.sub{font-size:15px;color:var(--muted)}
.pg-head .hero-img{grid-column:9 / span 4;aspect-ratio:4/3;margin:0}
.hero-img.has-img{padding:0;border:0;background:none;overflow:hidden}
.hero-img.has-img img{width:100%;height:100%;object-fit:cover}
.band{padding:var(--s5) 0;border-top:1px solid var(--line)}
.band.wash{background:var(--wash)}
.band-title{font:500 26px/1.25 var(--serif);color:var(--ink);margin:0 0 var(--s4)}
.cols{display:grid;gap:var(--s4) 40px}
.cols.c3{grid-template-columns:repeat(3,1fr)}
.cols.c4{grid-template-columns:repeat(4,1fr)}
.item{border-top:2px solid var(--ink);padding-top:var(--s2)}
.item h3{font:500 20px/1.3 var(--serif);color:var(--ink);margin:0 0 10px;text-wrap:balance}
.item p{font-size:16px;line-height:1.6;margin:0}
@media (max-width:1100px){ .cols.c4{grid-template-columns:1fr 1fr} }
@media (max-width:860px){
  .pg-head .wrap{grid-template-columns:1fr}
  .pg-head .copy,.pg-head .copy.wide,.pg-head .hero-img{grid-column:1 / -1}
  .pg-head .hero-img{margin-top:var(--s4);aspect-ratio:3/2}
  .cols.c3,.cols.c4{grid-template-columns:1fr}
  .pg-head,.band{padding:var(--s4) 0}
}


/* ===== contact ===== */

.ct{padding:var(--s5) 0 var(--s6)}
.ct-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:0 48px;align-items:start}
.ct-intro{grid-column:1 / span 5;position:sticky;top:110px}
.ct-intro h1{font-size:clamp(32px,3.4vw,44px);margin:0 0 var(--s3)}
.ct-intro p{font-size:17px;line-height:1.65;margin:0 0 var(--s3)}
.ct-email a{font:600 17px/1.3 var(--sans);color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink)}
.ct-form-wrap{grid-column:7 / span 6}
.contact-form{display:grid;gap:22px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.field{margin:0;padding:0;border:0;min-width:0}
.field label,.field legend{display:block;font:600 14px/1.3 var(--sans);color:var(--ink);margin:0 0 8px;padding:0}
.req{color:#A8502E;margin-left:2px}
.field input[type=text],.field input[type=email],.field input[type=tel],.field select,.field textarea{
  width:100%;font:400 16px/1.4 var(--sans);color:var(--text);background:#fff;border:1px solid #C9D2DC;border-radius:4px;padding:11px 12px;transition:border-color .15s, box-shadow .15s}
.field textarea{resize:vertical;min-height:120px}
.field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(1,31,62,.12)}
.field input:user-invalid,.field textarea:user-invalid{border-color:#A8502E}
.choices{display:flex;flex-wrap:wrap;gap:10px}
.field .choice{display:inline-flex;align-items:center;gap:8px;border:1px solid #C9D2DC;border-radius:4px;padding:9px 14px;font:400 15px/1.2 var(--sans)!important;color:var(--text)!important;margin:0!important;cursor:pointer}
.field .choice input{accent-color:var(--ink);margin:0}
.field .choice:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.divider{border-top:1px solid var(--line);padding-top:22px;margin-top:6px}
.divider span{font:500 20px/1.3 var(--serif);color:var(--ink)}
.pv-ack{font-size:14px;line-height:1.55;color:var(--muted);margin:4px 0 0}
.pv-ack a{color:var(--ink)}
.btn{font:600 16px/1 var(--sans);color:#fff;background:var(--ink);border:0;border-radius:4px;padding:15px 34px;cursor:pointer;transition:background .15s}
.btn:hover{background:#0B3561}
.form-error{color:#A8502E;font-size:14px;margin:0}
.form-success{font:500 20px/1.4 var(--serif);color:var(--ink);border-top:2px solid var(--ink);padding-top:var(--s3)}
@media (max-width:960px){
  .ct-grid{grid-template-columns:1fr}
  .ct-intro,.ct-form-wrap{grid-column:1 / -1}
  .ct-intro{position:static;margin-bottom:var(--s4)}
}
@media (max-width:560px){ .row2{grid-template-columns:1fr} .ct{padding:var(--s4) 0} }


/* ===== privacy ===== */

.pv-head{padding:var(--s3) 0;border-bottom:1px solid var(--line)}
.pv-head h1{font-size:clamp(32px,3.4vw,44px);margin:0 0 var(--s3)}
.lang-switch{display:flex;gap:24px;font:500 15px/1 var(--sans)}
.lang-switch a{text-decoration:none;color:var(--muted);padding-bottom:6px;border-bottom:1px solid var(--line)}
.lang-switch a:hover{color:var(--ink);border-bottom-color:var(--ink)}
.pv-body{padding:var(--s5) 0}
.pv-body + .pv-body{border-top:1px solid var(--line)}
.pv-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:0 48px}
.pv-side{grid-column:1 / span 3}
.pv-lang{position:sticky;top:100px;display:block;font:500 14px/1.3 var(--sans);color:var(--muted)}
.pv-text{grid-column:4 / span 8;max-width:76ch}
.pv-text h1,.pv-text h2{font:600 clamp(30px,3vw,38px)/1.2 var(--serif);color:var(--ink);margin:0 0 12px}
.pv-text .eff{color:var(--muted);font-size:15px;margin:0 0 var(--s3)}
.pv-text .eff strong{font-weight:500}
.pv-text h3{font:500 20px/1.3 var(--serif);color:var(--ink);margin:var(--s4) 0 12px}
.pv-text p{font-size:16.5px;line-height:1.7;margin:0 0 var(--s2)}
.pv-text ul{margin:0 0 var(--s2);padding-left:20px}
.pv-text li{font-size:16.5px;line-height:1.65;margin:0 0 6px}
.pv-text a{color:var(--ink)}
@media (max-width:860px){
  .pv-grid{grid-template-columns:1fr}
  .pv-side,.pv-text{grid-column:1 / -1}
  .pv-lang{position:static;margin-bottom:12px}
  .pv-body,.pv-head{padding:var(--s4) 0}
}


/* ===== 404 ===== */

.pg-head{padding:var(--s5) 0 var(--s5)}
.pg-head .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0 48px;align-items:center}
.pg-head .copy{grid-column:1 / span 8}
.pg-head .copy.wide{grid-column:1 / span 9}
.pg-head .crumb{margin-bottom:var(--s2)}
.pg-head h1{font-size:clamp(32px,3.6vw,46px);line-height:1.12;margin:0 0 var(--s3)}
.pg-head p{font-size:18px;line-height:1.65;margin:0 0 var(--s2);max-width:74ch}
.pg-head p:last-child{margin-bottom:0}
.pg-head p.sub{font-size:15px;color:var(--muted)}
.pg-head .hero-img{grid-column:9 / span 4;aspect-ratio:4/3;margin:0}
.hero-img.has-img{padding:0;border:0;background:none;overflow:hidden}
.hero-img.has-img img{width:100%;height:100%;object-fit:cover}
.band{padding:var(--s5) 0;border-top:1px solid var(--line)}
.band.wash{background:var(--wash)}
.band-title{font:500 26px/1.25 var(--serif);color:var(--ink);margin:0 0 var(--s4)}
.cols{display:grid;gap:var(--s4) 40px}
.cols.c3{grid-template-columns:repeat(3,1fr)}
.cols.c4{grid-template-columns:repeat(4,1fr)}
.item{border-top:2px solid var(--ink);padding-top:var(--s2)}
.item h3{font:500 20px/1.3 var(--serif);color:var(--ink);margin:0 0 10px;text-wrap:balance}
.item p{font-size:16px;line-height:1.6;margin:0}
@media (max-width:1100px){ .cols.c4{grid-template-columns:1fr 1fr} }
@media (max-width:860px){
  .pg-head .wrap{grid-template-columns:1fr}
  .pg-head .copy,.pg-head .copy.wide,.pg-head .hero-img{grid-column:1 / -1}
  .pg-head .hero-img{margin-top:var(--s4);aspect-ratio:3/2}
  .cols.c3,.cols.c4{grid-template-columns:1fr}
  .pg-head,.band{padding:var(--s4) 0}
}

.nf{padding:clamp(80px,12vw,160px) 0}
.nf .crumb{margin-bottom:var(--s2)}
.nf h1{font-size:clamp(32px,3.6vw,46px);margin:0 0 var(--s3)}
.nf p{font-size:18px;line-height:1.65;margin:0 0 var(--s4);max-width:52ch}
.nf a.home{font:600 16px/1.3 var(--sans);color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:3px}


@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
