/* PolyForm public site, v3 (Figma file nCocQYNIEGdZHyxUZUi7Ly: C frames for desktop, M2 board for mobile).
   Loaded AFTER site.css. New components use their own prefixes (hm- home, rq- request is legacy and
   untouched here) so nothing in the older v1/v2 rules is reused by accident. */

:root{
  --v3-rust:#b35828; --v3-rust-lite:#e89a5e; --v3-ink:#1f2933; --v3-muted:#6b7785;
  --v3-soft:#f4f7fa; --v3-surface:#fafbfc; --v3-line:#e3eaf1; --v3-navy:#0f2030; --v3-navy-2:#0b1822;
  --v3-blue:#004b96; --v3-blue-lite:#5b9bd5; --v3-mute-dark:#9fb2c4;
  /* content edge: 112px at the 1440 frame, centred 1216px column on wider screens */
  --v3-edge:max(clamp(24px,7.778vw,112px),calc((100% - 1216px)/2));
}

/* ───────── shell: full-bleed pages, logo chips, mobile header ───────── */
#public-main.bleed{max-width:none}
.dim{display:inline-flex;align-items:center;gap:7px}
.dim::before{position:static;flex:none}
.nav-logo .nav-lockup-m,.nav-logo .nav-lockup-md{display:none}

@media (max-width:900px){
  /* Figma 235:670: a 60px header, 34px logo with 13px above and below; the Request pill and menu stay. */
  .site.cC .nav{height:60px;padding:13px 20px}
  .site.cC .nav.nav-scrolled{box-shadow:0 2px 8px rgba(0,0,0,.10)}
  .nav-inner{height:34px}
  .nav-logo .nav-lockup{display:none}
  .nav-logo .nav-lockup-m{display:block;width:128px;height:34px}
  .nav-logo .nm{display:none}
  /* 235:674: the pill is 120 wide; set it so the width does not depend on the platform's text metrics. */
  .nav .nav-mobile-request{min-width:120px;justify-content:center}
}
@media (max-width:340px){
  /* Below the 344px frame width the 34px logo, pill and menu no longer fit: keep the old 28px logo. */
  .nav-logo .nav-lockup-m{width:105.2px;height:28px}
}

