/*
Theme Name: HCA Shop
Description: Hair Culture America. Art-inspired barbershop theme.
Version: 0.1.0
Text Domain: hca-shop
*/
:root{--ink:#15171a;--concrete:#dcdad5;--paper:#f4f2ed;--oak:#e9892b;--oak-dark:#8a4a08;--line:rgba(21,23,26,.18)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:1.0625rem;line-height:1.6}
a{color:inherit}
:focus-visible{outline:3px solid var(--oak);outline-offset:3px}
.hold{min-height:100vh;display:grid;grid-template-columns:1fr}
.hold__brand{background:var(--ink);color:var(--paper);padding:clamp(28px,6vw,72px);display:flex;flex-direction:column;justify-content:space-between;gap:48px}
.wordmark{font-size:.8125rem;letter-spacing:.32em;text-transform:uppercase;margin:0}
.hold__brand h1{font-family:Didot,'Bodoni MT','Playfair Display',Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(2.4rem,7vw,4.6rem);line-height:1.04;margin:0;max-width:14ch;letter-spacing:-.01em}
.hold__brand p.lead{margin:20px 0 0;max-width:38ch;color:#d5d2cb}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.btn{display:inline-block;padding:14px 26px;border:2px solid var(--oak);text-decoration:none;font-weight:600;letter-spacing:.02em}
.btn--primary{background:var(--oak);color:var(--ink)}
.btn--primary:hover{background:#f29a3f}
.btn--ghost{color:var(--paper)}
.btn--ghost:hover{background:rgba(255,255,255,.08)}
.hold__info{background:var(--concrete);padding:clamp(28px,6vw,72px);display:flex;align-items:center}
.frame{border:2px solid var(--ink);outline:2px solid var(--oak);outline-offset:6px;background:var(--paper);padding:clamp(24px,4vw,44px);width:100%;max-width:460px}
.frame h2{font-family:Didot,'Bodoni MT','Playfair Display',Georgia,serif;font-weight:400;font-size:1.5rem;margin:0 0 18px}
.frame dl{margin:0;display:grid;gap:16px}
.frame dt{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:#4a4d52}
.frame dd{margin:2px 0 0}
.note{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font-size:.95rem;color:#3a3d42}
footer.site{background:var(--ink);color:#b9b6ae;padding:18px clamp(28px,6vw,72px);font-size:.85rem}
@media (min-width:860px){.hold{grid-template-columns:1.15fr 1fr}}
/* ---- full site ---- */
.skip{position:absolute;left:-999px;top:0;background:var(--oak);color:var(--ink);padding:10px 16px;z-index:100}.skip:focus{left:8px;top:8px}
.wrap{width:min(1120px,100% - 2*clamp(20px,5vw,48px));margin-inline:auto}
.top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:16px clamp(20px,5vw,48px);background:var(--ink);color:var(--paper)}
.top__brand{font-size:.8125rem;letter-spacing:.32em;text-transform:uppercase;text-decoration:none}
.top__nav{display:flex;flex-wrap:wrap;align-items:center;gap:6px 22px}
.top__nav a{text-decoration:none}
.top__nav a:not(.btn):hover{color:var(--oak)}
.btn--sm{padding:9px 18px;font-size:.95rem}
.btn--dark{color:var(--ink)}
.eyebrow{font-size:.75rem;letter-spacing:.24em;text-transform:uppercase;color:var(--oak);margin:0 0 14px}
.eyebrow--dark{color:var(--oak-dark)}
.hero{background:var(--ink);color:var(--paper);padding:clamp(56px,12vw,140px) 0}
.hero__in{width:min(1120px,100% - 2*clamp(20px,5vw,48px));margin-inline:auto}
.hero h1{font-family:Didot,'Bodoni MT','Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(2.6rem,8vw,5.6rem);line-height:1.02;margin:0;max-width:13ch;letter-spacing:-.01em}
.hero .lead{margin:22px 0 0;max-width:44ch;color:#d5d2cb;font-size:1.15rem}
.hero__meta{margin:26px 0 0;font-size:.95rem;color:#b9b6ae}
.lead--dark{color:#3a3d42;max-width:52ch}
.band{background:var(--concrete);padding:clamp(40px,7vw,84px) 0}
.band--ink{background:var(--ink);color:var(--paper)}
.band--ink p{color:#d5d2cb}
.split{display:grid;gap:24px}
.split h2{font-family:Didot,'Bodoni MT','Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.12;margin:0}
.split p{margin:0 0 14px;max-width:54ch}
.section{padding-block:clamp(40px,7vw,84px)}
.section__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;margin-bottom:8px}
.section h2{font-family:Didot,'Bodoni MT','Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(1.6rem,3.5vw,2.2rem);margin:0}
.more{color:var(--oak-dark);font-weight:600}
.picks{list-style:none;margin:16px 0 0;padding:0;border-top:2px solid var(--ink)}
.picks li{display:grid;grid-template-columns:1fr auto;gap:2px 20px;padding:16px 0;border-bottom:1px solid var(--line)}
.picks__name{font-weight:600}.picks__price{font-family:Didot,'Bodoni MT',Georgia,serif;font-size:1.4rem;text-align:right}.picks__time{grid-column:1;font-size:.9rem;color:#4a4d52}
.page h1{font-family:Didot,'Bodoni MT','Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(2.2rem,6vw,3.6rem);line-height:1.05;margin:0 0 16px}
.group{margin-top:36px}.group h2{margin-bottom:10px}
.prices{width:100%;border-collapse:collapse;border-top:2px solid var(--ink)}
.prices th,.prices td{padding:14px 8px;border-bottom:1px solid var(--line);text-align:left;font-weight:400}
.prices thead th{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:#4a4d52}
.prices tbody th{font-weight:600}
.prices .num{text-align:right;font-family:Didot,'Bodoni MT',Georgia,serif;font-size:1.25rem;white-space:nowrap}
.prices td:nth-child(2){color:#4a4d52;white-space:nowrap}
.prose{max-width:62ch}.prose h2{margin-top:32px}
.team{list-style:none;padding:0;margin:12px 0 28px;display:flex;flex-wrap:wrap;gap:12px}.team li{border:2px solid var(--ink);padding:12px 22px;font-family:Didot,'Bodoni MT',Georgia,serif;font-size:1.3rem}
.visit{display:flex}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.page .actions{margin-top:36px}
footer.site .site__cols{display:grid;gap:22px;grid-template-columns:1fr;padding:clamp(28px,5vw,48px) 0}
footer.site{padding:0 clamp(20px,5vw,48px)}
footer.site a{color:var(--paper)}
footer.site .label{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--oak);margin:0 0 6px}
footer.site p{margin:0 0 4px}
.site__legal{border-top:1px solid rgba(255,255,255,.14);padding:16px 0;margin:0;font-size:.85rem}
@media (min-width:860px){.split{grid-template-columns:1fr 1.2fr;gap:56px}footer.site .site__cols{grid-template-columns:1.2fr 1fr 1fr 1.3fr}.picks li{grid-template-columns:1fr 90px auto}.picks__time{grid-column:auto;order:2}.picks__price{order:3}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* ---- motion ---- */
.top__nav a:not(.btn){display:inline-block;padding:11px 4px}
.top__nav .btn--sm{padding:11px 20px}
.top__brand{display:inline-block;padding:8px 0}
.wrap a:not(.btn),footer.site a:not(.btn){text-underline-offset:4px}
.frame dd a,.note a:not(.btn),footer.site p a{display:inline-block;padding:6px 0}
.btn{position:relative;overflow:hidden;transition:transform .25s ease,color .25s ease,background-color .25s ease;background-image:linear-gradient(var(--paper),var(--paper));background-repeat:no-repeat;background-size:0% 100%;background-position:left}
.btn--primary{background-color:var(--oak);background-image:linear-gradient(#ffb865,#ffb865)}
.btn:hover{transform:translateY(-2px);background-size:100% 100%}
.btn--primary:hover{background-color:var(--oak)}
.btn--ghost:hover{color:var(--ink);background-image:linear-gradient(var(--paper),var(--paper))}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.08em}
.hero h1 .ln>span,.hold__brand h1 .ln>span{display:inline-block;transform:translateY(108%);animation:hca-rise .95s cubic-bezier(.2,.7,.2,1) forwards}
.hero h1 .ln:nth-child(2)>span{animation-delay:.14s}
.hold__brand h1 .ln{display:block;overflow:hidden;padding-bottom:.08em}
.hero .eyebrow,.hero .lead,.hero .actions,.hero__meta{opacity:0;transform:translateY(14px);animation:hca-fade .8s ease forwards}
.hero .eyebrow{animation-delay:.05s}.hero .lead{animation-delay:.45s}.hero .actions{animation-delay:.6s}.hero__meta{animation-delay:.75s}
@keyframes hca-rise{to{transform:none}}
@keyframes hca-fade{to{opacity:1;transform:none}}
.pole{height:10px;background:repeating-linear-gradient(-45deg,var(--oak) 0 12px,var(--paper) 12px 24px,var(--ink) 24px 36px,var(--paper) 36px 48px);background-size:68px 100%;animation:hca-pole 3.2s linear infinite}
@keyframes hca-pole{to{background-position:68px 0}}
.marquee{background:var(--ink);color:var(--paper);overflow:hidden;border-block:1px solid rgba(255,255,255,.14);padding:16px 0}
.marquee__t{display:flex;width:max-content;animation:hca-marquee 46s linear infinite}
.marquee:hover .marquee__t{animation-play-state:paused}
.marquee span{font-family:Didot,'Bodoni MT','Playfair Display',Georgia,serif;font-size:clamp(1.1rem,2.6vw,1.6rem);padding:0 28px;white-space:nowrap}
.marquee span::after{content:'';display:inline-block;width:8px;height:8px;margin-left:56px;background:var(--oak);transform:rotate(45deg)}
@keyframes hca-marquee{to{transform:translateX(-50%)}}
.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .8s ease var(--d,0s),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.js [data-reveal].in{opacity:1;transform:none}
.js .frame[data-reveal]{outline-offset:16px;transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1),outline-offset .9s cubic-bezier(.2,.7,.2,1)}
.js .frame[data-reveal].in{outline-offset:6px}
.picks li,.prices tbody tr{transition:background-color .25s ease,padding .25s ease}
.picks li:hover{background:rgba(233,137,43,.10);padding-inline:12px}
.prices tbody tr:hover{background:rgba(233,137,43,.10)}
.team li{transition:transform .3s ease,background-color .3s ease,color .3s ease}
.team li:hover{transform:translateY(-3px);background:var(--ink);color:var(--paper)}
.hero__img{position:absolute;inset:0;overflow:hidden}
.hero__img img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);animation:hca-zoom 22s ease-out forwards;will-change:transform}
@keyframes hca-zoom{to{transform:scale(1.09)}}
@media (prefers-reduced-motion:reduce){.hero h1 .ln>span,.hold__brand h1 .ln>span{transform:none;animation:none}.hero .eyebrow,.hero .lead,.hero .actions,.hero__meta{opacity:1;transform:none;animation:none}.pole{animation:none}.marquee__t{animation:none;flex-wrap:wrap;width:auto;justify-content:center}.marquee__t span:nth-child(n+8){display:none}.js [data-reveal]{opacity:1;transform:none;transition:none}.btn,.team li{transition:none}.hero__img img{animation:none;transform:none}}
/* ---- photos, gallery, areas ---- */
.hero--split{padding:clamp(36px,7vw,88px) 0}
.hero__grid{display:grid;gap:40px;align-items:center}
.hero__grid .hero__in{width:auto;margin:0}
.hero__photo{position:relative;margin:0 10px;aspect-ratio:4/3;outline:2px solid var(--oak);outline-offset:10px}
@media (min-width:900px){.hero__grid{grid-template-columns:1.1fr .9fr;gap:72px}.hero__photo{aspect-ratio:4/5;margin-inline:0}}
.h2--light{font-family:Didot,'Bodoni MT','Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(1.6rem,3.5vw,2.2rem);margin:0}
.more--light{color:var(--oak)}
.gal{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.gal li{grid-column:span 1;margin:0}.gal .wide{grid-column:span 2}
.gal a{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:#0c0d0f}
.gal .wide a{aspect-ratio:4/3}
.gal img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.gal a:hover img,.gal a:focus-visible img{transform:scale(1.06)}
.gal__cap{position:absolute;left:0;right:0;bottom:0;padding:34px 14px 12px;background:linear-gradient(transparent,rgba(0,0,0,.78));color:#fff;font-family:Didot,'Bodoni MT','Playfair Display',Georgia,serif;font-size:1.1rem;transform:translateY(101%);transition:transform .35s ease}
.gal a:hover .gal__cap,.gal a:focus-visible .gal__cap{transform:none}
@media (hover:none){.gal__cap{transform:none;font-size:1rem;padding-top:26px}}
@media (min-width:760px){.gal{grid-template-columns:repeat(6,1fr);gap:16px}.gal li{grid-column:span 2}.gal .wide{grid-column:span 3}}
.page .gal{margin-top:34px}
dialog.lb{border:0;padding:0;background:transparent;max-width:100vw;max-height:100vh;width:100%;height:100%;cursor:zoom-out}
dialog.lb[open]{display:grid;place-items:center}
dialog.lb::backdrop{background:rgba(10,11,13,.94)}
.lb img{max-width:92vw;max-height:86vh;object-fit:contain}
.lb__x{position:fixed;top:14px;right:14px;background:var(--oak);color:var(--ink);border:0;padding:12px 20px;font:600 1rem/1 system-ui,sans-serif;cursor:pointer}
.visit--photo{display:grid;gap:36px;align-items:center}
.visit__img{margin:0}.visit__img img{display:block;width:100%;height:auto}
.visit__img figcaption{margin-top:10px;font-size:.9rem;color:#4a4d52}
@media (min-width:860px){.visit--photo{grid-template-columns:minmax(0,460px) 1fr;gap:64px}}
.areas{margin-top:clamp(40px,6vw,72px);padding-top:28px;border-top:2px solid var(--ink)}
.areas h2{font-family:Didot,'Bodoni MT','Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(1.4rem,3vw,1.9rem);margin:0 0 16px}
.areas ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.areas li{border:2px solid var(--ink);padding:10px 18px;transition:background-color .25s,color .25s}
.areas li:hover{background:var(--ink);color:var(--paper)}
@media (prefers-reduced-motion:reduce){.gal img,.gal__cap{transition:none}.gal a:hover img{transform:none}}

/* ---- site v2 (scoped to .hca-site) ---- */
.hca-site{--fg:#f6f3ee;--fg2:rgba(246,243,238,.78);--line:rgba(246,243,238,.2);--ember:#ff9f45;--disp:'Anton','Arial Narrow','Helvetica Neue',Impact,sans-serif;--font:'Figtree',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;margin:0;color:var(--fg);font-family:var(--font);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip;background:radial-gradient(60% 50% at 82% 8%,rgba(184,77,20,.6),transparent 62%),radial-gradient(55% 50% at 8% 38%,rgba(14,124,134,.55),transparent 62%),radial-gradient(60% 60% at 72% 92%,rgba(91,29,107,.55),transparent 62%),#0a0b10;background-attachment:fixed;scrollbar-color:rgba(246,243,238,.4) #0a0b10}
.hca-site ::selection{background:var(--ember);color:#0a0b10}
.hca-site a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}
.hca-site :focus-visible{outline:3px solid var(--ember);outline-offset:3px;border-radius:6px}
.hca-site #hca-gl{position:fixed;inset:0;width:100%;height:100%;z-index:-1;display:block}
.hca-site .w{width:min(1180px,100% - 2*clamp(20px,5vw,56px));margin-inline:auto}
.hca-site .skip{position:absolute;left:-999px;top:0;background:var(--ember);color:#0a0b10;padding:10px 16px;z-index:100}
.hca-site .skip:focus{left:8px;top:8px}
.hca-site .nv{position:fixed;top:max(12px,env(safe-area-inset-top));left:0;right:0;z-index:50;padding:0 clamp(12px,3vw,32px);pointer-events:none}
.hca-site .nv__in{pointer-events:auto;max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 8px 8px 22px;border-radius:999px;background:rgba(12,13,18,.5);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(246,243,238,.14);box-shadow:0 14px 34px -14px rgba(0,0,0,.7)}
.hca-site .nv__brand{font-family:var(--disp);font-size:1.15rem;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;white-space:nowrap}
.hca-site .nv__right{display:flex;align-items:center;gap:8px}
.hca-site .nv__links{display:none;align-items:center;gap:4px}
.hca-site .nv__links a:not(.pill){padding:10px 14px;text-decoration:none;border-radius:999px;transition:background-color .25s}
.hca-site .nv__links a:not(.pill):hover{background:rgba(246,243,238,.12)}
.hca-site .nv__menu{position:relative}
.hca-site .nv__menu summary{list-style:none;cursor:pointer;padding:11px 18px;border-radius:999px;border:1px solid var(--line);font-weight:600}
.hca-site .nv__menu summary::-webkit-details-marker{display:none}
.hca-site .nv__menu[open] summary{background:rgba(246,243,238,.12)}
.hca-site .nv__panel{position:absolute;right:0;top:calc(100% + 12px);width:min(280px,calc(100vw - 32px));padding:10px;border-radius:26px;background:rgba(12,13,18,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--line);display:grid;gap:2px;box-shadow:0 24px 50px -20px rgba(0,0,0,.8)}
.hca-site .nv__panel a:not(.pill){padding:14px 16px;border-radius:14px;text-decoration:none;font-size:1.15rem;font-weight:500}
.hca-site .nv__panel a:not(.pill):hover{background:rgba(246,243,238,.1)}
.hca-site .nv__panel .pill{margin-top:6px}
@media (min-width:760px){.hca-site .nv__links{display:flex}
.hca-site .nv__menu{display:none}}
.hca-site .pill{display:inline-flex;align-items:center;justify-content:center;padding:14px 26px;border-radius:999px;font-weight:600;text-decoration:none;border:1px solid transparent;line-height:1.1;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,background-color .3s,color .3s}
.hca-site .pill--solid{background:var(--fg);color:#0a0b10;box-shadow:0 10px 26px -12px rgba(0,0,0,.7)}
.hca-site .pill--solid:hover{transform:translateY(-2px);background:#fff;box-shadow:0 16px 34px -12px rgba(255,159,69,.6)}
.hca-site .pill--ghost{border-color:rgba(246,243,238,.42);color:var(--fg)}
.hca-site .pill--ghost:hover{background:rgba(246,243,238,.14);transform:translateY(-2px)}
.hca-site .pill--sm{padding:10px 20px}
.hca-site .hx{min-height:100svh;display:grid;align-items:end;padding:clamp(108px,15vh,150px) 0 clamp(40px,8vh,80px)}
.hca-site .hx__grid{display:grid;gap:40px;align-items:end}
.hca-site .hx__h{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(2.7rem,8.2vw,6.6rem);line-height:.93;letter-spacing:.002em;margin:0}
.hca-site .hx .ln{display:block;white-space:nowrap;overflow:hidden;padding:.04em 0 .07em}
.hca-site .hx .ln>span{display:inline-block;transform:translateY(112%);animation:hca-rise 1.1s cubic-bezier(.16,1,.3,1) forwards}
.hca-site .hx .ln:nth-child(2)>span{animation-delay:.13s}
.hca-site .fd{opacity:0;transform:translateY(16px);animation:hca-fade 1s cubic-bezier(.16,1,.3,1) forwards;animation-delay:var(--d,.5s)}
.hca-site .hx__lead{margin:24px 0 0;max-width:40ch;font-size:clamp(1.08rem,2vw,1.3rem);color:var(--fg2)}
.hca-site .hx__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hca-site .hx__meta{margin:22px 0 0;color:var(--fg2);font-size:.95rem}
.hca-site .hx__photo{margin:0;width:min(100%,430px);border-radius:34px;overflow:hidden;box-shadow:0 50px 90px -34px rgba(0,0,0,.85),0 0 0 1px rgba(246,243,238,.12);transform:rotate(2.4deg)}
.hca-site .hx__photo img{display:block;width:100%;height:auto}
.hca-site .hx__par{justify-self:start}
@media (min-width:900px){.hca-site .hx__grid{grid-template-columns:1.3fr .7fr;gap:72px}
.hca-site .hx__par{justify-self:end}}
.hca-site .mq{overflow:hidden;padding:clamp(20px,4vw,44px) 0;display:grid;gap:clamp(4px,1vw,12px);border-block:1px solid var(--line);background:linear-gradient(180deg,rgba(5,6,9,.35),rgba(5,6,9,.15))}
.hca-site .mq__row{display:flex;width:max-content;font-family:var(--disp);text-transform:uppercase;font-size:clamp(3rem,10vw,8rem);line-height:1;will-change:transform}
.hca-site .mq__row span{padding-right:clamp(24px,4vw,56px);white-space:nowrap}
.hca-site .mq__row span::after{content:'';display:inline-block;width:.16em;height:.16em;margin-left:clamp(24px,4vw,56px);border-radius:50%;background:var(--ember);vertical-align:.28em}
.hca-site .mq__row--line span{color:transparent;-webkit-text-stroke:1.5px rgba(246,243,238,.75)}
.hca-site .sx{padding:clamp(64px,11vw,140px) 0}
.hca-site .sx--tight{padding-block:clamp(36px,6vw,72px)}
.hca-site .sx__head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:16px 32px}
.hca-site .sx__h{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(2.5rem,7vw,5rem);line-height:.98;letter-spacing:.004em;margin:0}
.hca-site .sx__h--big{font-size:clamp(3rem,10vw,7.5rem)}
.hca-site .stmt{font-weight:600;font-size:clamp(1.6rem,3.7vw,2.8rem);line-height:1.16;letter-spacing:-.02em;max-width:24em;margin:0;text-wrap:pretty}
.hca-site .stmt__sub{margin:24px 0 0;max-width:46ch;color:var(--fg2);font-size:1.12rem}
.hca-site .sx__h+.stmt__sub{margin-top:18px}
.hca-site .stmt__sub+p{margin:26px 0 0}
.hca-site .rows{list-style:none;margin:clamp(28px,5vw,56px) 0 0;padding:0}
.hca-site .rows li{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:4px 24px;padding:clamp(18px,2.6vw,28px) 0;border-top:1px solid var(--line);transition:padding .5s cubic-bezier(.16,1,.3,1),background-color .5s}
.hca-site .rows li:last-child{border-bottom:1px solid var(--line)}
.hca-site .rows__n{font-family:var(--disp);text-transform:uppercase;font-size:clamp(1.4rem,3vw,2.3rem);letter-spacing:.01em;line-height:1.1}
.hca-site .rows__p{font-family:var(--disp);font-size:clamp(1.8rem,3.6vw,2.8rem);text-align:right;line-height:1}
.hca-site .rows__t{grid-column:1;color:var(--fg2);font-size:.95rem}
.hca-site .rows li:hover{padding-inline:clamp(8px,1.6vw,22px);background:linear-gradient(90deg,rgba(255,159,69,.16),rgba(60,199,193,.1),transparent)}
.hca-site .strip .sx__head{margin-bottom:clamp(24px,4vw,44px)}
.hca-site .mos{list-style:none;margin:0;padding:0}
.hca-site .mos li{margin:0;position:relative}
.hca-site .mos a{display:block;height:100%;border-radius:26px;overflow:hidden;position:relative;background:#111;box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
.hca-site .mos img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.hca-site .mos a:hover img,.hca-site .mos a:focus-visible img{transform:scale(1.06)}
.hca-site .mos__cap{position:absolute;left:0;right:0;bottom:0;padding:44px 18px 16px;background:linear-gradient(transparent,rgba(0,0,0,.72));font-family:var(--disp);text-transform:uppercase;font-size:1.25rem;letter-spacing:.02em;color:#fff;transform:translateY(101%);transition:transform .45s cubic-bezier(.16,1,.3,1)}
.hca-site .mos a:hover .mos__cap,.hca-site .mos a:focus-visible .mos__cap{transform:none}
@media (hover:none){.hca-site .mos__cap{transform:none;font-size:1.05rem;padding-top:30px}}
.hca-site .strip .mos{display:flex;align-items:center;gap:clamp(14px,2vw,26px);overflow-x:auto;padding:8px clamp(20px,5vw,56px) 30px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:rgba(246,243,238,.4) transparent;-webkit-overflow-scrolling:touch}
.hca-site .strip .mos li{flex:none;height:clamp(300px,58vh,540px);scroll-snap-align:center}
.hca-site .strip .mos li:nth-child(even){height:clamp(250px,46vh,440px)}
.hca-site .strip .mos li:nth-child(3n){height:clamp(270px,52vh,490px)}
.hca-site .pg .mos{columns:2;column-gap:14px;margin-top:clamp(28px,5vw,56px)}
.hca-site .pg .mos li{break-inside:avoid;margin:0 0 14px}
@media (min-width:760px){.hca-site .pg .mos{columns:3;column-gap:22px}
.hca-site .pg .mos li{margin-bottom:22px}}
.hca-site .vis{display:grid;gap:clamp(32px,6vw,72px);align-items:center}
@media (min-width:860px){.hca-site .vis{grid-template-columns:1fr 1fr}}
.hca-site .vis__list{display:grid;gap:26px;margin:32px 0 0}
.hca-site .vis__list dt{color:var(--fg2);font-size:.95rem;margin-bottom:2px}
.hca-site .vis__list dd{margin:0;font-size:clamp(1.2rem,2.4vw,1.7rem);font-weight:600;letter-spacing:-.012em;line-height:1.28}
.hca-site .vis__cta{margin:32px 0 0}
.hca-site .vis__img{margin:0;border-radius:34px;overflow:hidden;box-shadow:0 50px 90px -40px rgba(0,0,0,.85)}
.hca-site .vis__img img{display:block;width:100%;height:auto}
.hca-site .vis__img figcaption{padding:14px 20px;font-size:.95rem;color:var(--fg2);background:rgba(10,11,16,.72)}
.hca-site .areas2{margin:0;font-weight:600;font-size:clamp(1.5rem,3.4vw,2.5rem);line-height:1.2;letter-spacing:-.02em;max-width:24em;text-wrap:pretty}
.hca-site .areas2 span{color:var(--fg2)}
.hca-site .pg .areas2{margin-top:clamp(56px,9vw,110px)}
.hca-site .pg{padding:clamp(120px,18vw,190px) 0 clamp(48px,8vw,100px)}
.hca-site .pg h1{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(3rem,10vw,7rem);line-height:.96;margin:0;text-wrap:balance}
.hca-site .pg .lead{margin:22px 0 0;max-width:46ch;font-size:1.2rem;color:var(--fg2)}
.hca-site .pg h2{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(1.9rem,4.6vw,3rem);letter-spacing:.005em;margin:clamp(40px,7vw,72px) 0 8px}
.hca-site .pg .prose{margin-top:28px;max-width:62ch;font-size:1.18rem;color:var(--fg2)}
.hca-site .pg .prose p{margin:0 0 1.1em}
.hca-site .pg__cta{margin:clamp(32px,6vw,56px) 0 0}
.hca-site .team2{list-style:none;padding:0;margin:18px 0 0}
.hca-site .team2 li{font-family:var(--disp);text-transform:uppercase;font-size:clamp(2.4rem,8vw,5rem);line-height:1.05;padding:.12em 0;border-top:1px solid var(--line)}
.hca-site .team2 li:last-child{border-bottom:1px solid var(--line)}
.hca-site .grp{margin-top:clamp(28px,5vw,48px)}
.hca-site .prices2{width:100%;border-collapse:collapse;margin-top:12px}
.hca-site .prices2 thead{position:absolute;left:-9999px}
.hca-site .prices2 tr{display:grid;grid-template-columns:1fr auto;gap:2px 24px;padding:clamp(16px,2.4vw,24px) 0;border-top:1px solid var(--line);transition:padding .5s cubic-bezier(.16,1,.3,1),background-color .5s}
.hca-site .prices2 tr:last-child{border-bottom:1px solid var(--line)}
.hca-site .prices2 th{grid-column:1;text-align:left;font-weight:600;font-size:clamp(1.15rem,2.4vw,1.55rem);letter-spacing:-.012em}
.hca-site .prices2 td{padding:0}
.hca-site .prices2 td:nth-child(2){grid-column:1;color:var(--fg2);font-size:.95rem}
.hca-site .prices2 td.num{grid-row:1/span 2;grid-column:2;align-self:center;text-align:right;font-family:var(--disp);font-size:clamp(1.7rem,3.4vw,2.6rem);line-height:1}
.hca-site .prices2 tr:hover{padding-inline:clamp(8px,1.4vw,18px);background:linear-gradient(90deg,rgba(255,159,69,.16),rgba(60,199,193,.1),transparent)}
.hca-site .foot{padding:clamp(48px,8vw,90px) 0 28px;margin-top:clamp(24px,6vw,72px);border-top:1px solid var(--line);background:linear-gradient(transparent,rgba(5,6,9,.6))}
.hca-site .foot__big{font-family:var(--disp);text-transform:uppercase;font-size:clamp(2.6rem,10vw,7.6rem);line-height:.95;margin:0 0 clamp(28px,5vw,56px)}
.hca-site .foot__cols{display:grid;gap:26px}
@media (min-width:760px){.hca-site .foot__cols{grid-template-columns:repeat(4,1fr)}}
.hca-site .foot__l{color:var(--fg2);font-size:.9rem;margin:0 0 6px}
.hca-site .foot p{margin:0}
.hca-site .foot__legal{margin:clamp(32px,6vw,56px) 0 0!important;color:var(--fg2);font-size:.9rem}
.hca-site dialog.lb{border:0;padding:0;background:transparent;max-width:100vw;max-height:100vh;width:100%;height:100%;cursor:zoom-out}
.hca-site dialog.lb[open]{display:grid;place-items:center}
.hca-site dialog.lb::backdrop{background:rgba(6,7,10,.94)}
.hca-site .lb img{max-width:92vw;max-height:86vh;object-fit:contain;border-radius:18px}
.hca-site .lb__x{position:fixed;top:14px;right:14px;background:var(--fg);color:#0a0b10;border:0;border-radius:999px;padding:12px 22px;font:600 1rem/1 var(--font,system-ui);cursor:pointer}
.js .hca-site [data-reveal=clip]{opacity:1;transform:none;clip-path:inset(0 0 100% 0 round 26px);transition:clip-path 1.2s cubic-bezier(.16,1,.3,1)}
.js .hca-site [data-reveal=clip].in{clip-path:inset(0 0 0 0 round 26px)}
@media (prefers-reduced-motion:reduce){.hca-site .hx .ln>span{transform:none;animation:none}
.hca-site .fd{opacity:1;transform:none;animation:none}
.hca-site .mos img,.hca-site .mos__cap,.hca-site .pill,.hca-site .rows li,.hca-site .prices2 tr{transition:none}
.hca-site .mos a:hover img{transform:none}
.js .hca-site [data-reveal=clip]{clip-path:none;transition:none}}
