/* Apple-inspired presentation. Original brand art; neutral interface palette. */
:root{
 --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;--display:var(--sans);--display-weight:600;
 --r-xs:12px;--r-sm:16px;--r:22px;--r-lg:28px;--r-xl:32px;--r-pill:999px;
 --maxw:1280px;--pad:clamp(24px,5vw,64px);--sy:clamp(72px,9vw,120px);--hh:80px;
 --paper-2:#f5f5f7;--on-light:#525258;--on-light-mute:#68686f;
 --e1:0 2px 6px #00000004,0 12px 32px #00000006;
 --e2:0 2px 6px #00000006,0 18px 40px #0000000a;
 --e3:0 3px 8px #00000008,0 22px 44px #00000010;
 --ease-out:cubic-bezier(.23,1,.32,1);--t-press:.12s;--t-quick:.2s;--t-slow:.6s;
}
body{line-height:1.65;letter-spacing:0;background:#fff}
.display{font-weight:600;font-optical-sizing:auto;text-wrap:balance}
.display--xl{font-size:clamp(3.1rem,6.8vw,6rem);letter-spacing:-.055em;line-height:1.02}
.display--l{font-size:clamp(2.35rem,4.7vw,4rem);letter-spacing:-.045em;line-height:1.07}
.display--m{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.035em;line-height:1.1}
.display .gold{color:inherit!important}
.eyebrow{font-size:.875rem;letter-spacing:.09em;font-weight:600;color:var(--on-light-mute)}
.eyebrow::after{display:none}
.lede{font-size:1.125rem;line-height:1.7}
.btn{min-height:48px;padding:14px 24px;font-size:.9375rem;font-weight:500;box-shadow:none!important;transition:transform var(--t-press) var(--ease-out),background-color var(--t-quick) ease}
.btn:active{transform:scale(.97)}
.btn--ghost{background:#eeeef0;box-shadow:none}
.btn--ghost-dark{border:1px solid #ffffff70;background:#ffffff0c}
.btn:hover{transform:none}
.site-header,.site-header.is-stuck,.site-header.on-dark:not(.is-stuck){top:14px;left:max(16px,calc((100% - 1200px)/2));right:max(16px,calc((100% - 1200px)/2));height:64px;border-radius:22px;background:rgba(255,255,255,.88);color:var(--ink);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);box-shadow:0 2px 6px #00000005,0 8px 36px #0000000c;border:1px solid #ffffffa6}
.site-header::after{display:none}
.site-header .header__inner{padding-inline:24px}
.brand__img{height:36px}
.site-header.on-dark:not(.is-stuck) .brand__img--light{display:block}
.site-header.on-dark:not(.is-stuck) .brand__img--dark{display:none}
.site-header.on-dark:not(.is-stuck) .nav__link{color:var(--ink)}
.site-header.on-dark:not(.is-stuck) .burger span{background:var(--ink)}
.site-header.on-dark:not(.is-stuck) .btn--gold{background:var(--ink);color:#fff}
.site-header .btn--sm{min-height:38px;padding:9px 18px;font-size:.875rem}
.nav__link{font-size:.875rem;font-weight:500}
.nav__link[aria-current=page]{background:#00000006}
.home .hero{height:auto;max-height:none;min-height:0;padding:140px 0 0;display:flex;flex-direction:column;align-items:stretch;background:#f5f5f7;color:var(--ink);border-radius:0;overflow:visible}
.home .hero__inner{text-align:center;padding:0 var(--pad) 48px;order:0}
.home .hero h1{color:var(--ink);max-width:none}
.home .hero h1 br{display:none}
.home .hero h1 .gold{display:block;color:#74747b!important}
.home .hero__eyebrow{justify-content:center;color:#68686f;font-size:.8125rem;margin-bottom:20px}
.home .hero__sub{color:#68686f;font-size:1.1875rem;line-height:1.55;max-width:43ch;margin:24px auto 0}
.home .hero .btn-row{justify-content:center;margin-top:28px;gap:12px}
.home .hero .btn--gold{background:var(--ink);color:#fff}
.home .hero .btn--ghost-dark{background:transparent;border:1px solid #c7c7cc;color:var(--ink);backdrop-filter:none}
.home .hero::after{display:none}
.home .hero__bg{background-image:url("../img/apparel-sewing-generated.jpg");position:relative;inset:auto;order:1;width:calc(100% - 48px);max-width:1200px;height:clamp(320px,42vw,540px);margin:0 auto;border-radius:28px;background-position:center 55%;transform:none!important;will-change:auto;overflow:hidden}
.home .hero__caption{position:relative;order:2;display:block;text-align:center;padding:12px 24px 26px;color:#68686f;font-size:.75rem;letter-spacing:.04em}
.hero__caption span{margin-left:12px}
.home .section--tight{background:#f5f5f7;padding-block:8px 64px}
.stats{background:transparent;box-shadow:none;gap:0;border-radius:0}
.stat{padding:24px 32px;text-align:center;background:transparent}
.stat+.stat{border-left:1px solid #d9d9de}
.stat__num{font-size:clamp(2.1rem,3vw,2.8rem);font-weight:600;margin-bottom:0;letter-spacing:-.045em}
.stat__label{font-size:.9375rem;color:#68686f;margin-top:10px}
.section--paper2,.section--paper3,.section--dark{border-radius:0}
.section-head{max-width:760px}
.grid{gap:20px}
.vcard,.section--paper2 .vcard,.capgroup{padding:30px;background:#fff;border:0;border-radius:24px;box-shadow:var(--e1)}
.capgroup{background:#f5f5f7;box-shadow:none}
.vcard:hover,.capgroup:hover{transform:none;box-shadow:var(--e1)}
.vcard__idx{font-size:.875rem;font-weight:500;color:#77777e;margin-bottom:28px}
.vcard h3,.capgroup h3,.pstep h3{font-family:var(--sans);font-weight:600;letter-spacing:-.025em}
.vcard p,.capgroup__note{font-size:1rem;color:#68686f}
.capgroup h3{font-size:1.5rem}
.caplist li{font-size:1rem;padding:11px 0}
.caplist li::before{background:#96969e}
.media{border-radius:28px}
.media--zoom img{transform:none;transition:transform .6s var(--ease-out)}
.media--zoom:hover img{transform:none}
.process--grid{gap:20px}
.process--grid .pstep{padding:28px;background:#ffffff06;border:0;border-radius:22px;box-shadow:inset 0 0 0 1px #ffffff10;gap:22px}
.process--grid .pstep:hover{background:#ffffff06;box-shadow:inset 0 0 0 1px #ffffff10}
.process--grid .pstep__num{font-size:.875rem;color:#b8bbbe}
.process--grid .pstep h3{font-size:1.125rem}
.process--grid .pstep p{font-size:.9375rem;line-height:1.7}
.process--grid .pstep__body{gap:12px}
#confidentiality{border-top:1px solid #ffffff10}
.seal{width:92px;border-color:#ffffff30;background:#ffffff06}
.seal::before{display:none}
.seal__mark{font-size:.6875rem;font-weight:500;letter-spacing:.025em;padding:10px}
.ctastrip{border-radius:0;padding-block:100px}
.ctastrip .lede{color:#e1e3e4}
.site-footer{border-top:1px solid #ffffff18;border-radius:0}
.footer__tag{font-size:.875rem;font-weight:500;color:#c3c6c8}
.site-footer h2,.cblock h3{font-size:.875rem}
.field label,.field__hint{font-size:.875rem}
.field input,.field select,.field textarea{padding:15px;background:#fafafa;border-radius:12px}
.field input:focus,.field select:focus,.field textarea:focus{box-shadow:inset 0 0 0 1.5px #252528,0 0 0 4px #25252812}
.check:has(input:checked){background:#f1f2f3}
.tlink{font-weight:500}
.phero{padding-block:160px 80px;border-radius:0}
.phero:not(.phero--photo){background:#f5f5f7;color:var(--ink)}
.phero:not(.phero--photo)::after{display:none}
.phero:not(.phero--photo) h1{color:var(--ink)}
.phero:not(.phero--photo) .lede{color:#68686f}
.phero:not(.phero--photo) .btn--gold{background:var(--ink);color:#fff}
.phero:not(.phero--photo) .btn--ghost-dark{color:var(--ink);border-color:#aaa}
.drawer{border-radius:28px 28px 0 0;transition:visibility 0s;touch-action:pan-y}
.drawer__link{transition:opacity .2s var(--ease-out),transform .25s var(--ease-out)}
.drawer__link:focus-visible{outline-color:white}
.photo-note{font-size:.75rem;color:#68686f;margin-top:12px;text-align:right}
.fabric-image{width:100%;height:320px;object-fit:cover;border-radius:24px;margin-top:36px}
.js .reveal,.js .reveal-media{opacity:1;transform:none;filter:none}
.js.motion-ready .reveal:not(.is-in),.js.motion-ready .reveal-media:not(.is-in){opacity:0;transform:translateY(16px)}
.js.motion-ready .reveal,.js.motion-ready .reveal-media{transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);filter:none}
.js.motion-ready .reveal.is-in,.js.motion-ready .reveal-media.is-in{opacity:1;transform:none}
:is(.hero,.form) .reveal{opacity:1!important;transform:none!important}
[data-d='1']{transition-delay:50ms!important}[data-d='2']{transition-delay:100ms!important}[data-d='3']{transition-delay:150ms!important}
:focus-visible{outline:3px solid #55555b;outline-offset:4px}
@media(hover:hover) and (pointer:fine){
 .btn:hover{transform:translateY(-1px)}.btn:active{transform:scale(.97)}
 .media--zoom:hover img{transform:scale(1.025)}
 .btn:hover .arw{transform:translateX(3px)}
}
@media(hover:none){.btn:hover .arw,.tlink:hover .arw,.cat:hover{transform:none}.tlink:hover{gap:.45em}}
@media(min-width:900px){.home #development .split{grid-template-columns:1fr 1fr;gap:9%}.home #development .media{aspect-ratio:4/5;max-height:600px}.home #why .section-head{margin-inline:auto;text-align:center}.home #why .eyebrow{justify-content:center}.home #why .lede{margin-inline:auto}.home #capabilities .section-head{margin-inline:auto;text-align:center}.home #capabilities .eyebrow{justify-content:center}}
@media(max-width:759px){
 :root{--hh:90px}
 .site-header,.site-header.is-stuck,.site-header.on-dark:not(.is-stuck){top:10px;height:60px;left:12px;right:12px;border-radius:19px}
 .site-header .header__inner{padding-inline:18px}
 .home .hero{padding-top:120px}
 .home .hero__inner{padding-bottom:32px}
 .home .hero__sub{font-size:1.0625rem;max-width:34ch}
 .home .hero__bg{width:calc(100% - 24px);height:340px;border-radius:22px;background-position:60% center}
 .hero__caption span{display:none}
 .home .section--tight{padding-bottom:32px}
 .stats{grid-template-columns:1fr}.stat{padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;text-align:left}
 .stat+.stat{border-left:0;border-top:1px solid #dedee2}
 .stat__label{margin:0;text-align:right;max-width:16ch;font-size:.875rem}
 .grid--4{grid-template-columns:1fr 1fr;gap:14px}.vcard{padding:24px}.vcard h3{font-size:1.2rem}
 .vcard p{font-size:.9375rem}.phero{padding-block:135px 56px}.ctastrip{padding-block:72px}
 .drawer{height:min(80svh,650px)}
}
@media(max-width:420px){.grid--4{grid-template-columns:1fr}.home .hero__bg{height:300px}.btn{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js.motion-ready .reveal,.js.motion-ready .reveal-media,.drawer__link{opacity:1!important;transform:none!important;transition:none!important}.media--zoom:hover img,.btn:hover,.btn:active{transform:none}*,*::before,*::after{transition-delay:0s!important;animation:none!important}}
@media(prefers-reduced-transparency:reduce){.site-header,.site-header.is-stuck,.site-header.on-dark:not(.is-stuck){background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-contrast:more){.site-header{background:#fff!important;border:1px solid #666}.vcard,.capgroup{border:1px solid #888}.eyebrow,.muted,.vcard p,.stat__label{color:#444}}
section[id],main[id]{scroll-margin-top:100px}
@media(max-width:759px){.hero__caption span{display:block;margin:4px 0 0;font-size:.75rem}}

/* Capabilities: a plain black hero, without a photograph or overlay. */
.phero.phero--black{background:#000;color:#fff}
.phero.phero--black::after{display:none}
.phero.phero--black h1{color:#fff}
.phero.phero--black .eyebrow{color:#c5c5ca}
.btn:disabled{opacity:.65;cursor:wait;transform:none}

/* Review updates: hero identity and enquiry confirmation. */
.home .hero__logo{display:block;width:clamp(220px,38vw,430px);max-width:100%;height:auto;margin:0 auto}
.home .hero__standards{max-width:48ch;margin:18px auto 0;font-size:1rem;color:#525258;text-wrap:balance}
.form__status--success{display:flex;align-items:flex-start;gap:12px;background:#edf9f0;color:#166534;box-shadow:inset 0 0 0 1px #b5dfbf}
.form__success-icon{flex:none;width:28px;height:28px;color:#16803c}

/* Four homepage stats, with the existing mobile stack preserved. */
@media (min-width:760px){.stats.stats--four{grid-template-columns:repeat(4,minmax(0,1fr))}.stats--four .stat{padding-inline:16px}}
/* Allow the longer manufacturer link to fit in the shared navigation. */
@media (min-width:900px){.site-header .nav{gap:6px}.site-header .nav__link{white-space:nowrap;padding-inline:10px}}

/* Form feedback uses the same confirmation mark throughout the site. */
.form__spinner{width:20px;height:20px;flex:none;animation:form-spin .8s linear infinite}
@keyframes form-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.form__spinner{animation:none}}
