/* LA World Embroidery: preview build. Look = ChatGPT reference 01 (references/2026-10-15-chatgpt-homepage-01.webp). */
:root{
  --g950:#0c1a13; --g900:#0f2a1d; --g800:#123d29; --g700:#1b5a37; --g600:#22703f;
  --accent:#72c449; --accent-ink:#5fb236;
  --ink:#121614; --body:#3f4744; --muted:#69726e; --line:#e3e7e3; --soft:#f3f5f2; --white:#fff;
  --r:12px; --r-sm:8px;
  --head:"Inter",system-ui,sans-serif; --text:"Inter",system-ui,sans-serif;  /* Poppins retired 10/23 (D-017.5) */
  --wrap:1380px; --gut:32px;
  --shadow:0 1px 2px rgba(16,30,22,.06),0 6px 18px rgba(16,30,22,.07);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--body);font:15px/1.6 var(--text);overflow-x:hidden}
img,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
h1,h2,h3,h4{font-family:var(--head);color:var(--ink);margin:0;line-height:1.15}
p{margin:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.eyebrow{font:600 11.5px/1.2 var(--text);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 20px;border-radius:9px;font:600 14.5px/1 var(--head);border:1.5px solid transparent;transition:background .2s,border-color .2s,transform .2s;white-space:nowrap}
.btn .ico{width:17px;height:17px}
.btn:hover{transform:translateY(-1px)}
.btn--green{background:var(--g700);color:#fff}
.btn--green:hover{background:var(--g600)}
.btn--bright{background:var(--accent);color:var(--g950)}
.btn--bright:hover{background:#86d25f}
.btn--ghost{border-color:rgba(255,255,255,.75);color:#fff;background:rgba(0,0,0,.18)}
.btn--ghost:hover{background:rgba(255,255,255,.12)}
.btn--white{background:#fff;color:var(--g800)}
.btn--white:hover{background:#eef4ec}
.btn--line{border-color:var(--g700);color:var(--g700);background:#fff}

/* header */
.nav{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s}
.nav.scrolled{border-bottom-color:var(--line);box-shadow:0 4px 18px rgba(10,20,15,.05)}
.nav__in{display:flex;align-items:center;gap:28px;height:72px}
.nav__logo img{height:48px;width:auto}
.nav__links{display:flex;align-items:center;gap:6px;margin:0 auto;font:500 14px/1 var(--text);color:var(--ink)}
.nav__links>a,.dd>button{display:flex;align-items:center;gap:4px;padding:10px 12px;border-radius:8px;background:none;border:0;color:inherit;font:inherit}
.nav__links>a:hover,.dd>button:hover,.dd:focus-within>button{background:var(--soft)}
.dd{position:relative}
.dd .ico{width:15px;height:15px}
.dd__menu{position:absolute;top:calc(100% + 6px);left:0;min-width:240px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:8px;display:none}
.dd:hover .dd__menu,.dd:focus-within .dd__menu{display:block}
.dd__menu a{display:block;padding:9px 12px;border-radius:8px;font-size:14px}
.dd__menu a:hover{background:var(--soft);color:var(--g700)}
.dd__menu::before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}
.nav__tools{display:flex;align-items:center;gap:10px}
.icon-btn{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;border:0;background:none;color:var(--ink)}
.icon-btn:hover{background:var(--soft)}
.nav__call,.nav__menu{display:none}
.mnav{display:none}

/* category tiles */
.cats{background:var(--soft);padding:22px 0 26px}
.cats__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.cat{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.cat:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(16,30,22,.13)}
.cat img{aspect-ratio:4/3;width:100%;object-fit:cover}
.cat__b{display:flex;gap:10px;align-items:flex-start;padding:14px 14px 16px;flex:1}
.cat h3{font-size:15px;font-weight:700;line-height:1.2}
.cat p{font-size:12.5px;line-height:1.45;color:var(--muted);margin-top:6px}
.cat__go{margin-left:auto;flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:1.5px solid var(--ink);color:var(--ink);transition:background .2s,color .2s,border-color .2s}
.cat:hover .cat__go{background:var(--g700);border-color:var(--g700);color:#fff}
.cat__go .ico{width:15px;height:15px}

/* since 1994 */
.since{padding:56px 0 40px}
.since__grid{display:grid;grid-template-columns:1fr 1.25fr .95fr;gap:36px;align-items:center}
.since h2{font-size:clamp(28px,2.9vw,38px);font-weight:800;margin:12px 0 14px;letter-spacing:-.01em}
.since__txt p{font-size:15px;max-width:400px}
.since__txt .btn{margin-top:22px}
.since__img{border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}
.since__img img{width:100%;aspect-ratio:16/10;object-fit:cover}
.proofs{list-style:none;margin:0;padding:0;display:grid;gap:22px}
.proofs li{display:flex;gap:14px;align-items:flex-start}
.proofs .dot{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--g700);color:#fff;flex:none}
.proofs .dot .ico{width:21px;height:21px}
.proofs b{display:block;font:700 14.5px/1.3 var(--head);color:var(--ink)}
.proofs span{font-size:13px;color:var(--muted);line-height:1.45}

/* partner band */
.band{background:var(--g800);color:#fff}
.band__in{display:flex;align-items:center;gap:18px;min-height:76px;padding-top:14px;padding-bottom:14px}
.band__in>.ico{width:34px;height:34px;stroke-width:1.5}
.band b{display:block;font:700 17px/1.3 var(--head)}
.band span{font-size:13px;color:#cfe0d4}
.band .btn{margin-left:auto}

/* how it works */
.how{padding:44px 0 30px}
.how__grid{display:grid;grid-template-columns:.9fr 3fr;gap:30px;align-items:center}
.how h2{font-size:30px;font-weight:800;margin:10px 0 6px}
.how__lead p{font-size:13.5px;color:var(--muted)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.steps li{display:flex;gap:14px;align-items:flex-start}
.steps .dot{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--soft);color:var(--ink);flex:none}
.steps .dot .ico{width:24px;height:24px}
.steps .n{display:block;font:700 13px/1 var(--head);color:var(--accent-ink);margin-bottom:5px}
.steps b{display:block;font:700 14px/1.25 var(--head);color:var(--ink)}
.steps span{display:block;font-size:12.5px;line-height:1.45;color:var(--muted);margin-top:4px}

/* who for */
.who{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.who__in{display:flex;align-items:center;gap:26px;min-height:62px;padding-top:12px;padding-bottom:12px}
.who .eyebrow{color:var(--muted);flex:none;max-width:260px;line-height:1.5}
.who ul{list-style:none;margin:0 0 0 auto;padding:0;display:flex;flex-wrap:wrap;gap:10px 30px}
.who li{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--body)}
.who .ico{width:22px;height:22px;color:var(--muted);stroke-width:1.6}

/* section heads */
.sec{padding:64px 0}
.sec__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}
.sec__head h2{font-size:clamp(28px,2.8vw,36px);font-weight:800;letter-spacing:-.01em}
.sec__head p{margin-top:8px;color:var(--muted);font-size:15px}

/* featured work */
.work__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px 18px}
.wcard img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;box-shadow:var(--shadow);transition:transform .35s}
.wcard:hover img{transform:scale(1.02)}
.wcard h3{font-size:15px;font-weight:700;margin-top:12px}
.wcard p{font-size:13px;color:var(--muted);margin-top:3px}

/* services */
.svc{background:var(--soft)}
.svc__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}
.scard{background:#fff;border-radius:var(--r);padding:10px 10px 16px;box-shadow:var(--shadow);scroll-margin-top:96px}
.scard img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}
.scard h3{font-size:13.5px;font-weight:700;margin:12px 4px 4px;line-height:1.25}
.scard p{font-size:12px;line-height:1.45;color:var(--muted);margin:0 4px}

/* why */
.why{background:var(--g900) radial-gradient(120% 140% at 0% 0%,#174a31 0%,var(--g900) 55%);color:#fff;padding:56px 0}
.why__grid{display:grid;grid-template-columns:1fr 1.25fr;gap:56px;align-items:center}
.why h2{color:#fff;font-size:clamp(28px,2.7vw,36px);font-weight:800}
.why h3{color:#fff;font-size:18px;font-weight:600;margin:10px 0 14px}
.why p{color:#d3e0d7;max-width:470px}
.why .btn{margin-top:24px}
.why__icons{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid rgba(255,255,255,.12)}
.why__icons div{padding:20px 18px;text-align:center;border-right:1px solid rgba(255,255,255,.12)}
.why__icons div:nth-child(-n+3){border-bottom:1px solid rgba(255,255,255,.12)}
.why__icons .ico{width:32px;height:32px;margin:0 auto 10px;stroke-width:1.4;color:#fff}
.why__icons b{display:block;font:600 14px/1.3 var(--head);color:#fff}
.why__icons span{display:block;font-size:12.5px;color:#c4d4c9;margin-top:5px;line-height:1.45}

/* reviews */
.revs__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.rev{border:1px solid var(--line);border-radius:var(--r);padding:20px 20px 18px;display:flex;flex-direction:column;background:#fff}
.stars{display:flex;gap:2px;color:#f2b01e}
.stars .ico{width:17px;height:17px;fill:currentColor;stroke:none}
.rev q{display:block;margin:12px 0 16px;font-size:14px;line-height:1.55;color:var(--ink);quotes:"\201C" "\201D"}
.rev__who{display:flex;align-items:center;gap:10px;margin-top:auto}
.avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--soft);color:var(--muted)}
.avatar .ico{width:19px;height:19px}
.rev b{display:block;font:600 13.5px/1.2 var(--head);color:var(--ink)}
.rev small{font-size:12px;color:var(--muted)}
.ratings{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.ratings a{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;font-size:13px;color:var(--ink)}
.ratings a:hover{border-color:var(--g700)}
.ratings .ico{width:15px;height:15px;fill:#f2b01e;stroke:none}

/* cta */
.cta{background:var(--g950) linear-gradient(100deg,#0b1711 0%,#0f2a1d 100%);color:#fff;overflow:hidden}
.cta__in{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:40px;min-height:290px}
.cta h2{color:#fff;font-size:clamp(28px,2.8vw,38px);font-weight:800}
.cta p{color:#cfdcd3;margin-top:10px;font-size:16px}
.cta__media{justify-self:end;width:min(100%,520px);height:250px;border-radius:14px;overflow:hidden;position:relative;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.cta__media video{width:100%;height:100%;object-fit:cover;object-position:50% 78%}
.cta__media span{position:absolute;left:12px;bottom:10px;font-size:11.5px;color:#fff;background:rgba(0,0,0,.5);padding:4px 9px;border-radius:999px}

/* footer */
.foot{background:#0a120e;color:#b9c5bd;padding:52px 0 0;font-size:14px}
.foot__grid{display:grid;grid-template-columns:1.3fr 1fr 1.1fr 1.3fr;gap:34px;padding-bottom:40px}
.foot__logo{display:inline-block;background:#fff;border-radius:10px;padding:8px 12px}
.foot__logo img{height:46px;width:auto}
.foot__tag{margin-top:14px;max-width:270px;line-height:1.55}
.foot h4{color:#fff;font-size:15px;font-weight:600;margin-bottom:14px}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.foot a:hover{color:#fff}
.foot__contact li{display:flex;gap:10px;align-items:flex-start}
.foot__contact .ico{width:18px;height:18px;margin-top:2px;color:var(--accent)}
.foot__bar{border-top:1px solid rgba(255,255,255,.08);padding-top:18px;padding-bottom:26px;display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;font-size:12.5px;color:#8a978f}

/* school finder */
dialog.finder{width:min(880px,calc(100vw - 32px));max-height:min(86vh,820px);border:0;border-radius:16px;padding:0;box-shadow:0 30px 80px rgba(0,0,0,.35)}
dialog.finder::backdrop{background:rgba(8,18,12,.55)}
.finder__head{position:sticky;top:0;background:#fff;padding:20px 22px 14px;border-bottom:1px solid var(--line);z-index:1}
.finder__head h2{font-size:22px;font-weight:800}
.finder__head p{font-size:13px;color:var(--muted);margin-top:4px}
.finder__close{position:absolute;right:12px;top:12px}
.finder__search{display:flex;align-items:center;gap:10px;margin-top:14px;border:1.5px solid var(--line);border-radius:10px;padding:0 12px;height:46px}
.finder__search input{border:0;outline:0;flex:1;font:inherit;font-size:15px;min-width:0}
.finder__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;padding:16px 22px 24px}
.school{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 8px;border:1px solid var(--line);border-radius:12px;text-align:center;font-size:12.5px;line-height:1.3;color:var(--ink)}
.school:hover{border-color:var(--g700);background:#f6faf4}
.school img{width:84px;height:84px;object-fit:cover;border-radius:50%}
.school small{color:var(--muted)}
.finder__empty{padding:0 22px 24px;color:var(--muted)}

/* reveal */
.rv{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}.btn:hover,.cat:hover{transform:none}}

/* inner pages */
.phead{background:var(--g900) radial-gradient(120% 140% at 0% 0%,#174a31 0%,var(--g900) 60%);color:#fff;padding:48px 0 44px}
.phead h1{color:#fff;font-size:clamp(32px,4vw,48px);font-weight:800;margin:12px 0 10px;letter-spacing:-.01em}
.phead p{color:#d3e0d7;max-width:620px;font-size:16px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;height:38px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font:500 13.5px/1 var(--text)}
.chip:hover{border-color:var(--g700)}
.chip[aria-pressed=true],.chip.on{background:var(--g700);border-color:var(--g700);color:#fff}

/* start a project */
.start{padding:40px 0 64px;background:var(--soft)}
.start__grid{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:start}
.form{background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:28px}
.form fieldset{border:0;margin:0 0 22px;padding:0}
.form legend,.form label.l{display:block;font:600 14.5px/1.3 var(--head);color:var(--ink);margin-bottom:10px}
.form .hint{font:400 12.5px/1.4 var(--text);color:var(--muted);margin-left:6px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;margin-bottom:16px}
.field input,.field textarea,.field select{height:46px;border:1.5px solid var(--line);border-radius:10px;padding:0 12px;font:inherit;font-size:15px;color:var(--ink);background:#fff}
.field textarea{height:auto;min-height:104px;padding:10px 12px;resize:vertical}
.field input:focus,.field textarea:focus{outline:0;border-color:var(--g700);box-shadow:0 0 0 3px rgba(34,112,63,.15)}
.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:2px dashed #c8d2ca;border-radius:12px;padding:26px 16px;text-align:center;color:var(--muted);background:#fafcf9;cursor:pointer;transition:border-color .2s,background .2s}
.drop .ico{width:30px;height:30px;color:var(--g700)}
.drop b{color:var(--ink);font:600 15px/1.3 var(--head)}
.drop.over{border-color:var(--g700);background:#f1f8ee}
.files{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}
.files li{border:1px solid var(--line);border-radius:10px;padding:8px;font-size:12px;color:var(--ink);overflow:hidden}
.files img{width:100%;aspect-ratio:1;object-fit:contain;background:var(--soft);border-radius:6px;margin-bottom:6px}
.files .ext{display:grid;place-items:center;aspect-ratio:1;background:var(--soft);border-radius:6px;margin-bottom:6px;font:700 14px var(--head);color:var(--g700)}
.files span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.submit{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:6px}
.submit small{color:var(--muted);font-size:12.5px}
.side{display:grid;gap:16px}
.side__card{background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:22px}
.side__card h3{font-size:17px;font-weight:700;margin-bottom:12px}
.side__card ol{margin:0;padding-left:20px;display:grid;gap:8px;font-size:14px}
.side__card ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:14px}
.side__card ul li{display:flex;gap:10px}
.side__card .ico{color:var(--g700);margin-top:2px}
.side__card a{color:var(--g700);font-weight:600}
.done{display:none;text-align:center;padding:36px 18px}
.done .ico{width:52px;height:52px;color:var(--g700);margin:0 auto 12px;stroke-width:1.5}
.done h2{font-size:26px;font-weight:800}
.done p{max-width:480px;margin:10px auto 0}
.demo-note{margin-top:14px;font-size:12.5px;color:#7a5b12;background:#fff6dc;border:1px solid #f1df9e;border-radius:10px;padding:10px 12px;text-align:left}
.form.sent>*:not(.done){display:none}
.form.sent .done{display:block}

/* our work */
.wfilter{position:sticky;top:72px;z-index:5;background:#fff;border-bottom:1px solid var(--line);padding:12px 0}
.wall{columns:4 250px;column-gap:14px;padding:26px 0 64px}
.wall button{display:block;width:100%;margin:0 0 14px;padding:0;border:0;background:none;break-inside:avoid;border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}
.wall img{width:100%;height:auto;transition:transform .35s}
.wall button:hover img{transform:scale(1.03)}
dialog.lb{border:0;padding:0;background:transparent;max-width:min(1000px,94vw)}
dialog.lb::backdrop{background:rgba(5,10,8,.86)}
dialog.lb img{max-height:80vh;width:auto;max-width:100%;border-radius:10px;margin:0 auto}
dialog.lb p{color:#dfe7e2;font-size:13.5px;text-align:center;margin-top:10px}
dialog.lb .icon-btn{position:fixed;top:14px;right:14px;color:#fff;background:rgba(255,255,255,.12)}

/* responsive */
@media (max-width:1180px){
  .cats__grid{grid-template-columns:repeat(3,1fr)}
  .svc__grid{grid-template-columns:repeat(4,1fr)}
  .since__grid{grid-template-columns:1fr 1fr}
  .since__img{grid-row:span 2}
  .how__grid{grid-template-columns:1fr}
  .who__in{flex-direction:column;align-items:flex-start}
  .who ul{margin:0}
}
@media (max-width:980px){
  .nav__links{display:none}
  .nav__in{gap:12px}
  .nav__tools{margin-left:auto}
  .nav__call,.nav__menu{display:grid}
  .nav__start{display:none}
  .mnav{display:block;position:fixed;inset:72px 0 0;background:#fff;z-index:49;overflow:auto;padding:12px var(--gut) 40px;transform:translateX(100%);transition:transform .3s;visibility:hidden}
  .mnav.open{transform:none;visibility:visible}
  .mnav h4{font:600 12px/1 var(--text);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:22px 0 8px}
  .mnav a,.mnav button{display:block;width:100%;text-align:left;padding:12px 0;border:0;border-bottom:1px solid var(--line);background:none;font:500 16px/1.3 var(--text);color:var(--ink)}
  .mnav .btn{display:inline-flex;width:auto;margin-top:20px;border:0;color:#fff;padding:0 20px;background:var(--g700)}
  .steps{grid-template-columns:1fr 1fr}
  .work__grid{grid-template-columns:repeat(2,1fr)}
  .revs__grid{grid-template-columns:1fr 1fr}
  .why__grid{grid-template-columns:1fr;gap:34px}
  .cta__in{grid-template-columns:1fr;padding-top:44px;padding-bottom:44px;gap:28px}
  .cta__media{justify-self:stretch;width:100%}
  .foot__grid{grid-template-columns:1fr 1fr}
  .start__grid{grid-template-columns:1fr}
  .band__in{flex-wrap:wrap}
  .band .btn{margin-left:0}
}
@media (max-width:640px){
  :root{--gut:16px}
  body{font-size:15px}
  .nav__in{height:64px}
  .nav__logo img{height:40px}
  .mnav{inset:64px 0 0}
  .wfilter{top:64px}
  .btns .btn{flex:1 1 auto;justify-content:center}
  .cats__grid{grid-template-columns:1fr 1fr;gap:10px}
  .cat__b{padding:11px 11px 13px}
  .cat h3{font-size:14px}
  .cat p{display:none}
  .cat__go{width:28px;height:28px}
  .since{padding:40px 0 30px}
  .since__grid{grid-template-columns:1fr;gap:24px}
  .since__img{grid-row:auto}
  .band b{font-size:16px}
  .band .btn{width:100%;justify-content:center}
  .steps{grid-template-columns:1fr;gap:16px}
  .who ul{gap:12px 20px}
  .sec{padding:46px 0}
  .sec__head{flex-direction:column;align-items:flex-start;gap:14px}
  .work__grid{gap:18px 12px}
  .wcard h3{font-size:14px}
  .wcard p{font-size:12px}
  .svc__grid{grid-template-columns:1fr 1fr;gap:10px}
  .why{padding:44px 0}
  .why__icons{grid-template-columns:1fr 1fr}
  .why__icons div:nth-child(-n+3){border-bottom:0}
  .why__icons div:nth-child(-n+4){border-bottom:1px solid rgba(255,255,255,.12)}
  .revs__grid{grid-template-columns:1fr}
  .cta__media{height:220px}
  .foot__grid{grid-template-columns:1fr;gap:28px}
  .row2{grid-template-columns:1fr;gap:0}
  .form{padding:20px 16px}
  .wall{columns:2;column-gap:10px}
  .wall button{margin-bottom:10px}
}
.dd__menu .ddlink{display:block;width:100%;text-align:left;padding:9px 12px;border-radius:8px;border:0;background:none;font:inherit;font-size:14px;color:var(--ink)}
.dd__menu .ddlink:hover{background:var(--soft);color:var(--g700)}
.linkbtn{border:0;background:none;padding:0;font:inherit;color:inherit;cursor:pointer}
.linkbtn:hover{color:#fff}
[hidden]{display:none!important}

/* ---------- hero v2: built against David's Campus Threads reference (10/16) ---------- */
:root{--acc2:#1f9c39;--pill-dark:#0c120f}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:12px;height:56px;padding:0 30px;border-radius:999px;font:600 16px/1 var(--text);border:0;white-space:nowrap;transition:transform .2s,background .2s,box-shadow .2s}
.pill .ico{width:19px;height:19px}
.pill:hover{transform:translateY(-1px)}
.pill--dark{background:var(--pill-dark);color:#fff}
.pill--dark:hover{background:var(--g700)}
.pill--light{background:#fff;color:var(--ink);box-shadow:0 8px 24px rgba(12,18,15,.10),0 0 0 1px rgba(12,18,15,.05)}
.pill--light:hover{box-shadow:0 12px 30px rgba(12,18,15,.14),0 0 0 1px rgba(12,18,15,.08)}
.pill .play{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--pill-dark)}
.pill .play svg{width:13px;height:13px;fill:#fff;margin-left:2px}
.nav .nav__start{height:50px;padding:0 26px;font-size:15px}
.nav__search{width:50px;height:50px;border-radius:50%;background:#e9f3e8}
.nav__search:hover{background:#dcebd9}

.hero2{position:relative;background:#fff;overflow:hidden}
.hero2__in{display:grid;grid-template-columns:minmax(0,47%) minmax(0,1fr);min-height:clamp(540px,44vw,640px);padding-top:14px;padding-bottom:26px}
.hero2__copy{position:relative;z-index:2;display:flex;flex-direction:column;padding:36px 20px 0 0}
.eyebrow2{font:600 13px/1.2 var(--text);letter-spacing:.26em;text-transform:uppercase;color:var(--ink)}
.hx{font-family:"Archivo",var(--head);font-weight:900;font-stretch:72%;text-transform:uppercase;font-size:clamp(52px,7vw,102px);line-height:.88;letter-spacing:-.005em;color:#0b0f0d;margin:26px 0 32px}
.hx span{display:block}
.hx__acc{position:relative;width:max-content;max-width:100%;color:var(--acc2)}
.swoosh{position:absolute;left:44%;bottom:-17px;width:56%;height:18px;overflow:visible}
.swoosh path{fill:none;stroke:var(--acc2);stroke-width:5;stroke-linecap:round}
.swoosh path+path{stroke-width:3.5;opacity:.85}
.hx__our{position:relative}
.scrawl{position:absolute;left:calc(100% + .62em);top:.06em;width:max-content;transform:rotate(-8deg);transform-origin:0 0;color:#111;pointer-events:none;font-stretch:100%}
.scrawl__t{display:block;font:700 .225em/.86 "Caveat",cursive;text-transform:uppercase;letter-spacing:.02em}
.scrawl svg{display:block;width:.62em;height:.36em;margin:.02em 0 0 1.05em;fill:none;stroke:#111;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.hero2__sub{max-width:520px;font-size:18px;line-height:1.5;color:#262c29}
.hero2__btns{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px}
.proof2{list-style:none;margin:auto 0 0;padding:34px 0 0;display:flex;flex-wrap:wrap;row-gap:14px}
.proof2 li{display:flex;align-items:center;gap:11px;padding:0 20px;border-left:1px solid #d9dcda;font:500 13.5px/1.25 var(--text);color:#16201b}
.proof2 li:first-child{padding-left:0;border-left:0}
.proof2 .ico{width:30px;height:30px;stroke-width:1.5;color:#0b0f0d}

.hero2__art{position:relative;min-height:480px}
.canvas{position:absolute;top:0;bottom:0;left:0;right:calc(-1 * (var(--gut) + max(0px, (100vw - var(--wrap)) / 2)) - 2px);transform:skewX(-9deg);transform-origin:0 100%;border-radius:46px 0 0 26px;overflow:hidden;background:#c9d2cc;box-shadow:0 30px 60px -30px rgba(10,30,20,.35)}
.canvas__img{position:absolute;top:0;bottom:0;left:0;right:0;transform:skewX(9deg);transform-origin:0 100%}
.canvas__img img,.canvas__img video{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 50%}

.glass{position:absolute;z-index:3;background:linear-gradient(140deg,rgba(255,255,255,.80),rgba(255,255,255,.52));-webkit-backdrop-filter:blur(18px) saturate(1.6);backdrop-filter:blur(18px) saturate(1.6);border:1px solid rgba(255,255,255,.85);border-radius:24px;box-shadow:0 32px 60px -22px rgba(8,25,16,.50),0 2px 6px rgba(8,25,16,.08),inset 0 1px 0 rgba(255,255,255,.95)}
.g-trust{left:9%;top:6%;width:256px;padding:18px 20px 18px;background:linear-gradient(140deg,rgba(241,250,243,.86),rgba(222,240,228,.58));transform:perspective(1100px) rotateY(14deg) rotateZ(-4deg)}
.g-trust__top{display:flex;align-items:center;gap:14px}
.g-trust__top .ico{width:36px;height:36px;stroke-width:1.7;color:#0b0f0d}
.g-trust__top p{font:500 15px/1.15 var(--text);color:#111}
.g-trust__top b{display:block;font-size:19px;font-weight:600;margin-top:2px}
.g-trust__crests{display:flex;align-items:center;margin-top:16px}
.g-trust__crests img,.g-trust__crests button{width:46px;height:46px;border-radius:50%;border:2.5px solid #fff;margin-left:-11px;object-fit:cover;box-shadow:0 4px 10px rgba(8,25,16,.18);background:#fff}
.g-trust__crests img:first-child{margin-left:0}
.g-trust__crests button{display:grid;place-items:center;margin-left:6px;background:rgba(255,255,255,.55);border:1.5px solid rgba(12,18,15,.18);font:600 13px/1 var(--text);color:#111;cursor:pointer}
.g-review{right:calc(-1 * (var(--gut) + max(0px, (100vw - var(--wrap)) / 2)) + 28px);top:3.5%;width:268px;margin:0;padding:20px 22px 18px;transform:perspective(1100px) rotateY(-12deg) rotateZ(3deg)}
.g-review .stars .ico{width:19px;height:19px}
.g-review blockquote{margin:10px 0 16px;font:500 16px/1.4 var(--text);color:#111}
.g-review figcaption{display:flex;align-items:center;gap:12px}
.g-review__av{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--g700);color:#fff;font:700 19px/1 var(--head);box-shadow:0 0 0 3px #fff}
.g-review b{display:block;font:600 15px/1.2 var(--text);color:#111}
.g-review small{font-size:12.5px;color:#3d4542}
.g-acts{right:calc(-1 * (var(--gut) + max(0px, (100vw - var(--wrap)) / 2)) + 28px);bottom:5%;width:268px;padding:12px;display:grid;gap:10px;transform:none}
.g-acts a,.g-acts button{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;border-radius:15px;background:rgba(255,255,255,.84);border:1px solid rgba(255,255,255,.95);box-shadow:0 4px 12px rgba(8,25,16,.08);font:600 15px/1.2 var(--text);color:#111;text-align:left;transition:background .2s,transform .2s}
.g-acts a:hover,.g-acts button:hover{background:#fff;transform:translateX(3px)}
.g-acts .ico{width:23px;height:23px;stroke-width:1.7}
.g-acts span{flex:1}
.g-acts .ico:last-child{width:16px;height:16px;color:#555}

dialog.vid{border:0;padding:0;background:transparent;max-width:min(560px,92vw)}
dialog.vid::backdrop{background:rgba(5,10,8,.86)}
dialog.vid video{max-height:80vh;width:auto;max-width:100%;border-radius:14px;margin:0 auto}
dialog.vid p{color:#dfe7e2;font-size:13.5px;text-align:center;margin-top:10px}
dialog.vid .icon-btn{position:fixed;top:14px;right:14px;color:#fff;background:rgba(255,255,255,.12)}

.cats{background:#fff;padding-top:8px}

@media (max-width:1180px){
  .hero2__in{grid-template-columns:minmax(0,50%) minmax(0,1fr)}
  .g-trust{left:6%;width:230px}
  .g-review{width:232px;top:2.5%;padding:15px 16px 14px}
  .g-review blockquote{font-size:14.5px;margin:8px 0 12px}
  .g-review__av{width:38px;height:38px;font-size:16px}
  .g-acts{width:232px;bottom:3%;padding:10px;gap:8px}
  .g-acts a,.g-acts button{padding:10px 12px;font-size:14px}
  .eyebrow2{font-size:12px;letter-spacing:.17em}
  .pill{height:52px;padding:0 22px;font-size:15px}
  .hero2__btns{gap:12px}
  .proof2 li{padding:0 13px;gap:9px;font-size:12.5px}
  .proof2 .ico{width:26px;height:26px}
  .nav__links{gap:0;font-size:13.5px}
  .nav__links>a,.dd>button{padding:10px 9px;white-space:nowrap}
}
@media (max-width:980px){
  .hero2__in{grid-template-columns:1fr;min-height:0}
  .hero2__copy{padding:24px 0 0}
  .proof2{margin-top:0}
  .hero2__art{min-height:440px;margin-top:30px}
  .canvas{left:calc(-1 * var(--gut));transform:skewX(-6deg)}
  .canvas__img{transform:skewX(6deg)}
  .g-trust{left:5%;top:auto;bottom:7%}
  .g-review{right:4%;top:7%}
  .g-acts{display:none}
  .nav .nav__start{display:none}
}
@media (max-width:640px){
  .hero2__in{display:flex;flex-direction:column;padding-top:6px}
  .hero2__copy{display:contents}
  .eyebrow2{order:1;margin-top:22px;font-size:10.5px;letter-spacing:.12em;white-space:nowrap}
  .hx{order:2;font-size:clamp(44px,14.2vw,60px);margin:14px 0 22px}
  .swoosh{bottom:-13px;height:14px}
  .hero2__art{order:3;min-height:0;margin:0}
  .canvas{position:relative;height:250px;left:auto;margin-right:calc(-1 * var(--gut) - 2px);border-radius:30px 0 0 20px}
  .g-trust{left:4px;bottom:-26px;width:212px;padding:13px 14px;transform:rotate(-3deg)}
  .g-trust__top .ico{width:28px;height:28px}
  .g-trust__top p{font-size:13px}.g-trust__top b{font-size:16px}
  .g-trust__crests{margin-top:10px}
  .g-trust__crests img,.g-trust__crests button{width:36px;height:36px;margin-left:-9px}
  .g-review{display:none}
  .hero2__sub{order:4;margin-top:44px;font-size:16.5px}
  .hero2__btns{order:5;margin-top:22px;gap:10px}
  .hero2__btns .pill{flex:1 1 100%;height:54px}
  .proof2{order:6;display:grid;grid-template-columns:1fr 1fr;gap:14px 10px;padding-top:24px}
  .proof2 li,.proof2 li:first-child{padding:0;border:0}
  .nav__search{width:42px;height:42px}
}

/* ---------- catalog (10/16) ---------- */
.phead__stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.phead__stats span{display:inline-flex;gap:6px;align-items:baseline;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font-size:13.5px;color:#d3e0d7}
.phead__stats b{color:#fff;font:700 15px/1 var(--head)}
.ctools{position:sticky;top:72px;z-index:6;background:#fff;border-bottom:1px solid var(--line);padding:14px 0 12px}
.ctools__row{display:flex;gap:10px;align-items:center;margin-bottom:12px}
.csearch{flex:1;display:flex;align-items:center;gap:10px;height:48px;padding:0 16px;border:1.5px solid var(--line);border-radius:999px;background:#fff}
.csearch:focus-within{border-color:var(--g700)}
.csearch input{flex:1;min-width:0;border:0;outline:0;font:inherit;font-size:15px;background:none}
.ctools select{height:48px;padding:0 36px 0 16px;border:1.5px solid var(--line);border-radius:999px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23333' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 14px center;appearance:none;-webkit-appearance:none;font:inherit;font-size:14px;color:var(--ink);max-width:220px}
.cchips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;-webkit-mask-image:linear-gradient(90deg,#000 92%,transparent)}
.cchips::-webkit-scrollbar{display:none}
.cchips .chip{flex:none;height:36px;font-size:13px}
.cchips .chip i{font-style:normal;opacity:.55;margin-left:5px;font-size:12px}
.chip--carry{border-color:#bfe0c6;background:#f0f9f2}
.cwrap{padding-top:20px;padding-bottom:60px}
.ccount{font-size:13.5px;color:var(--muted);margin-bottom:14px;min-height:20px}
.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:22px 16px}
.ccard{display:flex;flex-direction:column;border-radius:14px;transition:transform .25s}
.ccard:hover{transform:translateY(-3px)}
.ccard__img{position:relative;display:block;aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:#f3f4f2}
.ccard__img img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;mix-blend-mode:multiply}
.carry{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;background:var(--g700);color:#fff;font:600 11.5px/1 var(--text);letter-spacing:.02em}
.carry--new{background:#0c120f}
.ccard__img .carry{position:absolute;left:10px;top:10px}
.ccard__b{display:flex;flex-direction:column;gap:3px;padding:10px 2px 0}
.ccard__b small{font-size:12px;color:var(--muted)}
.ccard__b b{font:600 14.5px/1.3 var(--text);color:var(--ink)}
.ccard__b span{font-size:12px;color:var(--muted)}
.cempty{grid-column:1/-1;padding:40px 0;color:var(--muted);text-align:center}
.cempty a{color:var(--g700);font-weight:600}
.cmore{display:flex;justify-content:center;margin-top:30px}
.csrc{margin-top:26px;font-size:12.5px;color:var(--muted);text-align:center}
.pdp-wrap{padding-top:22px;padding-bottom:64px}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:18px}
.crumbs a{color:var(--g700);font-weight:500}
.crumbs span{margin:0 6px;opacity:.5}
.pdp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.pdp__img{border-radius:18px;overflow:hidden;background:#f3f4f2;aspect-ratio:4/5;position:sticky;top:96px}
.pdp__img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.pdp__brand{font-size:13.5px;color:var(--muted);letter-spacing:.02em}
.pdp h1{font-family:"Archivo",var(--head);font-weight:900;font-stretch:80%;text-transform:uppercase;font-size:clamp(32px,3.6vw,48px);line-height:.95;margin:8px 0 16px}
.pdp__carry{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-radius:14px;background:#f0f9f2;border:1px solid #cfe8d4;margin-bottom:18px}
.pdp__carry .carry{align-self:flex-start}
.pdp__carry p{font-size:13.5px;color:#1d3a27}
.pdp__lbl{font:600 14px/1.3 var(--text);color:var(--ink);margin:18px 0 10px}
.pdp__lbl span{font-weight:400;color:var(--muted);margin-left:6px}
.swatches{display:flex;flex-wrap:wrap;gap:8px}
.sw{width:34px;height:34px;border-radius:50%;padding:2px;border:2px solid transparent;background:#fff;box-shadow:0 0 0 1px var(--line);overflow:hidden}
.sw img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.sw.on,.sw:hover{border-color:var(--g700)}
.sizes{display:flex;flex-wrap:wrap;gap:6px}
.sizes span{min-width:44px;height:34px;display:inline-grid;place-items:center;padding:0 10px;border:1.5px solid var(--line);border-radius:10px;font-size:13px;color:var(--ink)}
.pdp__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.pdp__note{font-size:12.5px;color:var(--muted);margin-top:12px}
.pdp__desc{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}
.pdp__desc summary{font:600 15px/1.3 var(--head);color:var(--ink);cursor:pointer}
.pdp__desc p{margin-top:10px;font-size:14px;line-height:1.6}
.pdp__desc ul{margin:10px 0 0;padding-left:18px;font-size:14px;display:grid;gap:4px}
.related{margin-top:56px}
.related h2{font-size:24px;font-weight:800;margin-bottom:18px}
.cgrid--row{grid-template-columns:repeat(4,1fr)}
@media (max-width:980px){
  .ctools{top:72px}
  .pdp{grid-template-columns:1fr;gap:24px}
  .pdp__img{position:relative;top:0;max-width:520px}
  .cgrid--row{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .ctools{position:static;padding:10px 0}
  .ctools__row{flex-wrap:wrap}
  .csearch{flex:1 1 100%;height:46px}
  .ctools select{flex:1 1 0;min-width:0;width:0;height:42px;max-width:none;font-size:13.5px}
  .cgrid{grid-template-columns:1fr 1fr;gap:18px 10px}
  .ccard__b b{font-size:13.5px}
  .pdp__cta .pill{flex:1 1 100%}
}

/* ---------- school stores (10/16) ---------- */
.nav__bag{position:relative}
.bagn{position:absolute;top:4px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--acc2);color:#fff;font:700 11px/18px var(--text);text-align:center}
.swrap{padding-top:28px;padding-bottom:64px}
.ssearch{max-width:520px;margin-bottom:22px}
.sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.school--big{padding:18px 10px 16px;border-radius:16px;gap:10px;transition:transform .2s,box-shadow .2s}
.school--big:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.school--big img{width:96px;height:96px}
.school--big b{font:600 14px/1.25 var(--text);color:var(--ink)}
.sadmin{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:40px;padding:22px 24px;border-radius:18px;background:var(--soft);border:1px solid var(--line)}
.sadmin b{display:block;font:700 17px/1.3 var(--head);color:var(--ink)}
.sadmin span{font-size:14px;color:var(--body)}
.sadmin a:not(.pill){color:var(--g700);font-weight:600}
.shead{background:var(--g900) radial-gradient(120% 140% at 0% 0%,#174a31 0%,var(--g900) 60%);color:#fff;padding:34px 0}
.shead__in{display:flex;align-items:center;gap:26px}
.shead__crest{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 12px 30px rgba(0,0,0,.3);flex:none;background:#fff}
.shead h1{color:#fff;font-family:"Archivo",var(--head);font-weight:900;font-stretch:78%;text-transform:uppercase;font-size:clamp(34px,4.4vw,58px);line-height:.95;margin:6px 0 14px}
.crumbs--light{color:#b9cfc0;margin:0}
.crumbs--light a{color:#fff}
.shead__chips{display:flex;flex-wrap:wrap;gap:8px}
.shead__chips span{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);font-size:13px;color:#e2ece5}
.shead__chips .ico{width:15px;height:15px}
.sgroup{font-size:22px;font-weight:800;margin:34px 0 14px}
.sgroup:first-child{margin-top:0}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:22px 16px}
.scard2{display:flex;flex-direction:column;transition:transform .25s}
.scard2:hover{transform:translateY(-3px)}
.scard2__img{display:block;aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:#fff;border:1px solid var(--line)}
.scard2__img img{width:100%;height:100%;object-fit:contain}
.scard2__b{display:flex;flex-direction:column;gap:3px;padding:10px 2px 0}
.scard2__b b{font:600 14.5px/1.3 var(--text);color:var(--ink)}
.scard2__b small{font-size:12.5px;color:var(--muted)}
.pdp__img--white{background:#fff;border:1px solid var(--line)}
.pdp__img--white img{mix-blend-mode:normal}
.pthumbs{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.pthumb{width:64px;height:80px;padding:0;border-radius:10px;overflow:hidden;border:2px solid var(--line);background:#fff}
.pthumb img{width:100%;height:100%;object-fit:contain}
.pthumb.on{border-color:var(--g700)}
.pschool{display:inline-flex;align-items:center;gap:10px;font:600 14px/1.2 var(--text);color:var(--g700)}
.pschool img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1px solid var(--line)}
.pform fieldset{border:0;margin:0 0 18px;padding:0}
.pform legend{font:600 14px/1.3 var(--text);color:var(--ink);margin-bottom:10px}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt span{display:inline-grid;place-items:center;min-width:52px;height:42px;padding:0 14px;border:1.5px solid var(--line);border-radius:12px;font-size:14px;color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s}
.opt span:hover{border-color:var(--g700)}
.opt input:checked+span{background:var(--pill-dark);border-color:var(--pill-dark);color:#fff}
.opt input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}
.qty{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:999px;overflow:hidden}
.qty button{width:44px;height:44px;border:0;background:#fff;display:grid;place-items:center;font-size:18px;color:var(--ink)}
.qty button:hover{background:var(--soft)}
.qty .ico{width:16px;height:16px}
.qty input{width:52px;height:44px;border:0;text-align:center;font:600 15px var(--text);-moz-appearance:textfield}
.qty input::-webkit-inner-spin-button{-webkit-appearance:none}
.padd{margin-top:4px}
.pform__msg{margin-top:12px;font-size:14px;min-height:20px}
.pform__msg.ok{color:var(--g700)}
.pform__msg.ok a{font-weight:700;text-decoration:underline}
.pform__msg.bad{color:#b3261e}
.pfacts{list-style:none;margin:26px 0 0;padding:18px 0 0;border-top:1px solid var(--line);display:grid;gap:14px}
.pfacts li{display:flex;gap:12px;font-size:13.5px;color:var(--body)}
.pfacts .ico{color:var(--g700);margin-top:2px}
.pfacts b{display:block;color:var(--ink);font-weight:600}
.pfacts a{color:var(--g700);font-weight:600}
.phead--slim{padding:34px 0 30px}
.bagwrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:36px;align-items:start;padding-top:30px;padding-bottom:64px}
.bag__list .ccount{margin-bottom:6px}
.bitem{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.bitem img{width:96px;height:120px;object-fit:contain;border:1px solid var(--line);border-radius:12px;background:#fff}
.bitem__b{display:flex;flex-direction:column;gap:3px;flex:1}
.bitem__b small{font-size:12.5px;color:var(--muted)}
.bitem__b b{font:600 15px/1.3 var(--text);color:var(--ink)}
.bitem__b span{font-size:13px;color:var(--body)}
.bitem__row{display:flex;align-items:center;gap:16px;margin-top:8px}
.qty--sm button{width:36px;height:36px}
.qty--sm span{min-width:30px;text-align:center;font-weight:600}
.linkx{border:0;background:none;color:#b3261e;font:500 13px var(--text);padding:0;cursor:pointer}
.bagform h2{font-size:20px;font-weight:800;margin-bottom:16px}
.bag__pickup{display:flex;gap:10px;font-size:13.5px;margin:4px 0 18px;padding:12px 14px;border-radius:12px;background:#f0f9f2;border:1px solid #cfe8d4}
.bag__pickup .ico{color:var(--g700);margin-top:2px}
.bag__pickup b{display:block}
.bag__done{grid-column:1/-1}
.done--show{display:block;text-align:center;padding:30px 10px}
@media (max-width:980px){.bagwrap{grid-template-columns:1fr}}
@media (max-width:640px){
  .shead__in{flex-direction:column;align-items:flex-start;gap:16px}
  .shead__crest{width:88px;height:88px}
  .pgrid,.sgrid{grid-template-columns:1fr 1fr;gap:16px 10px}
  .school--big img{width:76px;height:76px}
  .padd{width:100%}
  .sadmin .pill{width:100%}
}

/* ---------- Phase A: architecture pages (10/16) ---------- */
.pill--line{background:#fff;color:var(--g700);box-shadow:inset 0 0 0 1.5px var(--g700)}
.pill--line:hover{background:#f0f8f1}
.pill--ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.7)}
.pill--ghost:hover{background:rgba(255,255,255,.1)}
.pill--sm{height:40px;padding:0 16px;font-size:13.5px;gap:8px}
.pill--sm .ico{width:15px;height:15px}
.nav .nav__school{height:46px;padding:0 18px;font-size:14px}
.dd__menu .dd__all{border-top:1px solid var(--line);margin-top:6px;padding-top:11px;color:var(--g700);font-weight:600}
.mnav__acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.mnav__acts .pill{flex:1 1 100%;width:100%;height:50px;border-bottom:0!important;justify-content:center;padding:0 20px}
.mnav .mnav__acts .pill--dark{color:#fff;background:var(--pill-dark)}
.mnav .mnav__acts .pill--line{background:#fff;color:var(--g700)}
@media (max-width:1240px){.nav__links>a,.dd>button{padding:10px 8px}.nav__in{gap:16px}}
@media (max-width:1180px){.nav .nav__school{display:none}}
/* three doors (home) */
.doors{background:var(--g800)}
.doors__in{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-top:16px;padding-bottom:16px}
.door{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#fff;text-align:left;font:inherit;transition:background .2s}
.door:hover{background:rgba(255,255,255,.12)}
.door>.ico:first-child{width:30px;height:30px;stroke-width:1.5;flex:none}
.door>.ico:last-child{width:18px;height:18px;margin-left:auto;flex:none}
.door b{display:block;font:700 16px/1.25 var(--head)}
.door small{display:block;font-size:12.5px;color:#cfe0d4;margin-top:2px}
.how__more{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-weight:600;color:var(--g700);font-size:13.5px}
.how__more .ico{width:15px;height:15px}
.who li a{display:flex;align-items:center;gap:9px;color:inherit}
.who li a:hover{color:var(--g700)}
/* page hero */
.ph{background:#fff;overflow:hidden}
.ph__in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:48px;align-items:center;padding-top:40px;padding-bottom:44px}
.ph h1{font-size:clamp(38px,4.6vw,60px);font-weight:800;letter-spacing:-.02em;line-height:1.04;margin:14px 0 16px}
.ph__sub{font-size:17px;line-height:1.55;color:#2c3330;max-width:560px}
.ph__btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.ph__proof{list-style:none;margin:30px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px 28px}
.ph__proof li{display:flex;align-items:center;gap:10px;font-size:12.5px;line-height:1.35;color:var(--muted)}
.ph__proof b{display:block;color:var(--ink);font-weight:600;font-size:13px}
.ph__proof .ico{width:26px;height:26px;color:var(--g700);stroke-width:1.5}
.ph__media{position:relative}
.ph__note{position:absolute;left:-18px;top:-6px;z-index:2;font:700 21px/.92 "Caveat",cursive;text-transform:uppercase;color:#111;transform:rotate(-9deg);pointer-events:none}
.ph__note svg{display:block;width:44px;height:26px;margin:4px 0 0 20px;fill:none;stroke:#111;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.stack3{display:grid;gap:12px;margin-left:12%}
.stack3__c{position:relative;display:block;height:150px;border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
.stack3__c img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.stack3__c:hover img{transform:scale(1.04)}
.stack3__lbl{position:absolute;left:12px;bottom:12px;right:12px;display:flex;flex-direction:column;padding:10px 46px 10px 14px;border-radius:14px;background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.9)}
.stack3__lbl b{font:700 15px/1.2 var(--head);color:var(--ink)}
.stack3__lbl small{font-size:12px;color:var(--muted)}
.stack3__lbl .ico{position:absolute;right:12px;top:50%;margin-top:-14px;width:28px;height:28px;padding:6px;border-radius:50%;background:var(--g700);color:#fff}
.collage{position:relative;display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:1fr 1fr;gap:12px;height:420px}
.collage img{width:100%;height:100%;object-fit:cover;border-radius:18px;box-shadow:var(--shadow)}
.collage__a{grid-row:span 2}
/* sections */
.sec--soft{background:var(--soft)}
.sh{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:24px}
.sh h2{font-size:clamp(26px,2.8vw,36px);font-weight:800;letter-spacing:-.01em;margin-top:8px}
.sh__side{max-width:440px;font-size:14.5px;color:var(--muted)}
.igrid{display:grid;gap:16px}
.igrid--3{grid-template-columns:repeat(3,1fr)}
.igrid--4{grid-template-columns:repeat(4,1fr)}
.icard{display:grid;grid-template-columns:1fr 42%;gap:14px;padding:16px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(16,30,22,.04);transition:transform .25s,box-shadow .25s}
.icard:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.icard__t{display:flex;flex-direction:column;gap:6px}
.icard__t>.ico{width:28px;height:28px;color:var(--g700);stroke-width:1.6;margin-bottom:4px}
.icard__t b{font:700 16.5px/1.25 var(--head);color:var(--ink)}
.icard__t span{font-size:13px;line-height:1.5;color:var(--muted)}
.icard__t em{margin-top:auto;padding-top:8px;display:inline-flex;align-items:center;gap:6px;font-style:normal;font-weight:600;font-size:13.5px;color:var(--g700)}
.icard__t em .ico{width:15px;height:15px}
.icard__img{display:block;border-radius:12px;overflow:hidden;aspect-ratio:1}
.icard__img img{width:100%;height:100%;object-fit:cover}
.igrid--4 .icard{grid-template-columns:1fr;}
.igrid--4 .icard__img{aspect-ratio:16/10;order:-1}
.cmp{display:grid;grid-template-columns:.9fr 1.3fr auto 1.3fr;gap:18px;align-items:center;padding:26px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.cmp__lead h2{font-family:"Archivo",var(--head);font-weight:900;font-stretch:80%;text-transform:uppercase;font-size:clamp(26px,2.4vw,32px);line-height:1;color:var(--g800)}
.cmp__lead p{font-size:14px;color:var(--muted);margin:12px 0 18px}
.cmp__card{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:start}
.cmp__card img{width:110px;height:110px;object-fit:cover;border-radius:12px}
.cmp__card b{display:block;font:700 14.5px/1.3 var(--head);color:var(--ink);margin-bottom:8px}
.cmp__vs{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--soft);font:700 13px var(--head);color:var(--g700)}
.cmp__ideal{margin-top:10px;padding:8px 10px;border-radius:10px;background:var(--soft);font-size:12.5px;color:var(--ink)}
.cmp__ideal small{display:block;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ticks{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:13.5px;color:var(--body)}
.ticks li{position:relative;padding-left:22px}
.ticks li::before{content:"";position:absolute;left:0;top:4px;width:13px;height:7px;border-left:2px solid var(--acc2);border-bottom:2px solid var(--acc2);transform:rotate(-45deg)}
.ticks--lg{font-size:15.5px;gap:10px;margin-top:16px}
.why4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.why4>div{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:16px;background:#fff;border:1px solid var(--line)}
.why4 .ico{flex:none;width:44px;height:44px;padding:10px;border-radius:12px;background:#eaf5ec;color:var(--g700);stroke-width:1.7}
.why4 b{display:block;font:700 15px/1.3 var(--head);color:var(--ink);margin-bottom:4px}
.why4 span{font-size:13px;line-height:1.5;color:var(--muted)}
.st4{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:s}
.st4 li{position:relative;display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.st4 li+li::before{content:"";position:absolute;left:-14px;top:34px;width:12px;height:2px;background:var(--line)}
.st4__n{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--g700);color:#fff;font:700 14px var(--head)}
.st4 b{font:700 16px/1.25 var(--head);color:var(--ink)}
.st4 img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px}
.st4 span:last-child{font-size:13px;line-height:1.5;color:var(--muted)}
.ctab{background:var(--g900) radial-gradient(120% 160% at 100% 0%,#1b5a37 0%,var(--g900) 60%);color:#fff}
.ctab__in{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;padding-top:44px;padding-bottom:44px}
.ctab .eyebrow{color:#9fd59a}
.ctab h2{color:#fff;font-size:clamp(26px,3vw,38px);font-weight:800;margin:8px 0 8px}
.ctab p{color:#cfdcd3;max-width:560px}
.ctab__btns{display:flex;flex-wrap:wrap;gap:12px}
.pgrid4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.pg4{display:block;aspect-ratio:1;border-radius:14px;overflow:hidden}
.pg4 img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.pg4:hover img{transform:scale(1.04)}
.more-link{margin-top:16px;font-weight:600;color:var(--g700);font-size:14px}
.more-link a{display:inline-flex;align-items:center;gap:6px}
.more-link .ico{width:15px;height:15px}
a.more-link{display:inline-block}
.prodrow{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.prod{display:flex;flex-direction:column;gap:3px}
.prod__img{position:relative;display:block;aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:#f3f4f2;margin-bottom:6px}
.prod__img img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;mix-blend-mode:multiply}
.prod__img .carry{position:absolute;left:8px;top:8px;height:22px;font-size:10.5px;padding:0 8px}
.prod small{font-size:11.5px;color:var(--muted)}
.prod b{font:600 13.5px/1.3 var(--text);color:var(--ink)}
.chiprow{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.split h2{font-size:clamp(26px,2.8vw,36px);font-weight:800;margin:8px 0 18px}
.makes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.makes li{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;background:var(--soft);font-size:14px;color:var(--ink)}
.makes .ico{width:18px;height:18px;color:var(--acc2)}
.tips{display:grid;gap:16px;padding:22px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.tips h3,.admin h3{font-size:19px;font-weight:800;margin-bottom:12px}
.tips p{font-size:13.5px;color:var(--muted);margin-top:10px}
.tips__img{display:grid;gap:8px;justify-items:center}
.tips__img img{width:100%;border-radius:10px;border:1px solid var(--line);background:#fff}
.tips__img>span .ico{transform:rotate(90deg);color:var(--g700)}
.tips__img small{font-size:12px;color:var(--muted);text-align:center}
.tips__img--tall{padding:20px;border-radius:18px;background:var(--soft)}
.methods{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.methods>div{padding:16px;border-radius:14px;background:#fff;border:1px solid var(--line)}
.methods b{display:block;font:700 15px/1.3 var(--head);color:var(--ink);margin-bottom:6px}
.methods span{font-size:13px;line-height:1.5;color:var(--muted)}
.note-sm{margin-top:12px;font-size:13px;color:var(--muted)}
.admin{display:grid;gap:16px;padding:22px;border-radius:18px;background:#f0f9f2;border:1px solid #cfe8d4}
.admin p{font-size:14px}
.admin__btns{display:flex;flex-wrap:wrap;gap:10px}
.revs__grid--1{grid-template-columns:minmax(0,640px)}
.revs__grid--2{grid-template-columns:repeat(2,1fr)}
.revs__grid--3{grid-template-columns:repeat(3,1fr)}
.faq{display:grid;gap:10px;max-width:880px}
.faq details{border-radius:14px;background:#fff;border:1px solid var(--line);padding:0 18px}
.faq summary{list-style:none;cursor:pointer;padding:16px 28px 16px 0;position:relative;font:600 15.5px/1.35 var(--head);color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:12px;font:400 24px/1 var(--text);color:var(--g700)}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 0 16px;font-size:14.5px;color:var(--body)}
.faq a{color:var(--g700);font-weight:600}
.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.stats>div{padding:20px;border-radius:16px;background:#fff;border:1px solid var(--line);text-align:center}
.stats b{display:block;font-family:"Archivo",var(--head);font-weight:900;font-stretch:80%;font-size:clamp(30px,3vw,42px);color:var(--g700);line-height:1}
.stats span{font-size:13px;color:var(--muted)}
.visit{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.visit__c{display:flex;gap:12px;padding:18px;border-radius:16px;background:#fff;border:1px solid var(--line);font-size:14px;line-height:1.55;color:var(--body)}
.visit__c .ico{flex:none;color:var(--g700);margin-top:2px}
.visit__c b{display:block;font:700 15px/1.3 var(--head);color:var(--ink);margin-bottom:4px}
.visit__c a{color:var(--g700);font-weight:600}
.contact__acts{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}
.map{border-radius:18px;overflow:hidden;border:1px solid var(--line);height:380px}
.map iframe{width:100%;height:100%;border:0}
/* school portal */
.ssearch2{display:flex;gap:10px;margin-top:24px;padding:8px;border-radius:999px;background:#fff;box-shadow:var(--shadow);border:1px solid var(--line);max-width:560px}
.ssearch2 label{flex:1;display:flex;align-items:center;gap:10px;padding-left:12px}
.ssearch2 input{flex:1;min-width:0;border:0;outline:0;font:inherit;font-size:15.5px}
.ssearch2 .pill{height:48px}
.popular{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px}
.popular>span{font-size:13px;color:var(--muted);margin-right:4px}
.popular .chip{height:32px;font-size:12.5px}
.chip--on{background:#eaf5ec;border-color:#cfe8d4;color:var(--g700)}
.infostack{position:relative;padding-right:28%}
.infostack>img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:22px;box-shadow:var(--shadow)}
.infostack .infoc{position:absolute;right:0;width:46%;display:flex;gap:10px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow);font-size:12px;line-height:1.4;color:var(--muted)}
.infostack .infoc:nth-of-type(1){top:8%}.infostack .infoc:nth-of-type(2){top:38%}.infostack .infoc:nth-of-type(3){top:68%}
.infoc .ico{flex:none;width:30px;height:30px;padding:6px;border-radius:9px;background:#eaf5ec;color:var(--g700)}
.infoc b{display:block;font:700 13.5px/1.25 var(--head);color:var(--ink)}
.sportal{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}
.sgrid--cards{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
.school--card{padding:18px 12px;border-radius:16px;gap:8px;background:#fff}
.school--card img{width:84px;height:84px}
.school--card b{font:600 14px/1.25 var(--text);color:var(--ink)}
.school--card .pill{margin-top:6px}
.adminc{position:sticky;top:96px;display:grid;gap:12px;padding:22px;border-radius:20px;background:#f0f9f2;border:1px solid #cfe8d4}
.adminc h3{font-size:24px;font-weight:800}
.adminc p{font-size:14px}
.adminc img{width:100%;border-radius:14px;aspect-ratio:4/3;object-fit:cover}
@media (max-width:1180px){
  .igrid--4{grid-template-columns:repeat(2,1fr)}
  .prodrow{grid-template-columns:repeat(3,1fr)}
  .cmp{grid-template-columns:1fr 1fr}.cmp__lead{grid-column:1/-1}.cmp__vs{display:none}
  .stats{grid-template-columns:repeat(3,1fr)}
  .visit{grid-template-columns:1fr 1fr}
}
@media (max-width:980px){
  .ph__in{grid-template-columns:1fr;gap:30px;padding-top:28px}
  .ph__note{display:none}
  .stack3{margin-left:0;grid-template-columns:repeat(3,1fr)}
  .stack3__c{height:200px}
  .collage{height:340px}
  .igrid--3{grid-template-columns:repeat(2,1fr)}
  .why4,.st4{grid-template-columns:repeat(2,1fr)}
  .st4 li+li::before{display:none}
  .pgrid4{grid-template-columns:repeat(3,1fr)}
  .split{grid-template-columns:1fr;gap:26px}
  .sportal{grid-template-columns:1fr}
  .adminc{position:relative;top:0}
  .doors__in{grid-template-columns:1fr}
  .revs__grid--3{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .ph h1{font-size:36px}
  .ph__sub{font-size:16px}
  .ph__btns .pill{flex:1 1 100%}
  .ph__proof{display:grid;gap:10px}
  .stack3{grid-template-columns:1fr}
  .stack3__c{height:130px}
  .collage{height:260px;gap:8px}
  .sh{flex-direction:column;align-items:flex-start;gap:8px}
  .igrid--3,.igrid--4{grid-template-columns:1fr}
  .icard{grid-template-columns:1fr 38%}
  .why4,.st4{grid-template-columns:1fr}
  .pgrid4{grid-template-columns:1fr 1fr;gap:8px}
  .prodrow{grid-template-columns:1fr 1fr}
  .cmp{grid-template-columns:1fr;padding:18px}
  .cmp__card{grid-template-columns:84px 1fr}.cmp__card img{width:84px;height:84px}
  .makes{grid-template-columns:1fr}
  .methods{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr}
  .visit{grid-template-columns:1fr}
  .revs__grid--2,.revs__grid--3{grid-template-columns:1fr}
  .ssearch2 .pill{padding:0 16px}
  .infostack{padding-right:0}
  .infostack .infoc{position:relative;top:auto!important;right:auto;width:auto;margin-top:8px}
  .ctab__btns .pill{flex:1 1 100%}
}
.nav__links>a,.dd>button{white-space:nowrap}
@media (max-width:1320px){.nav__links{font-size:13.5px}.nav__links>a,.dd>button{padding:10px 7px}.nav__in{gap:14px}.nav__logo img{height:44px}.nav__tools{gap:8px}.nav .nav__school{padding:0 14px}}
.icard--cta{grid-template-columns:1fr;background:#f0f9f2;border-color:#cfe8d4;align-content:center}
.icard--cta .icard__t b{font-size:18px}

/* ---------- Phase B: product page + builder (10/16) ---------- */
.nav__proj{position:relative}
.nav__proj .ico{width:21px;height:21px}
/* product page */
.pdp2{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:44px;align-items:start}
.pgal{display:grid;grid-template-columns:72px 1fr;gap:12px}
.pgal__thumbs{display:flex;flex-direction:column;gap:8px}
.pgal__t{width:72px;height:88px;padding:0;border-radius:12px;overflow:hidden;border:2px solid var(--line);background:#f3f4f2}
.pgal__t img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;mix-blend-mode:multiply}
.pgal__t.on{border-color:var(--g700)}
.pgal .pdp__img{position:relative;top:0}
.pfacts2{grid-column:1/-1;list-style:none;margin:6px 0 0;padding:16px;border-radius:16px;background:var(--soft);display:grid;grid-template-columns:repeat(4,1fr);gap:12px;text-align:center}
.pfacts2 li{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;color:var(--muted)}
.pfacts2 .ico{width:28px;height:28px;color:var(--g700);stroke-width:1.6}
.pfacts2 b{font:600 12.5px/1.25 var(--text);color:var(--ink)}
.pdp__brand a{color:var(--g700);font-weight:600}
.pdp__meta{font-size:13.5px;color:var(--muted);display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:-6px}
.pdp__meta span:not(.carry){opacity:.5}
.pdp__lead{margin-top:14px;font-size:15px;line-height:1.55}
.pspecs{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pspecs li{padding:7px 12px;border-radius:999px;background:var(--soft);font-size:12.5px;color:var(--ink)}
.pdp__used{margin-top:12px;font-size:13px;color:#1d3a27;background:#f0f9f2;border:1px solid #cfe8d4;border-radius:10px;padding:8px 12px}
.pdp__cmp{float:right;font-weight:600;color:var(--g700);font-size:13px}
.sizes--pick button{min-width:46px;height:38px;padding:0 10px;border:1.5px solid var(--line);border-radius:10px;background:#fff;font:500 13px var(--text);color:var(--ink)}
.sizes--pick button[aria-pressed=true],.places button[aria-pressed=true]{background:var(--pill-dark);border-color:var(--pill-dark);color:#fff}
.meth{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.meth button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:14px;border:1.5px solid var(--line);border-radius:14px;background:#fff;text-align:left;font:inherit;transition:border-color .15s,background .15s}
.meth button:hover{border-color:var(--g700)}
.meth button[aria-pressed=true]{border-color:var(--g700);background:#f0f9f2;box-shadow:inset 0 0 0 1px var(--g700)}
.meth .ico{width:24px;height:24px;color:var(--g700);margin-bottom:4px}
.meth b{font:700 14.5px/1.2 var(--head);color:var(--ink)}
.meth span{font-size:12px;color:var(--muted)}
.places{display:flex;flex-wrap:wrap;gap:8px}
.places button{height:38px;padding:0 14px;border:1.5px solid var(--line);border-radius:999px;background:#fff;font:500 13px var(--text);color:var(--ink)}
.pdp__note.ok{color:var(--g700)}
.pdp__note.ok a{font-weight:700;text-decoration:underline}
.ptabs{margin-top:44px;border-top:1px solid var(--line)}
.ptabs__bar{display:flex;gap:6px;overflow-x:auto;border-bottom:1px solid var(--line)}
.ptabs__bar button{height:48px;padding:0 16px;border:0;background:none;font:600 14px var(--text);color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}
.ptabs__bar button[aria-selected=true]{color:var(--g700);border-bottom-color:var(--g700)}
.ptabs__grid{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:28px;padding-top:24px}
.ptab h2{font-size:22px;font-weight:800;margin-bottom:10px}
.ptab p{font-size:14px;line-height:1.6;margin-bottom:10px}
.ptab ul{padding-left:18px;font-size:14px;display:grid;gap:4px}
.ptab a{color:var(--g700);font-weight:600}
.puses h3,.phelp h3{font-size:18px;font-weight:800;margin-bottom:12px}
.puses a{display:block;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--ink)}
.puses a:hover{color:var(--g700)}
.phelp{display:grid;gap:10px;align-content:start;padding:20px;border-radius:18px;background:#f0f9f2;border:1px solid #cfe8d4}
.phelp p{font-size:14px}
.phelp .pill{justify-self:start}
.phelp__mail{font-size:13.5px;color:var(--g700);font-weight:600}
.pbar{position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -6px 20px rgba(10,20,15,.06)}
.pbar__in{display:flex;align-items:center;gap:12px;height:68px}
.pbar__in img{width:44px;height:55px;object-fit:cover;border-radius:8px;background:#f3f4f2}
.pbar__in>div{flex:1;min-width:0}
.pbar__in b{display:block;font:600 14px/1.3 var(--text);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pbar__in small{display:block;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.has-pbar{padding-bottom:68px}
/* builder */
.ph--start .ph__in{padding-bottom:30px}
.doors2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px;max-width:560px}
.door2{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:16px;border:1.5px solid var(--line);background:#fff;text-align:left;font:inherit}
.door2 .ico{width:28px;height:28px;color:var(--g700);flex:none}
.door2 b{display:block;font:700 15.5px/1.25 var(--head);color:var(--ink)}
.door2 small{display:block;font-size:12.5px;color:var(--muted);margin-top:3px}
.door2[aria-pressed=true]{border-color:var(--g700);background:#f0f9f2;box-shadow:inset 0 0 0 1px var(--g700)}
.ph__media--assure{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center}
.ph__media--assure>img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:18px;box-shadow:var(--shadow)}
.assure{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.assure li{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--ink)}
.assure .ico{flex:none;width:34px;height:34px;padding:7px;border-radius:10px;background:#eaf5ec;color:var(--g700)}
.bprog{position:sticky;top:72px;z-index:5;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.bprog ol{list-style:none;margin:0;padding:12px 0;display:flex;justify-content:space-between;gap:8px;overflow-x:auto;scrollbar-width:none}
.bprog ol::-webkit-scrollbar{display:none}
.bprog a{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;color:var(--muted);white-space:nowrap}
.bprog span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--line);font:700 13px var(--head);color:var(--ink);background:#fff}
.bprog li.done span{background:var(--g700);border-color:var(--g700);color:#fff}
.bprog li.done a{color:var(--g700)}
.bwrap{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start;padding-top:24px;padding-bottom:64px}
.bmain{display:grid;gap:16px}
.bstep{padding:22px;border-radius:20px;background:#fff;border:1px solid var(--line);scroll-margin-top:150px}
.bstep__h{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}
.bstep__n{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:var(--g700);color:#fff;font:700 15px var(--head)}
.bstep__n .ico{width:17px;height:17px}
.bstep h2{font-size:20px;font-weight:800}
.bstep__sub{font-size:13.5px;color:var(--muted);margin-top:3px}
.bstep__sub a{color:var(--g700);font-weight:600}
.is-fast .bstep__sub{display:none}
.tiles{display:grid;gap:10px}
.tiles--5{grid-template-columns:repeat(5,1fr)}
.tiles--4{grid-template-columns:repeat(4,1fr)}
.tile{position:relative;display:flex;flex-direction:column;gap:8px;padding:8px 8px 12px;border-radius:14px;border:1.5px solid var(--line);background:#fff;font:inherit;text-align:center;transition:border-color .15s}
.tile:hover{border-color:var(--g700)}
.tile img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.tile__plus{display:grid;place-items:center;aspect-ratio:4/3;border-radius:10px;background:var(--soft);color:var(--g700)}
.tile b{font:600 13px/1.25 var(--text);color:var(--ink)}
.tile__ok{position:absolute;top:12px;right:12px;display:none;width:24px;height:24px;border-radius:50%;background:var(--g700);color:#fff;place-items:center}
.tile__ok .ico{width:14px;height:14px;stroke-width:2.5}
.tile[aria-pressed=true]{border-color:var(--g700);box-shadow:inset 0 0 0 1px var(--g700);background:#f6fbf6}
.tile[aria-pressed=true] .tile__ok{display:grid}
.qtys{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.qtys--5{grid-template-columns:repeat(5,1fr)}
.qtys--3{grid-template-columns:repeat(3,1fr)}
.qtyb{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 8px;border-radius:14px;border:1.5px solid var(--line);background:#fff;font:inherit;text-align:center}
.qtyb b{font:700 15px/1.2 var(--head);color:var(--ink)}
.qtyb span{font-size:12px;color:var(--muted)}
.qtyb--ic .ico{color:var(--g700);margin-bottom:4px}
.qtyb[aria-pressed=true]{border-color:var(--g700);background:#f0f9f2;box-shadow:inset 0 0 0 1px var(--g700)}
.datel{display:inline-flex;align-items:center;gap:10px;margin-top:12px;font-size:13.5px;color:var(--muted)}
.datel input,.txt{height:42px;border:1.5px solid var(--line);border-radius:10px;padding:0 12px;font:inherit;font-size:14px}
.artrow{display:grid;grid-template-columns:1.6fr 1fr;gap:12px}
.artlater{padding:16px;border-radius:14px;background:var(--soft)}
.artlater b{font:700 14.5px var(--head);color:var(--ink)}
.artlater p{font-size:13px;color:var(--muted);margin:6px 0 10px}
.chip[aria-pressed=true]{background:var(--g700);border-color:var(--g700);color:#fff}
.files li{position:relative}
.files .linkx{display:block;margin-top:4px;font-size:12px}
.cs{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.cs__l{font:600 13.5px var(--text);color:var(--ink);margin-bottom:10px}
.dots{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.dot2{width:36px;height:36px;border-radius:50%;border:2px solid #fff;background:var(--c);box-shadow:0 0 0 1.5px var(--line)}
.dot2[aria-pressed=true]{box-shadow:0 0 0 3px var(--g700)}
.cs .txt{width:100%}
.opts2{display:flex;flex-wrap:wrap;gap:8px}
.opts2 button{min-width:48px;height:40px;padding:0 12px;border:1.5px solid var(--line);border-radius:10px;background:#fff;font:500 13.5px var(--text);color:var(--ink)}
.opts2 button[aria-pressed=true]{background:var(--pill-dark);border-color:var(--pill-dark);color:#fff}
.check{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13.5px;color:var(--muted)}
.bproj{background:#f0f9f2;border-color:#cfe8d4}
.pitems{display:grid;gap:10px}
.pitem{display:flex;align-items:center;gap:14px;padding:10px;border-radius:14px;background:#fff;border:1px solid var(--line)}
.pitem img{width:56px;height:70px;object-fit:cover;object-position:50% 20%;border-radius:8px;background:#f3f4f2}
.pitem>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.pitem small{font-size:12px;color:var(--muted)}
.pitem b{font:600 14.5px/1.3 var(--text);color:var(--ink)}
.pitem span{font-size:12.5px;color:var(--body)}
.linkx--g{color:var(--g700);font-weight:600;font-size:13px}
.bside{position:sticky;top:150px;display:grid;gap:14px}
.yproj{padding:20px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.yproj__h{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.yproj__h h3{font-size:20px;font-weight:800}
.yproj__saved{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--g700);opacity:.5}
.yproj__saved .ico{width:14px;height:14px}
.yproj__saved.flash{animation:flash 1.2s}
@keyframes flash{0%{opacity:1}100%{opacity:.5}}
.yrow{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:10px 0;border-top:1px solid var(--line)}
.yrow__l{font-size:12px;color:var(--muted)}
.yrow__v{grid-column:1;font:600 13.5px/1.35 var(--text);color:#9aa3a0}
.yrow.is-set .yrow__v{color:var(--ink)}
.yrow a{grid-row:1/3;grid-column:2;align-self:center;font-size:12.5px;font-weight:600;color:var(--g700)}
.ygood{margin-top:10px;padding:12px;border-radius:12px;background:#f0f9f2;border:1px solid #cfe8d4;font-size:13px;color:#1d3a27}
.yhelp{display:flex;gap:12px;padding:18px;border-radius:18px;background:var(--soft)}
.yhelp>.ico{flex:none;color:var(--g700);width:26px;height:26px}
.yhelp b{font:700 15px var(--head);color:var(--ink)}
.yhelp p{font-size:13px;color:var(--muted);margin:4px 0 10px}
.yhelp small{display:block;margin-top:8px;font-size:12px;color:var(--muted)}
.breview{background:#fafcf9}
.rgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.rcell{display:flex;flex-direction:column;gap:3px;padding:12px;border-radius:12px;background:#fff;border:1px solid var(--line)}
.rcell small{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.rcell b{font:600 13.5px/1.35 var(--text);color:var(--ink)}
.rcell a{font-size:12px;font-weight:600;color:var(--g700);margin-top:auto}
.rfoot{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:18px}
.rassure{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:16px}
.rassure li{display:flex;gap:8px;align-items:flex-start;font-size:12px;color:var(--muted);max-width:200px}
.rassure .ico{flex:none;color:var(--g700)}
.rassure b{display:block;font-size:13px;color:var(--ink)}
.rsend{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.rsend small{font-size:12.5px;color:var(--muted)}
.rsend small.bad{color:#b3261e;font-weight:600}
.bdone{grid-column:1/-1}
.next{text-align:left;max-width:560px;margin:14px auto;display:grid;gap:8px;font-size:14.5px}
.rgrid--done{max-width:900px;margin:18px auto;text-align:left}
@media (max-width:1180px){.tiles--5{grid-template-columns:repeat(4,1fr)}.qtys{grid-template-columns:repeat(3,1fr)}.ptabs__grid{grid-template-columns:1fr 1fr}.phelp{grid-column:1/-1}.rgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:980px){
  .pdp2{grid-template-columns:1fr}
  .bwrap{grid-template-columns:1fr}
  .bside{position:relative;top:0;order:-1}
  .bprog{top:72px}
  .ph__media--assure{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .pgal{grid-template-columns:1fr}
  .pgal__thumbs{flex-direction:row;overflow-x:auto;order:2}
  .pgal__t{flex:none;width:60px;height:74px}
  .pfacts2{grid-template-columns:1fr 1fr}
  .meth{grid-template-columns:1fr}
  .ptabs__grid{grid-template-columns:1fr}
  .pbar__in{gap:8px}
  .pbar__in>div{display:none}
  .pbar__in .pill{flex:1}
  .doors2{grid-template-columns:1fr}
  .ph__media--assure{grid-template-columns:1fr}
  .ph__media--assure>img{display:none}
  .bprog{top:64px}
  .bstep{padding:16px}
  .tiles--5,.tiles--4{grid-template-columns:1fr 1fr}
  .qtys,.qtys--5,.qtys--3{grid-template-columns:1fr 1fr}
  .artrow,.cs{grid-template-columns:1fr}
  .rgrid{grid-template-columns:1fr}
  .rsend{align-items:stretch;width:100%}
  .rsend .pill{width:100%}
  .bside{order:0}
}
@media (max-width:640px){.pgal .pdp__img{order:1}.pgal__thumbs{order:2}.pfacts2{order:3}}

/* text pages (privacy): one readable column */
.legal{max-width:760px}
.legal__s{padding:22px 0;border-top:1px solid var(--line)}
.legal__s:first-of-type{border-top:0;padding-top:0}
.legal h2{font-size:20px;font-weight:700;margin:0 0 10px}
.legal p,.legal li{font-size:16px;line-height:1.65;color:var(--body)}
.legal p+p{margin-top:10px}
.legal ul{margin:0 0 10px;padding-left:20px;display:grid;gap:8px}
.legal a{color:var(--g700);text-decoration:underline;text-underline-offset:3px}
.legal b{color:var(--ink)}
.legal__draft{margin:0 0 28px;padding:14px 18px;border-radius:10px;background:#fff7d6;border:1px solid #eadfae;color:#4a3b05;font-size:15px}
mark.ask{background:#ffe58a;color:#3d2f00;padding:1px 4px;border-radius:4px;font-weight:600}