/* ───────── phone Contact button (Figma 235:2, nodes 235:266/399/532) ───────── */
.pf-contact-fab{display:none}
@media (max-width:700px){
  .pf-contact-fab{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:70;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px 0 14px;border:1px solid #fff;border-radius:22px;background:var(--v3-navy);box-shadow:0 4px 12px rgba(0,0,0,.28);color:#fff;font:600 14px/normal var(--f);text-decoration:none;-webkit-tap-highlight-color:transparent}
  .pf-contact-fab svg{flex:none;width:18px;height:18px}
  .pf-contact-fab:focus-visible{outline:3px solid var(--v3-rust-lite);outline-offset:3px}
  .pf-contact-fab.is-away{visibility:hidden;opacity:0;pointer-events:none}
  body.public-menu-open .pf-contact-fab{display:none}
  /* Keyboard focus never lands under the button: focus scrolling keeps this much room at the bottom. */
  html{scroll-padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  /* Room under the footer so the button never sits on its last links. */
  .has-contact-fab .ftr{padding-bottom:calc(28px + 76px + env(safe-area-inset-bottom))}
}

/* ───────── shared v3 atoms ───────── */
.v3-band{padding:88px var(--v3-edge)}
.v3-band--paper{background:var(--v3-surface)}
.v3-band--soft{background:var(--v3-soft)}
.v3-band--white{background:#fff}
.v3-band--navy{position:relative;overflow:hidden;color:#fff;background:radial-gradient(130% 70% at 50% 0%,#173043 0%,#0f2030 48%,#0b1822 100%)}
.v3-band--flat{background:var(--v3-navy)}
.v3-eyebrow{margin:0;font:500 12px/normal var(--mono);letter-spacing:1.68px;text-transform:uppercase;color:var(--v3-rust)}
.v3-band--navy .v3-eyebrow,.v3-band--flat .v3-eyebrow{color:var(--v3-rust-lite);letter-spacing:3px;font-weight:700}
.v3-h2{margin:16px 0 0;font-size:40px;line-height:1.12;font-weight:700;color:var(--v3-ink);letter-spacing:0;max-width:900px}
.v3-h2 .accent,.v3-h2 em{color:var(--v3-rust);font-style:normal}
.v3-band--navy .v3-h2,.v3-band--flat .v3-h2{color:#fff}
.v3-band--navy .v3-h2 .accent,.v3-band--flat .v3-h2 .accent{color:var(--v3-rust-lite)}
.v3-lede{margin:16px 0 0;font-size:18px;line-height:1.5;color:var(--v3-muted);max-width:760px}
.v3-band--navy .v3-lede{color:var(--v3-mute-dark)}
.v3-grid-bg{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(91,155,213,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(91,155,213,.07) 1px,transparent 1px);background-size:40px 40px}

/* ───────── home: hero (desktop) ───────── */
.hm-hero{position:relative;overflow:hidden;min-height:640px;color:#fff;background:radial-gradient(60% 45% at 47% 43%,#173043 0%,#0f2030 50%,#0b1822 100%)}
.hm-hero-copy{position:relative;z-index:2;width:min(100% - 2*var(--v3-edge),740px);margin-left:var(--v3-edge);padding:86px 0 64px}
.hm-hero-eyebrow{margin:0;font:700 12px/normal var(--mono);letter-spacing:3px;text-transform:uppercase;color:var(--v3-rust-lite);white-space:pre-wrap}
.hm-hero h1{margin:18px 0 0;font-size:62px;line-height:1;letter-spacing:-1.8px;font-weight:700;color:#fff}
.hm-hero h1 span{color:var(--v3-rust-lite)}
.hm-hero-sub{margin:20px 0 0;max-width:560px;font-size:18px;line-height:1.5;font-weight:500;color:var(--v3-mute-dark)}
.hm-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hm-btn{display:inline-flex;align-items:center;gap:9px;padding:14px 22px;border-radius:9px;font-size:15px;font-weight:600;text-decoration:none;white-space:nowrap}
.hm-btn--primary{background:var(--v3-rust);color:#fff;box-shadow:0 6px 16px rgba(197,102,48,.28)}
.hm-btn--primary:hover{background:#a04b20}
.hm-btn--ghost{color:#fff;border:1.5px solid rgba(255,255,255,.28)}
.hm-btn--ghost:hover{border-color:rgba(255,255,255,.6)}
.hm-btn .ar{font-size:17px;line-height:1}
.hm-drop{display:inline-flex;align-items:center;gap:12px;margin-top:18px;padding:12px 16px 12px 14px;border:1.2px dashed rgba(91,155,213,.5);border-radius:10px;background:rgba(255,255,255,.04);color:var(--v3-on-dark,#f4f7fa);font-size:14px;font-weight:500;cursor:pointer;transition:background .16s,border-color .16s}
.hm-drop:hover,.hm-drop.is-over{background:rgba(91,155,213,.12);border-color:var(--v3-blue-lite)}
.hm-drop input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.hm-drop-ic{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;background:rgba(91,155,213,.16);font-weight:700;font-size:15px}
.hm-checks{display:flex;flex-wrap:wrap;gap:12px 20px;margin:28px 0 0;padding:0;list-style:none}
.hm-checks li{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#fff;white-space:nowrap}
.hm-checks svg{width:16px;height:16px;flex:none;stroke:var(--v3-rust-lite);fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.hm-stage{position:relative;z-index:1}
.hm-stage-ring{position:absolute;width:360px;height:360px;border-radius:50%;border:1px solid rgba(139,176,208,.30)}
.hm-stage img{position:absolute;width:500px;height:auto;filter:drop-shadow(0 34px 46px rgba(0,0,0,.62))}
@media (min-width:1200px){
  .hm-stage{position:absolute;left:50%;top:0;width:0;height:640px}
  .hm-stage-ring{left:210px;top:140px}
  .hm-stage img{left:140px;top:132px}
  .hm-stage .dim:nth-of-type(1){left:300px;top:78px}
  .hm-stage .dim:nth-of-type(2){left:80px;top:330px}
  .hm-stage .dim:nth-of-type(3){left:460px;top:540px}
}
@media (max-width:1199px){
  .hm-hero-copy{padding-bottom:24px}
  .hm-stage{height:420px;margin:0 auto;width:min(100%,520px)}
  .hm-stage-ring{left:80px;top:30px;width:340px;height:340px}
  .hm-stage img{left:10px;top:40px;width:min(100% - 20px,500px)}
  .hm-stage .dim{position:absolute}
  .hm-stage .dim:nth-of-type(1){left:120px;top:0}
  .hm-stage .dim:nth-of-type(2){left:0;top:200px}
  .hm-stage .dim:nth-of-type(3){right:0;bottom:30px}
}

/* ───────── home: chooser (shared by desktop and mobile) ───────── */
.hm-choose-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:40px}
.hm-choose-card{display:flex;flex-direction:column;gap:12px;padding:16px;background:#fff;border:1px solid var(--v3-line);border-radius:14px;color:var(--v3-ink);text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s}
.hm-choose-card:hover{border-color:var(--v3-blue);box-shadow:0 12px 24px rgba(15,32,48,.1);transform:translateY(-2px)}
.hm-choose-card img{width:100%;height:150px;object-fit:cover;border-radius:8px}
.hm-choose-title{font-size:19px;line-height:normal;font-weight:700}
.hm-choose-copy{font-size:15px;line-height:1.45;color:var(--v3-muted)}
.hm-choose-cta{margin-top:auto;font-size:15px;font-weight:600;color:var(--v3-rust)}
.hm-choose-m{display:none}

/* ───────── home: process + what to send (shared partials, new art) ───────── */
.pf-five-step{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;margin:40px 0 0}
.pf-five-step-item{display:flex;flex-direction:column;gap:10px;min-width:0}
.pf-five-step-art{width:100%;height:132px;object-fit:cover;border-radius:12px}
.pf-five-step-number{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin:0;border-radius:50%;background:var(--v3-blue);color:#fff;font:700 17px/1 var(--f)}
.pf-five-step h3{margin:0;font-size:17px;line-height:normal;font-weight:700;color:var(--v3-ink)}
.pf-five-step p{margin:0;font-size:15px;line-height:1.45;color:var(--v3-muted)}
.pf-what-to-send{max-width:none}
.pf-what-to-send .v3-eyebrow{margin-bottom:0}
.pf-what-to-send h2{margin:16px 0 0;font-size:40px;line-height:1.12;font-weight:700;color:var(--v3-ink);max-width:900px}
.pf-what-to-send h2 .accent{color:var(--v3-rust)}
.pf-what-to-send>p{margin:16px 0 0;font-size:18px;line-height:1.5;color:var(--v3-muted);max-width:760px}
.pf-what-to-send ul{display:grid;grid-template-columns:repeat(4,minmax(0,286px));gap:20px;margin:32px 0 0}
.pf-what-to-send li{display:flex;flex-direction:column;gap:8px;padding:20px;background:#fff;border:1px solid var(--v3-line);border-radius:14px;font-size:15px;line-height:1.45;color:var(--v3-muted)}
.pf-what-to-send .pf-send-no{font:700 13px/17px var(--mono);color:var(--v3-rust)}
.pf-what-to-send .pf-send-art{width:100%;height:146px;object-fit:cover;border-radius:12px}
.pf-what-to-send li strong{display:block;margin:0;font-size:17px;line-height:21px;color:var(--v3-ink)}

/* ───────── home: against the clock ───────── */
.hm-clock{padding-block:0}
.hm-clock-in{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:48px;align-items:center;min-height:468px}
.hm-clock-big{margin-top:8px;font-size:104px;line-height:.85;font-weight:800;letter-spacing:-3px;color:#fff}
.hm-clock-big span{color:var(--v3-rust-lite)}
.hm-clock-cap{margin-top:4px;font-size:18px;font-weight:600;color:var(--v3-mute-dark)}
.hm-clock h2{margin:0;font-size:34px;line-height:1.1;font-weight:700;color:#fff;max-width:620px}
.hm-clock h2 .accent{color:var(--v3-rust-lite)}
.hm-clock p{margin:14px 0 0;max-width:46ch;font-size:18px;line-height:1.55;font-weight:500;color:var(--v3-mute-dark)}
.hm-clock-photo{width:240px;height:300px;border-radius:16px;overflow:hidden;border:1px solid #21384e;box-shadow:0 24px 50px rgba(0,0,0,.5)}
.hm-clock-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}

/* ───────── home: how a fix happens (data-driven triptych) ───────── */
.hm-story .v3-lede{font-size:17px;max-width:700px}
.hm-trip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px}
.hm-trip-cell{position:relative;aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:#0a131d;border:1px solid var(--v3-line)}
.hm-trip-cell img{width:100%;height:100%;object-fit:cover}
.hm-trip-cell.is-cad{background:#3a434d}
.hm-trip-cell.is-cad img{object-fit:contain;padding:6px}
.hm-trip-label{position:absolute;left:12px;bottom:12px;padding:5px 10px;border-radius:6px;background:rgba(8,16,23,.78);border:1px solid rgba(91,155,213,.4);font:500 12px/normal var(--mono);letter-spacing:.5px;color:#fff;text-transform:uppercase}
.hm-trip-num{position:absolute;right:12px;top:12px;padding:3px 8px;border-radius:5px;background:var(--v3-rust-lite);font:700 12px/normal var(--mono);color:#0c1622}

/* ───────── home: watch it print ───────── */
.hm-watch{padding-block:76px}
.hm-watch-in{position:relative;display:grid;grid-template-columns:300px minmax(0,1fr);gap:56px;align-items:center}
.hm-watch-media{position:relative;width:300px}
.hm-watch-media video{display:block;width:300px;height:533px;object-fit:cover;border-radius:16px;border:1px solid #21384e;box-shadow:0 30px 60px rgba(0,0,0,.55)}
.hm-watch-live{position:absolute;left:16px;bottom:14px;z-index:5;display:inline-flex;align-items:center;gap:7px;padding:5px 9px;border-radius:5px;background:rgba(8,18,27,.82);border:1px solid rgba(91,155,213,.42);font:500 11px/normal var(--mono);letter-spacing:.6px;color:#cfe0f0}
.hm-watch-live i{width:7px;height:7px;border-radius:50%;background:#36d07a;box-shadow:0 0 8px #36d07a}
.hm-ledger{display:flex;max-width:560px;margin-top:30px;border-top:1px solid rgba(159,178,196,.24);border-bottom:1px solid rgba(159,178,196,.24)}
.hm-ledger>div{flex:1;padding:20px 0;border-right:1px solid rgba(159,178,196,.16)}
.hm-ledger>div:last-child{border-right:0}
.hm-ledger .k{font:600 11px/normal var(--mono);letter-spacing:1.6px;text-transform:uppercase;color:var(--v3-mute-dark)}
.hm-ledger .v{margin-top:7px;font-size:23px;font-weight:700;letter-spacing:-.3px;color:#fff}
.hm-ledger .v em{font-style:normal;color:var(--v3-blue-lite)}
.hm-ledger.is-light{max-width:none;margin-top:auto;border-color:var(--v3-line)}
.hm-ledger.is-light>div{border-color:var(--v3-line)}
.hm-ledger.is-light .k{color:var(--v3-muted)}
.hm-ledger.is-light .v{color:var(--v3-navy)}
.hm-ledger.is-light .v em{color:var(--v3-blue)}

/* ───────── home: from the file ───────── */
.hm-file{display:grid;grid-template-columns:632px minmax(0,1fr);margin-top:40px;background:#fff;border:1px solid var(--v3-line);border-radius:16px;overflow:hidden}
.hm-file-photos{position:relative;display:grid;grid-template-columns:1fr 1fr}
.hm-file-photos figure{position:relative;margin:0;min-height:420px;background:#0a131d}
.hm-file-photos img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hm-file-photos figure+figure{border-left:1px solid rgba(255,255,255,.55)}
.hm-file-photos figcaption{position:absolute;left:12px;top:12px;padding:5px 9px;border-radius:5px;background:rgba(8,16,23,.74);font:500 11px/normal var(--mono);letter-spacing:1px;text-transform:uppercase;color:#fff}
.hm-file-body{display:flex;flex-direction:column;padding:38px 36px}
.hm-file-kicker{font:500 11px/normal var(--mono);letter-spacing:1.6px;text-transform:uppercase;color:var(--v3-rust)}
.hm-file-body h3{margin:12px 0 0;font-size:30px;line-height:1.06;letter-spacing:-.6px;font-weight:700;color:var(--v3-navy)}
.hm-file-body p{margin:14px 0 0;font-size:15.5px;line-height:1.55;color:var(--v3-muted)}

/* ───────── home: catalog (Catalog v2) ───────── */
.hm-cat-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.hm-cat-head .v3-h2{font-size:52px;line-height:1.0}
.hm-cat-more{font-size:15px;font-weight:600;color:var(--v3-rust-lite);text-decoration:none;white-space:nowrap;margin-bottom:8px}
.hm-cat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}
.hm-cat-card{position:relative;display:block;aspect-ratio:392/330;overflow:hidden;border-radius:14px;border:1px solid rgba(255,255,255,.88);background:#0b1822;color:#fff;text-decoration:none}
.hm-cat-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.hm-cat-card:hover>img{transform:scale(1.03)}
.hm-cat-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,32,48,0) 48%,rgba(15,32,48,.96) 82%)}
.hm-cat-no{position:absolute;right:14px;top:12px;z-index:2;font:400 12px/normal var(--mono);color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6)}
.hm-cat-meta{position:absolute;left:20px;right:20px;bottom:18px;z-index:2;display:grid;gap:6px}
.hm-cat-label{font:500 12px/normal var(--mono);letter-spacing:1.4px;color:#eaf1f7}
.hm-cat-blurb{font-size:14px;line-height:1.35;color:#fff}
.hm-cat-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:2px}
.hm-cat-tag{padding:3px 8px;border-radius:3px;background:var(--v3-rust-lite);font:700 11px/normal var(--mono);letter-spacing:.6px;color:#0c1622}
.hm-cat-go{font-size:14px;font-weight:600;color:var(--v3-rust-lite)}

/* ───────── home: materials, business band, closing CTA ───────── */
.hm-mats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px}
.hm-mat{padding:24px 22px;background:#fff;border:1px solid var(--v3-line);border-radius:14px}
.hm-mat .mk{padding-bottom:13px;margin-bottom:13px;border-bottom:1px solid var(--v3-line);font:600 10.5px/normal var(--mono);letter-spacing:1.6px;text-transform:uppercase;color:var(--v3-rust)}
.hm-mat h3{margin:0 0 7px;font-size:18px;font-weight:700;color:var(--v3-navy)}
.hm-mat p{margin:0;font-size:13.5px;line-height:1.5;color:var(--v3-muted)}
.hm-business{padding-block:0}
.hm-business-band{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:38px 40px;border:1px solid #21384e;border-radius:16px;background:radial-gradient(130% 140% at 16% 0%,#173043 0%,#0f2030 52%,#0b1822 100%);color:#fff}
.hm-business-band h2{margin:12px 0 0;max-width:760px;font-size:28px;line-height:1.14;font-weight:700;color:#fff}
.hm-business-band h2 .accent{color:var(--v3-rust-lite)}
.hm-business-band .v3-eyebrow{color:var(--v3-rust-lite);letter-spacing:3px;font-weight:700}
.hm-cta{padding-block:64px}
.hm-cta-card{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:44px 40px;background:#fff;border:1px solid var(--v3-line);border-radius:16px}
.hm-cta-card h2{margin:10px 0 0;font-size:38px;line-height:1.1;font-weight:700;color:var(--v3-navy)}
.hm-cta-card h2 .accent{color:var(--v3-rust)}

/* ───────── breakpoints: desktop → tablet → phone (M2) ───────── */
.hm-m{display:none}
@media (max-width:1100px){
  .hm-choose-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pf-five-step{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pf-what-to-send ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hm-clock-in{grid-template-columns:minmax(0,1fr);padding-block:56px;gap:28px;min-height:0}
  .hm-file{grid-template-columns:minmax(0,1fr)}
  .hm-mats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hm-watch-in{grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:32px}
}
@media (max-width:700px){
  .hm-d{display:none}
  .hm-m{display:block}
  .v3-band{padding:36px 24px}
  .v3-h2{font-size:24px;line-height:1.12;letter-spacing:-.3px;margin-top:12px}
  .v3-eyebrow{font-size:11px;letter-spacing:2.4px}
  .hm-choose-card{padding:0;gap:0;overflow:hidden;border-radius:12px}
  .hm-choose-card img{height:110px;border-radius:0}
  .hm-choose-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
  .hm-choose-d{display:none}
  .hm-choose-m{display:inline}
  .hm-choose-body{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:12px}
  .hm-choose-title{font-size:14px}
  .hm-choose-body{padding:12px 10px 12px 12px}
  .hm-choose-copy,.hm-choose-cta{display:none}
  .hm-choose-arrow{color:var(--v3-rust);font-size:15px}
  .hm-mats,.hm-cat-grid{grid-template-columns:1fr}
  .hm-business-band,.hm-cta-card{flex-direction:column;align-items:flex-start;padding:28px 22px}
  .hm-business{padding:0 24px 36px}
  .hm-business-band{padding:20px;gap:14px}
  .hm-business-band h2{font-size:19px}
  .hm-business-band .hm-btn,.hm-cta-card .hm-btn{width:100%;justify-content:center}
}
@media (min-width:701px){
  .hm-choose-body{display:contents}
  .hm-choose-arrow{display:none}
}


/* ───────── M2 phone home ───────── */
.hm-mhero{position:relative;overflow:hidden;background:var(--v3-navy);color:#fff;padding-top:446px}
.hm-mhero-photo{position:absolute;left:0;top:0;width:100%;height:560px;object-fit:cover;object-position:50% 40%}
.hm-mhero-photo.is-cutout{object-fit:contain;padding:80px 20px 0}
.hm-mhero-shade{position:absolute;left:0;right:0;top:0;height:560px;background:linear-gradient(180deg,rgba(15,32,48,0) 38%,rgba(15,32,48,.86) 78%,#0f2030 100%)}
.hm-mhero-chips{position:absolute;left:0;right:0;top:313px;display:grid;justify-items:start;gap:20px;padding-left:clamp(12px,calc(100% - 232px),150px)}
.hm-mhero-chips .dim{position:static;background:rgba(8,18,27,.78);border-radius:999px;padding:6px 12px;font-size:10.5px}
.hm-mhero-chips .dim:nth-child(2){margin-left:16px}
/* When the hero photo's subject is known (--fx/--fy, fractions of the image) the tags ring it instead. The
   photo is object-fit:cover in a 560px box, so its subject moves with the width; these properties redo the
   cover geometry (rendered image size, focal point in px) so the tags stay on an arc around the subject at
   every phone width. */
.hm-mhero.has-focus{container-type:inline-size;--ar:1.3333}
.has-focus .hm-mhero-chips{left:0;top:0;width:100%;height:560px;display:block;padding:0;--iw:max(100cqw,calc(560px * var(--ar)));--ih:calc(var(--iw) / var(--ar));--cx:calc(50cqw + (var(--fx) - .5) * var(--iw));--cy:calc((560px - var(--ih)) * .4 + var(--fy) * var(--ih));--r:82px}
.has-focus .hm-mhero-chips{--rcx:calc(50cqw + (var(--rx) - .5) * var(--iw));--rcy:calc((560px - var(--ih)) * .4 + var(--ry) * var(--ih))}
/* The visible ring circles the orange knob. The outer ring is concentric with it and runs through the tags;
   it is an invisible alignment guide (transparent border) and is never painted. */
.has-focus .hm-mhero-chips::before{content:"";position:absolute;left:calc(var(--rcx) - 54px);top:calc(var(--rcy) - 54px);width:108px;height:108px;border-radius:50%;border:1.5px solid rgba(255,255,255,.55);box-shadow:0 0 0 1px rgba(8,18,27,.35)}
.has-focus .hm-mhero-chips::after{content:"";position:absolute;left:calc(var(--rcx) - 168px);top:calc(var(--rcy) - 168px);width:336px;height:336px;border-radius:50%;border:1px solid transparent;pointer-events:none}
.has-focus .hm-mhero-chips .dim{position:absolute;margin:0;transform:translateY(-50%);white-space:nowrap}
/* Arc runs up and to the right of the ring. Source order is short, medium, long, so the shortest tag takes the
   lowest, rightmost slot and the longest takes the top slot, which keeps every tag inside a 344px screen. */
.has-focus .hm-mhero-chips .dim:nth-child(1){left:calc(var(--cx) + var(--r) * .998);top:calc(var(--cy) - 6px)}
.has-focus .hm-mhero-chips .dim:nth-child(2){left:calc(var(--cx) + var(--r) * .8);top:calc(var(--cy) - 50px)}
.has-focus .hm-mhero-chips .dim:nth-child(3){left:calc(var(--cx) + var(--r) * .25);top:calc(var(--cy) - 94px)}
.hm-mhero-copy{position:relative;z-index:2;padding:0 24px}
.hm-mhero-eyebrow{margin:0;font:500 11px/normal var(--mono);letter-spacing:3px;text-transform:uppercase;color:var(--v3-rust-lite)}
.hm-mhero .hm-mh1{display:block;margin:14px 0 0;font-size:40px;line-height:1.02;letter-spacing:-.8px;font-weight:700;color:#fff}
.hm-mhero .hm-mh1 span{color:var(--v3-rust-lite)}
.hm-mhero-sub{margin:16px 0 0;font-size:16px;line-height:1.45;color:#dfe7ee}
.hm-mhero-cta{display:flex;justify-content:center;align-items:center;margin-top:22px;height:55px;border-radius:12px;background:var(--v3-rust);color:#fff;font-size:17px;font-weight:700;text-decoration:none}
.hm-mhero-micro{margin:14px 0 0;font-size:12px;line-height:1.4;color:var(--v3-mute-dark)}
.hm-mstats{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);margin-top:24px;border-top:1px solid rgba(159,178,196,.24);border-bottom:1px solid rgba(159,178,196,.24)}
.hm-mstats>div{padding:18px 8px;text-align:center;border-right:1px solid rgba(159,178,196,.18)}
.hm-mstats>div:last-child{border-right:0}
.hm-mstats b{display:block;font:500 22px/1 var(--mono);color:#fff}
.hm-mstats span{display:block;margin-top:8px;font:500 10px/normal var(--mono);letter-spacing:1.4px;text-transform:uppercase;color:var(--v3-blue-lite)}

.hm-mstrip{padding-bottom:40px}
.hm-mstrip-track{display:flex;gap:12px;margin:20px -24px 0;padding:0 24px 4px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.hm-mstrip-track::-webkit-scrollbar{display:none}
.hm-mstrip-card{flex:0 0 78%;scroll-snap-align:start;overflow:hidden;border:1px solid #21384e;border-radius:16px;background:var(--v3-navy-2);color:#fff;text-decoration:none}
.hm-mstrip-photos{display:grid;grid-template-columns:1fr 1fr;height:210px}
.hm-mstrip-photos>span{position:relative;display:block;overflow:hidden}
.hm-mstrip-photos img{width:100%;height:100%;object-fit:cover}
.hm-pill{position:absolute;left:10px;top:10px;padding:4px 10px;border-radius:999px;font:500 10px/normal var(--mono);letter-spacing:1px;font-style:normal}
.hm-pill--light{background:rgba(255,255,255,.92);color:var(--v3-navy)}
.hm-pill--rust{background:var(--v3-rust);color:#fff}
.hm-mstrip-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 16px}
.hm-mstrip-meta b{font-size:15px;font-weight:600}
.hm-tag{padding:3px 8px;border-radius:4px;background:var(--v3-rust-lite);font:700 10.5px/normal var(--mono);letter-spacing:.6px;font-style:normal;color:#0c1622}

.hm-facts{margin-top:20px;padding:18px 18px 12px;border:2px solid var(--v3-ink);background:#fff;color:var(--v3-ink)}
.hm-facts-title{font-size:30px;line-height:1;font-weight:800;letter-spacing:-.6px}
.hm-facts-sub{margin-top:4px;font-size:12px;color:var(--v3-muted);border-bottom:7px solid var(--v3-ink);padding-bottom:6px}
.hm-facts dl{margin:0}
.hm-facts dl>div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #c9d2db;font-size:13px}
.hm-facts dl>div:first-child{border-bottom:2px solid var(--v3-ink)}
.hm-facts dl>div:last-child{border-bottom:7px solid var(--v3-ink)}
.hm-facts dt{font-weight:700}
.hm-facts dd{margin:0;font:500 12.5px/1.3 var(--mono);text-align:right}
.hm-facts-note{margin:8px 0 0;font-size:10.5px;color:var(--v3-muted)}

.hm-msteps ol{position:relative;margin:24px 0 0;padding:0;list-style:none;display:grid;gap:22px}
.hm-msteps ol::before{content:"";position:absolute;left:13px;top:14px;bottom:14px;width:1px;background:rgba(159,178,196,.3)}
.hm-msteps li{position:relative;display:flex;align-items:center;gap:14px}
.hm-msteps-no{position:relative;z-index:1;flex:none;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#c2602d;font:700 13px/1 var(--f);color:#fff}
.hm-msteps li img{flex:none;width:64px;height:48px;object-fit:cover;border-radius:8px}
.hm-msteps-txt{display:grid;gap:3px}
.hm-msteps-txt b{font-size:15px;font-weight:600;color:#fff}
.hm-msteps-txt span{font-size:13px;line-height:1.35;color:var(--v3-mute-dark)}

.hm-mwho ul{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.hm-mwho li{padding:9px 12px;border:1px solid var(--v3-line);border-radius:6px;background:#fff;font-size:13px;font-weight:500;color:var(--v3-ink)}

.hm-mcamera-sub{margin:10px 0 0;font-size:16px;color:var(--v3-mute-dark)}
.hm-mcamera-tile{display:grid;justify-items:center;gap:6px;margin-top:22px;padding:34px 16px;border:2px dashed rgba(232,154,94,.8);border-radius:16px;background:rgba(255,255,255,.04);color:#fff;text-align:center;cursor:pointer}
.hm-mcamera-tile input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.hm-mcamera-tile svg{width:40px;height:40px;fill:none;stroke:var(--v3-rust-lite);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.hm-mcamera-tile b{font-size:20px;font-weight:600}
.hm-mcamera-tile span{font-size:14px;color:var(--v3-mute-dark)}

@media (max-width:700px){
}

/* shared five-step list on a phone: one row per step, art left (Figma C6b mobile) */
@media (max-width:700px){
  .pf-five-step{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:20px;counter-reset:pfstep}
  .pf-five-step-item{display:grid;grid-template-columns:76px minmax(0,1fr);gap:1px 12px;padding:10px;border-radius:10px;background:#fff;counter-increment:pfstep;align-content:center}
  .pf-five-step-art{grid-row:1/4;grid-column:1;width:76px;height:56px;border-radius:8px}
  .pf-five-step-number{grid-column:2;grid-row:1;width:auto;height:auto;justify-content:flex-start;border-radius:0;background:none;font-size:0;color:var(--v3-rust)}
  .pf-five-step-number::after{content:"STEP " counter(pfstep);font:500 10px/normal var(--mono);letter-spacing:1px;color:var(--v3-rust)}
  .pf-five-step h3{grid-column:2;grid-row:2;font-size:15px}
  .pf-five-step p{grid-column:2;grid-row:3;font-size:13px;line-height:1.35}
}

.hm-seelink{display:inline-block;margin-top:24px;font-size:15px;font-weight:600;color:var(--v3-rust);text-decoration:none}
.hm-seelink:hover{text-decoration:underline}
