
/* Layout: dark warm studio canvas, split hero (thesis left, live wireframe-to-site stage right), demo strip, approach, deal, talk */
:root{
  --bg:#121110; --panel:#1A1817; --line:#2E2A27; --wire:#5E5852;
  --fg:#F4EFE9; --muted:#A8A098; --coral:#FF4300; --coral-ink:#1C0B08;
  --f-display:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;
  --f-serif:"Fraunces",Georgia,"Times New Roman",serif;
  --f-brand-serif:"Cormorant Garamond",Georgia,serif;
  --f-brand-heavy:"Archivo Black","Arial Black",Impact,sans-serif;
  --f-hand:"Caveat","Bradley Hand",cursive;
  color-scheme:dark;
}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--fg);font-family:var(--f-display);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--coral);outline-offset:3px;border-radius:6px}
.wrap{max-width:1320px;margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
@media(min-width:760px){.wrap{padding-left:max(48px,env(safe-area-inset-left,0px));padding-right:max(48px,env(safe-area-inset-right,0px))}}
.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:500}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--coral);color:var(--coral-ink);text-decoration:none;font-weight:700;border:0;border-radius:999px;padding:14px 26px;font-size:16px;cursor:pointer;transition:transform .2s,background .2s}
.btn:hover{transform:translateY(-2px);background:#E83D00}
.btn.sm{padding:10px 20px;font-size:14px}

/* nav */
nav.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:28px}
.logo{font-weight:800;font-size:28px;letter-spacing:-.04em;text-decoration:none}
.links{display:flex;align-items:center;gap:32px;font-size:15px}
.links a:not(.btn){text-decoration:none;color:var(--fg);opacity:.85}
.links a:not(.btn):hover{opacity:1}
@media(max-width:720px){.links a:not(.btn){display:none}}

/* hero */
.hero{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:40px;align-items:center;padding-block:40px 72px;border-bottom:1px solid var(--line)}
.hero-copy{display:flex;flex-direction:column;gap:26px;min-width:0}
h1{font-weight:800;font-size:clamp(52px,7.4vw,112px);line-height:.88;letter-spacing:-.045em;margin:0;text-wrap:balance}
h1 .c{color:var(--coral);display:block}
.lede{font-size:clamp(17px,1.5vw,20px);color:#D9D2CA;max-width:30em;margin:0}
@media(max-width:960px){.hero{grid-template-columns:minmax(0,1fr);gap:48px}}

/* stage */
.visual{--pos:50;min-width:0}
.stage{position:relative;container-type:inline-size;transform:perspective(1900px) rotateY(-9deg) rotateX(2deg);transform-origin:60% 50%;transition:transform .6s}
.stage:hover{transform:perspective(1900px) rotateY(-4deg) rotateX(1deg)}
@media(max-width:960px){.stage,.stage:hover{transform:none}}
.screen{position:relative;border-radius:1.6cqw;overflow:hidden;border:1px solid var(--line);background:var(--panel);cursor:ew-resize;touch-action:pan-y;user-select:none}
.chrome{display:flex;align-items:center;gap:.9cqw;height:4cqw;padding-inline:1.8cqw;border-bottom:1px solid var(--line);background:#161413}
.chrome i{width:1cqw;height:1cqw;border-radius:50%;border:1px solid var(--wire)}
.chrome .url{margin-left:1.6cqw;font-size:1.25cqw;color:var(--muted);letter-spacing:.02em}
.body-area{position:relative;height:60cqw}
.layer{position:absolute;inset:0}
.site-layer{z-index:1;clip-path:inset(0 0 0 calc(var(--pos) * 1%))}
.handle{z-index:3;position:absolute;top:4cqw;bottom:0;left:calc(var(--pos) * 1%);width:0;pointer-events:none}
.handle::before{content:"";position:absolute;inset:0 auto 0 -1px;width:2px;background:var(--fg);opacity:.85}
.knob{pointer-events:auto;position:absolute;top:50%;left:0;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:var(--fg);color:var(--bg);border:0;display:grid;place-items:center;cursor:ew-resize}
.knob svg{width:20px;height:20px}

/* wireframe layer */
.wire{isolation:isolate;display:grid;grid-template-rows:8cqw 34cqw 18cqw;background:#151312}
.w-nav{display:flex;align-items:center;justify-content:space-between;padding-inline:3cqw;border-bottom:1px solid var(--line)}
.w-brand{font-size:1.5cqw;letter-spacing:.08em;color:#CFC7BE}
.w-lines{display:flex;gap:1.4cqw}.w-lines i{width:4cqw;height:.35cqw;background:var(--wire)}
.w-hero{display:grid;grid-template-columns:42% 1fr;gap:3cqw;padding:3cqw}
.w-copy{display:flex;flex-direction:column;gap:1.4cqw;justify-content:center}
.w-copy i{display:block;height:.45cqw;background:var(--wire)}
.w-copy .l1{width:90%;height:2.6cqw;background:none;border:1px solid var(--wire)}
.w-copy .l2{width:70%;height:2.6cqw;background:none;border:1px solid var(--wire)}
.w-copy .l3{width:60%}.w-copy .bt{width:30%;height:2.4cqw;background:none;border:1px solid var(--wire);border-radius:2cqw}
.xbox{border:1px solid var(--wire);background:
  linear-gradient(to top right,transparent calc(50% - .6px),var(--wire) 50%,transparent calc(50% + .6px)),
  linear-gradient(to bottom right,transparent calc(50% - .6px),var(--wire) 50%,transparent calc(50% + .6px))}
.w-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:2cqw;padding:0 3cqw 3cqw}

/* finished site layer */
.site{display:grid;grid-template-rows:8cqw 34cqw 18cqw;background:var(--s-hdr);color:var(--s-ink);height:100%}
.s-nav{display:flex;align-items:center;gap:2.4cqw;padding-inline:3cqw}
.s-brand{font-size:2.9cqw;line-height:1;margin-right:auto;white-space:nowrap}
.s-links{display:flex;gap:2cqw;font-size:1.25cqw;opacity:.8}
.s-pill{font-size:1.2cqw;border:1px solid currentColor;border-radius:3cqw;padding:.8cqw 1.8cqw;white-space:nowrap}
.s-hero{position:relative;overflow:hidden}
.s-copy{position:absolute;left:3.5cqw;top:50%;transform:translateY(-50%);width:44%;color:var(--s-hero-ink);z-index:2}
.s-copy h3{margin:0 0 1.6cqw;font-weight:400;font-size:5.6cqw;line-height:.98;letter-spacing:-.02em}
.s-copy p{margin:0 0 2.2cqw;font-size:1.45cqw;line-height:1.4;opacity:.85;font-family:var(--f-display)}
.s-btn{display:inline-block;font-family:var(--f-display);font-size:1.25cqw;padding:1cqw 2.2cqw;border-radius:3cqw;background:var(--s-btn);color:var(--s-btn-ink)}
.s-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2cqw;padding:1.2cqw}
.s-tiles>div{position:relative;overflow:hidden;border-radius:.6cqw}
.tile-note{display:grid;place-items:center;background:var(--s-hdr);border:1px solid color-mix(in srgb,var(--s-ink) 18%,transparent);font-family:var(--f-hand);font-size:2.6cqw;line-height:1.05;text-align:center;padding:1cqw;transform:rotate(-1deg)}
.tile-stat{display:flex;flex-direction:column;justify-content:flex-end;gap:.4cqw;padding:2cqw;background:color-mix(in srgb,var(--s-ink) 8%,var(--s-hdr))}
.tile-stat b{font-size:4cqw;line-height:1;font-weight:400}
.tile-stat span{font-size:1.2cqw;opacity:.75;font-family:var(--f-display)}
.serif{font-family:var(--f-brand-serif)}
.heavy{font-family:var(--f-brand-heavy);letter-spacing:-.01em;text-transform:uppercase}


/* Three coordinated hero concepts: editorial bakery, industrial service, beauty studio. */
.visual[data-design="diesel"] .site,.wire[data-design="diesel"]{grid-template-rows:8cqw 38cqw 14cqw}
.wire[data-design="diesel"] .w-hero{grid-template-columns:1fr;position:relative}
.wire[data-design="diesel"] .w-hero>.xbox{position:absolute;inset:2cqw}
.wire[data-design="diesel"] .w-copy{position:relative;z-index:1;width:48%;padding:2cqw;background:#151312e8}
.visual[data-design="diesel"] .s-tiles,.wire[data-design="diesel"] .w-tiles{grid-template-columns:1fr 1fr 1.4fr}
.visual[data-design="diesel"] .s-copy{width:53%}
.visual[data-design="diesel"] .s-copy h3{font-size:4.5cqw;line-height:1.04}
.visual[data-design="diesel"] .s-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101110 0%,#101110eb 32%,#10111075 58%,transparent 80%);pointer-events:none}
.visual[data-design="diesel"] .s-copy p{max-width:30cqw;color:#f2eee8;opacity:1}
.visual[data-design="diesel"] .s-copy{z-index:2}
.visual[data-design="diesel"] .s-btn,.visual[data-design="diesel"] .s-pill{border-radius:.3cqw}
.visual[data-design="willow"] .site,.wire[data-design="willow"]{grid-template-rows:9cqw 34cqw 17cqw}
.visual[data-design="willow"] .s-hero>.a{left:3cqw;right:48.68cqw;top:3cqw;bottom:3cqw;border-radius:12cqw 12cqw 0 0}
.visual[data-design="willow"] .s-tiles{gap:2cqw;padding:0 3cqw 3cqw}
.visual[data-design="willow"] .s-tiles>div{border-radius:0}
.visual[data-design="willow"] .s-copy{left:54.32cqw;width:42.68cqw}
.visual[data-design="willow"] .s-copy h3{font-size:5cqw}
.wire[data-design="willow"] .w-hero{grid-template-columns:48.32cqw 42.68cqw}
.wire[data-design="willow"] .w-hero>.xbox{grid-column:1;grid-row:1;border-radius:12cqw 12cqw 0 0}
.wire[data-design="willow"] .w-copy{grid-column:2;grid-row:1}
.visual[data-design="willow"] .s-tiles,.wire[data-design="willow"] .w-tiles{grid-template-columns:1fr 1.6fr 1fr}

.visual[data-design="bread"] .tile-stat b{font-family:var(--f-brand-serif);font-size:3.5cqw}
.visual[data-design="bread"] .s-tiles>div:nth-child(2){background:#2B1A0E;color:#F6EBDD}
/* illustrations */
.a{position:absolute;inset:0;overflow:hidden}
.a-bread{background:radial-gradient(120% 100% at 72% 62%,#6A3E1C 0%,#33190A 52%,#160A04 100%)}
.a-bread .loaf{position:absolute;width:56%;aspect-ratio:1.3;right:2%;top:24%;border-radius:50% 50% 44% 44% / 60% 60% 40% 40%;
  background:radial-gradient(ellipse at 36% 28%,#F6D7A0 0%,#E0A35C 20%,#B26A2E 46%,#73391480 72%,#3A1B08 100%),#7A3D16;
  box-shadow:inset -2.4cqw -2.8cqw 4cqw rgba(30,10,2,.65),0 3cqw 4cqw rgba(0,0,0,.55)}
.a-bread .loaf i{position:absolute;inset:16% 12%;border-radius:50%;
  background:linear-gradient(118deg,transparent 28%,rgba(255,238,205,.9) 30%,rgba(255,230,190,.35) 34%,transparent 37%),
  linear-gradient(118deg,transparent 50%,rgba(255,238,205,.85) 52%,rgba(255,230,190,.3) 56%,transparent 59%),
  radial-gradient(circle at 30% 30%,rgba(255,255,255,.32),transparent 40%)}
.a-bread .crumbs{position:absolute;inset:auto 0 0 0;height:30%;background:radial-gradient(circle at 20% 70%,#C98B4A 0 .4cqw,transparent .5cqw),radial-gradient(circle at 38% 82%,#A9652C 0 .5cqw,transparent .6cqw),radial-gradient(circle at 30% 60%,#D9A262 0 .3cqw,transparent .4cqw)}
.a-bread.b2 .loaf{width:110%;right:-30%;top:8%}
.a-dough{background:linear-gradient(160deg,#D9C6A8,#B99E7B)}
.a-dough .ball{position:absolute;width:50%;aspect-ratio:1.25;left:24%;top:30%;border-radius:50%;background:radial-gradient(ellipse at 38% 32%,#FFF7E8,#EBDCC1 55%,#C9B08D);box-shadow:0 1.5cqw 2cqw rgba(60,40,20,.35)}
.a-truck{background:linear-gradient(180deg,#24130D 0%,#6E2F16 36%,#E2733A 58%,#8B3A18 64%,#1E100A 70%,#0D0806 100%)}
.a-truck .sun{position:absolute;width:14%;aspect-ratio:1;border-radius:50%;left:56%;top:44%;background:radial-gradient(circle,#FFD7A0,#FF9A50 60%,transparent 72%)}
.a-truck svg{position:absolute;right:2%;bottom:6%;width:62%}
.a-truck.t2 svg{width:150%;right:-30%;bottom:-6%}
.a-bottles{background:linear-gradient(160deg,#F1E8DC,#D7C7B2)}
.a-bottles svg{position:absolute;right:0;bottom:0;width:62%}
.a-bottles.o2 svg{width:140%;right:-20%}

/* stepper */
.stepper{position:relative;margin:34px auto 0;width:min(92%,560px)}
.track{position:absolute;left:0;right:0;top:8px;height:1px;background:var(--line)}
.fill{position:absolute;left:0;top:8px;height:1px;background:var(--coral);width:calc((100 - var(--pos)) * 1%)}
.steps{position:relative;display:flex;justify-content:space-between}
.steps button{background:none;border:0;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:14px;color:var(--muted);width:90px;margin:0 -45px}
.steps button::before{content:"";width:16px;height:16px;border-radius:50%;background:var(--bg);border:2px solid var(--wire);transition:all .25s}
.steps button.done::before{background:var(--coral);border-color:var(--coral)}
.steps button.now{color:var(--fg)}
.steps button.now::before{box-shadow:0 0 0 5px rgba(255,67,0,.22)}

/* demos */
section{padding-block:80px}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px 48px;margin-bottom:36px}
h2{font-family:var(--f-serif);font-weight:300;font-size:clamp(36px,4.4vw,60px);line-height:1.02;letter-spacing:-.02em;margin:14px 0 0;text-wrap:balance}
.sec-note{color:#CFC7BE;max-width:28em;margin:0}
.arrows{display:flex;gap:12px}
.arrows button{width:48px;height:48px;border-radius:50%;background:none;border:1px solid var(--wire);display:grid;place-items:center;cursor:pointer;transition:border-color .2s,background .2s}
.arrows button:hover{border-color:var(--fg);background:var(--panel)}
.arrows svg{width:18px;height:18px}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media(max-width:860px){.cards{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:82%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.card{scroll-snap-align:start}}
.card{position:relative;container-type:inline-size;aspect-ratio:1.45;max-width:100%;border-radius:14px;overflow:hidden;border:1px solid var(--line);cursor:pointer;text-align:left;padding:0;background:var(--panel);transition:transform .35s,border-color .35s}
.card:hover{transform:translateY(-4px)}
.card.on{border-color:var(--coral)}
.card .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 40%,rgba(0,0,0,.72))}
.card .c-brand{position:absolute;left:6cqw;top:7cqw;font-size:10cqw;line-height:.9;color:#F6EEE4;z-index:2}
.card .c-brand.heavy{font-size:8cqw}
.card .c-brand.heavy::after{content:"";display:inline-block;width:6cqw;height:1.4cqw;background:var(--coral);margin-left:2cqw;vertical-align:middle}
.card.dark-ink .c-brand{color:#2E2A24;left:auto;right:6cqw;text-align:right}
.card .c-meta{position:absolute;left:6cqw;right:6cqw;bottom:6cqw;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;z-index:2;color:#F4EFE9}
.card .c-meta b{display:block;font-weight:500;font-size:16px}
.card .c-meta span{font-size:13px;color:#D6CEC5}
.card .go{flex:none;width:40px;height:40px;border-radius:50%;border:1.5px solid #F4EFE9;display:grid;place-items:center}
.card .go svg{width:16px;height:16px}
.tag{position:absolute;right:5cqw;top:5cqw;z-index:2;font-size:11px;letter-spacing:.14em;text-transform:uppercase;background:rgba(18,17,16,.7);color:#F4EFE9;padding:5px 10px;border-radius:999px}
.card.dark-ink .tag{right:auto;left:5cqw}

/* approach */
.approach{border-top:1px solid var(--line)}
.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media(max-width:860px){.steps-grid{grid-template-columns:minmax(0,1fr)}}
.step{border-top:2px solid var(--wire);padding-top:22px;display:flex;flex-direction:column;gap:10px}
.step:last-child{border-color:var(--coral)}
.step .when{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--coral);font-weight:500}
.step h3{margin:0;font-size:28px;font-weight:700;letter-spacing:-.03em}
.step p{margin:0;color:#CFC7BE;max-width:32em}

/* deal */
.deal{background:var(--panel);border-block:1px solid var(--line)}
.deal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}
@media(max-width:960px){.deal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.deal-grid{grid-template-columns:minmax(0,1fr)}}
.deal-grid>div{background:var(--bg);padding:28px 24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.deal-grid svg{width:28px;height:28px;color:var(--coral)}
.deal-grid h3{margin:6px 0 0;font-size:20px;font-weight:700;letter-spacing:-.02em}
.deal-grid p{margin:0;color:#CFC7BE;font-size:15px}

/* talk */
.talk{text-align:left}
.talk-inner{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:end}
@media(max-width:860px){.talk-inner{grid-template-columns:minmax(0,1fr)}}
.big{font-weight:800;font-size:clamp(44px,6vw,92px);line-height:.9;letter-spacing:-.045em;margin:0;text-wrap:balance}
.big span{color:var(--coral)}
.contact{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.email{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:20px}
.email code{font-family:var(--f-display);user-select:all}
.copy{background:none;border:1px solid var(--wire);border-radius:999px;padding:6px 14px;font-size:13px;cursor:pointer}
.copy:hover{border-color:var(--fg)}
footer{border-top:1px solid var(--line);padding-block:28px;color:var(--muted);font-size:14px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}

/* website types: mini site previews, line art plays in the section header */
.types-sec{border-top:1px solid var(--line)}
.types-head{position:relative;min-height:420px;padding-block:24px 8px;align-items:flex-end}
.types-head>*{position:relative;z-index:1}
.type-stage{position:absolute!important;inset:-24px 0 -12px 0;overflow:hidden;z-index:0!important;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.28) 0%,#000 55%);mask-image:linear-gradient(90deg,rgba(0,0,0,.28) 0%,#000 55%)}
.stg{position:absolute;inset:0;opacity:0;transition:opacity .7s ease}
.stg.on{opacity:1}
.stg svg{fill:none;stroke-linecap:round;stroke-linejoin:round}
.stg svg.wide{position:absolute;inset:0;width:100%;height:100%}
.ph{position:absolute;top:0;right:0;height:100%;aspect-ratio:1344/752;-webkit-mask-image:linear-gradient(90deg,transparent,#000 24%);mask-image:linear-gradient(90deg,transparent,#000 24%)}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;clip-path:inset(0 100% 0 0);transition:clip-path 0s linear .75s}
.ph svg.lines{position:absolute;inset:0;width:100%;height:100%;clip-path:inset(0 0 0 0);transition:clip-path 0s linear .75s}
.ph svg.lines path{vector-effect:non-scaling-stroke;stroke-width:1.4px}
.ph .sweep{position:absolute;top:0;bottom:0;left:0;width:2px;background:var(--coral);opacity:0;box-shadow:0 0 18px 2px rgba(255,67,0,.55)}
.stg.play .ph img{clip-path:inset(0 0 0 0);transition:clip-path 1.6s cubic-bezier(.65,0,.35,1) 1.9s}
.stg.play .ph svg.lines{clip-path:inset(0 0 0 100%);transition:clip-path 1.6s cubic-bezier(.65,0,.35,1) 1.9s}
.stg.play .ph .sweep{animation:sweep 1.6s cubic-bezier(.65,0,.35,1) 1.9s forwards}
@keyframes sweep{0%{left:0;opacity:0}8%{opacity:1}88%{opacity:1}100%{left:100%;opacity:0}}
.m-photo{position:relative;align-self:stretch;border-radius:1.4cqw;overflow:hidden}
.m-photo img{width:100%;height:100%;object-fit:cover;object-position:78% 55%;display:block;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.type-card.play .m-photo img{transform:scale(1.07)}
.types{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px) / 3);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;padding-block:6px;cursor:grab}
.types::-webkit-scrollbar{display:none}
.types.dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}
.types.dragging .type-card{pointer-events:none}
.type-card{scroll-snap-align:start}
@media(max-width:960px){.types{grid-auto-columns:calc((100% - 20px) / 2.2)}}
@media(max-width:600px){.types{grid-auto-columns:86%}}
.types-bar{display:flex;align-items:center;gap:20px;margin-top:22px}
.types-track{position:relative;flex:1;height:2px;background:var(--line);border-radius:2px;overflow:hidden}
.types-thumb{position:absolute;top:0;bottom:0;left:0;background:var(--coral);border-radius:2px;transition:left .15s linear,width .15s linear}
.types-count{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;min-width:48px}
.type-card{border:1px solid var(--line);border-radius:14px;background:var(--panel);display:flex;flex-direction:column;gap:18px;padding:14px 14px 22px;transition:border-color .5s,background .5s;outline-offset:3px;min-width:0}
.type-card.play{border-color:rgba(255,67,0,.5);background:#1D1A18}
.tc-body{display:flex;flex-direction:column;gap:8px;padding-inline:8px}
.tc-body .eyebrow{font-size:11px}
.tc-body h3{margin:0;font-size:24px;font-weight:700;letter-spacing:-.03em;line-height:1.1}
.tc-body p{margin:0 0 8px;color:#CFC7BE;font-size:15px}
.tc-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips span{font-size:12px;border:1px solid var(--wire);border-radius:999px;padding:4px 10px;color:#D9D2CA}
.tc-link{font-size:14px;font-weight:500;text-decoration:none;transition:color .3s}
.type-card.play .tc-link{color:var(--coral)}
.mini{container-type:inline-size;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--m-bg);color:var(--m-ink);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.type-card.play .mini{transform:translateY(-4px)}
.m-chrome{height:6cqw;display:flex;align-items:center;gap:1.4cqw;padding-inline:3cqw;background:#161413;border-bottom:1px solid var(--line)}
.m-chrome i{width:1.6cqw;height:1.6cqw;border-radius:50%;border:1px solid var(--wire)}
.m-chrome span{margin-left:2cqw;font-size:2.3cqw;color:var(--muted)}
.m-nav{display:flex;align-items:center;gap:3cqw;padding:3.5cqw 5cqw 0}
.m-brand{font-size:4cqw;line-height:1;margin-right:auto;white-space:nowrap}
.m-dash{display:flex;gap:2cqw}.m-dash i{width:6cqw;height:.6cqw;background:currentColor;opacity:.45}
.m-pill{font-size:2.2cqw;border:1px solid currentColor;border-radius:5cqw;padding:1cqw 2.6cqw;white-space:nowrap}
.m-hero{display:grid;grid-template-columns:54% minmax(0,1fr);align-items:center;gap:2cqw;padding:2cqw 5cqw 3cqw;height:42cqw}
.m-hero h4{font-size:6.2cqw;line-height:1;margin:0 0 2cqw;font-weight:400;letter-spacing:-.02em}
.m-hero h4.heavy{font-size:5cqw}
.m-hero h4.bold{font-family:var(--f-display);font-weight:800;letter-spacing:-.04em}
.m-hero p{font-size:2.4cqw;opacity:.8;margin:0 0 3cqw;line-height:1.35}
.m-btn{display:inline-block;font-size:2.3cqw;padding:1.5cqw 3.4cqw;border-radius:5cqw;background:var(--m-accent);color:var(--m-btn-ink)}
.m-hero svg{width:100%;height:100%;fill:none;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.mini .ghost{stroke:var(--m-ink);opacity:.2;stroke-width:1.6}
.mini .live{stroke:var(--m-accent);stroke-width:2.2}
.mini .live .f{stroke:var(--m-ink)}
.mini .live .drip{fill:var(--m-ink)}
.m-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid color-mix(in srgb,var(--m-ink) 16%,transparent)}
.m-strip div{padding:2.6cqw 5cqw;display:flex;flex-direction:column;gap:.6cqw}
.m-strip div+div{border-left:1px solid color-mix(in srgb,var(--m-ink) 16%,transparent)}
.m-strip b{font-size:3.6cqw;font-weight:500;line-height:1}
.m-strip span{font-size:2cqw;opacity:.7}
.ghost{stroke:var(--wire);stroke-width:1.4;opacity:.5}
.ghost .f,.ghost .drip{display:none}
.live{stroke:var(--coral);stroke-width:1.8}
.live .d{stroke-dasharray:1 1;stroke-dashoffset:1;opacity:0;transition:stroke-dashoffset 0s linear .75s,opacity 0s linear .75s}
.type-card .live .d{transition:stroke-dashoffset .45s ease-in,opacity .45s ease}
.play .live .d,.type-card.play .live .d{stroke-dashoffset:0;opacity:1;transition:stroke-dashoffset 1.2s cubic-bezier(.6,0,.2,1) var(--d,0s),opacity .8s ease var(--d,0s)}
.live .f{stroke:var(--fg);stroke-width:3.5;stroke-dasharray:.025 .075;opacity:0;transition:opacity .3s}
.play .live .f{opacity:.75;transition:opacity .8s var(--d,0s);animation:flow 2.2s linear infinite}
.live .drip{fill:var(--fg);stroke:none;opacity:0}
.play .live .drip{animation:drip 1.4s ease-in var(--d,0s) infinite}
.spin,.spinr{transform-box:fill-box;transform-origin:center}
.play .live .spin{animation:spin 8s linear infinite}
.play .live .spinr{animation:spin 4s linear infinite reverse}
.play .live .rise{animation:rise 2.6s ease-in-out calc(var(--d,0s) + .9s) infinite}
.play .live .ray{animation:flicker 1.1s steps(2) calc(var(--d,0s) + .8s) infinite}
@keyframes flow{to{stroke-dashoffset:-1}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes rise{0%{transform:translateY(0);opacity:1}70%{opacity:.25}100%{transform:translateY(-28px);opacity:0}}
@keyframes drip{0%{transform:translateY(0);opacity:0}15%{opacity:1}100%{transform:translateY(46px);opacity:0}}
@keyframes flicker{50%{opacity:.2}}


/* photo art */
.a-photo{background:#0B0806}
.a-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* mobile header stage */
@media(max-width:760px){
  .types-head{min-height:0}
  .type-stage{position:relative!important;inset:auto!important;order:2;width:100%;aspect-ratio:1344/752;border-radius:12px;-webkit-mask-image:none;mask-image:none;background:var(--panel)}
  .ph{left:0;width:100%;height:100%;-webkit-mask-image:none;mask-image:none}
}

/* pricing */
.price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
@media(max-width:900px){.price-grid{grid-template-columns:minmax(0,1fr)}}
.plan{border:1px solid var(--line);border-radius:14px;padding:28px 26px;display:flex;flex-direction:column;gap:18px;background:var(--bg);min-width:0}
.plan.pop{border-color:var(--coral);background:var(--panel)}
.plan-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.plan-name{font-size:20px;font-weight:700;letter-spacing:-.02em}
.badge{font-size:11px;letter-spacing:.14em;text-transform:uppercase;background:var(--coral);color:var(--coral-ink);padding:5px 10px;border-radius:999px;font-weight:500}
.plan-price{display:flex;align-items:baseline;gap:8px}
.plan-price b{font-size:48px;font-weight:800;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.plan-price span{color:var(--muted);font-size:14px}
.plan p{margin:0;color:#CFC7BE;font-size:15px}
.plan ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:15px;flex:1}
.plan li{display:flex;gap:10px;align-items:flex-start}
.plan li::before{content:"";flex:none;width:14px;height:8px;margin-top:6px;border-left:2px solid var(--coral);border-bottom:2px solid var(--coral);transform:rotate(-45deg)}
.plan .btn{justify-content:center}
.plan:not(.pop) .btn{background:transparent;color:var(--fg);border:1px solid var(--wire)}
.plan:not(.pop) .btn:hover{border-color:var(--fg);background:var(--panel)}
.care{margin-top:20px;border:1px dashed var(--wire);border-radius:14px;padding:22px 26px;display:flex;flex-wrap:wrap;gap:12px 32px;align-items:center;justify-content:space-between}
.care b{font-size:18px}
.care p{margin:0;color:#CFC7BE;max-width:44em}
.fine{margin-top:14px;font-size:13px;color:var(--muted)}

/* about */
.about-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:center}
@media(max-width:860px){.about-grid{grid-template-columns:minmax(0,1fr);gap:32px}}
.portrait{position:relative;aspect-ratio:4/5;max-width:100%;border-radius:14px;overflow:hidden;background:var(--panel);border:1px solid var(--line);display:grid;place-items:center}
.portrait .mono{font-weight:800;font-size:clamp(120px,16vw,220px);letter-spacing:-.08em;line-height:1;color:var(--coral)}
.portrait .cap{position:absolute;left:18px;bottom:16px;font-size:13px;color:var(--muted)}
.about-copy{display:flex;flex-direction:column;gap:20px;min-width:0}
.about-copy p{margin:0;color:#D9D2CA;font-size:18px;max-width:34em}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-top:8px}
@media(max-width:520px){.facts{grid-template-columns:minmax(0,1fr)}}
.facts div{background:var(--bg);padding:16px 18px;display:flex;flex-direction:column;gap:2px}
.facts b{font-size:16px;font-weight:700}
.facts span{font-size:14px;color:var(--muted)}

/* lead form */
.lead-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:40px;align-items:start;margin-top:40px}
@media(max-width:900px){.lead-grid{grid-template-columns:minmax(0,1fr)}}
.lead-form{display:flex;flex-direction:column;gap:16px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:26px}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:13px;color:var(--muted);letter-spacing:.02em}
.field input,.field select{font:inherit;font-size:16px;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:12px 14px;width:100%;min-width:0}
.field input::placeholder{color:#6E6760}
.field input:focus,.field select:focus{outline:none;border-color:var(--coral)}
.row2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
@media(max-width:520px){.row2{grid-template-columns:minmax(0,1fr)}}
.err{font-size:13px;color:#FF8A7A;min-height:0}
.lead-form .btn{justify-content:center;margin-top:4px}
.lead-note{font-size:13px;color:var(--muted);margin:0}
.preview-wrap{display:flex;flex-direction:column;gap:12px;position:sticky;top:24px}
.preview-wrap .eyebrow{display:flex;align-items:center;gap:8px}
.preview-wrap .eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--coral);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{opacity:.3}}
.m-wire{align-self:stretch;border-radius:1.4cqw}
.done{display:flex;flex-direction:column;gap:14px}
.done h3{margin:0;font-size:26px;font-weight:700;letter-spacing:-.03em}
.done p{margin:0;color:#CFC7BE}
.done pre{margin:0;white-space:pre-wrap;font-family:var(--f-display);font-size:15px;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px 16px;color:var(--fg)}
.done .acts{display:flex;flex-wrap:wrap;gap:10px}
.ghost-btn{background:none;border:1px solid var(--wire);color:var(--fg);border-radius:999px;padding:10px 18px;font:inherit;font-size:14px;cursor:pointer}
.ghost-btn:hover{border-color:var(--fg)}

.plan.addon{border-style:dashed;border-color:var(--wire)}
.badge.alt{background:transparent;color:var(--coral);border:1px solid var(--coral)}
.bk-sec{border-top:1px solid var(--line)}
.bk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media(max-width:1000px){.bk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.bk-grid{grid-template-columns:minmax(0,1fr)}}
.bk-card{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:24px;display:flex;flex-direction:column;gap:12px;min-width:0;transition:border-color .3s,transform .3s}
.bk-card:hover{border-color:rgba(255,67,0,.6);transform:translateY(-3px)}
.bk-card .who{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.bk-card h3{margin:0;font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.15}
.bk-card p{margin:0;color:#CFC7BE;font-size:15px}
.bk-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:14px;flex:1}
.bk-card li{display:flex;gap:8px}
.bk-card li::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--coral);margin-top:8px}
.bk-card a{font-weight:500;font-size:14px;text-decoration:none;color:var(--coral)}
.bk-card.custom{border-style:dashed;background:transparent;justify-content:center}
.bk-also{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.bk-also span{font-size:13px;border:1px solid var(--line);border-radius:999px;padding:6px 12px;color:#D9D2CA}
[hidden]{display:none!important}
.mini{position:relative}
.type-card.has-demo{cursor:pointer}
.view-pill{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%) scale(.9);opacity:0;z-index:3;background:var(--coral);color:var(--coral-ink);font-family:var(--f-display);font-weight:700;font-size:14px;padding:10px 18px;border-radius:999px;white-space:nowrap;transition:opacity .35s,transform .35s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.type-card.play .view-pill{opacity:1;transform:translate(-50%,-50%) scale(1)}
.stg-cta{position:absolute;right:20px;bottom:18px;z-index:3;background:var(--coral);color:var(--coral-ink);font-weight:700;font-size:14px;padding:10px 18px;border-radius:999px;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}
.stg-cta.soon{background:var(--panel);color:var(--muted);border:1px solid var(--line)}
.stg.play .stg-cta{opacity:1;transform:none;transition:opacity .5s ease 3.4s,transform .5s ease 3.4s}
.stg-cta::after{content:" →"}
.stg-cta.soon::after{content:""}
.dm{position:fixed;inset:0;z-index:100;background:rgba(10,9,8,.8);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:max(24px,env(safe-area-inset-top,0px)) max(24px,env(safe-area-inset-right,0px)) max(24px,env(safe-area-inset-bottom,0px)) max(24px,env(safe-area-inset-left,0px))}
.dm-box{width:min(1320px,100%);height:min(900px,100%);background:var(--bg);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;animation:dmpop .4s cubic-bezier(.2,.8,.2,1)}
@keyframes dmpop{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
.dm-bar{display:flex;align-items:center;gap:14px;padding:10px 12px 10px 18px;border-bottom:1px solid var(--line);background:var(--panel)}
.dm-bar .dots{display:flex;gap:6px}.dm-bar .dots i{width:10px;height:10px;border-radius:50%;border:1px solid var(--wire)}
.dm-title{font-weight:700;margin-right:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dm-title span{font-weight:400;color:var(--muted);margin-left:8px;font-size:14px}
.dm-new{font-size:14px;text-decoration:none;color:var(--muted);white-space:nowrap}
.dm-new:hover{color:var(--fg)}
.dm-x{width:38px;height:38px;border-radius:50%;border:1px solid var(--wire);background:transparent;color:var(--fg);font-size:22px;line-height:1;cursor:pointer;flex:none}
.dm-x:hover{background:var(--coral);color:var(--coral-ink);border-color:var(--coral)}
.dm-body{position:relative;flex:1;min-height:0}
.dm-body iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}
.dm-load{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);background:var(--bg);font-size:15px;text-align:center}
.dm-load i{display:block;width:34px;height:34px;margin:0 auto 12px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--coral);animation:dmspin .8s linear infinite}
@keyframes dmspin{to{transform:rotate(360deg)}}
@media(max-width:700px){.dm{padding:0}.dm-box{border-radius:0;height:100%;border:0}.dm-new{display:none}.dm-bar .dots{display:none}.dm-title span{display:none}}

.lp{position:relative;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:#0E0D0C;transition:transform .5s cubic-bezier(.2,.7,.2,1),border-color .4s}
.type-card.play .lp{transform:translateY(-4px);border-color:rgba(255,67,0,.5)}
.lp-bar{height:26px;display:flex;align-items:center;gap:6px;padding-inline:10px;background:#161413;border-bottom:1px solid var(--line)}
.lp-bar i{width:7px;height:7px;border-radius:50%;border:1px solid var(--wire)}
.lp-bar span{margin-left:8px;font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-view{position:relative;aspect-ratio:16/10.5;overflow:hidden;max-width:100%}
.lp-view iframe{position:absolute;top:0;left:0;width:1280px;height:840px;border:0;transform-origin:0 0;transform:scale(var(--s,.28));pointer-events:none;background:#121110}
.lp-view::after{content:"";position:absolute;inset:auto 0 0 0;height:36%;background:linear-gradient(to top,rgba(18,17,16,.55),transparent);opacity:0;transition:opacity .4s;pointer-events:none}
.type-card.play .lp-view::after{opacity:1}
.lp .view-pill{left:auto;top:auto;right:12px;bottom:12px;transform:translateY(8px);display:flex;align-items:center;gap:8px}
.type-card.play .lp .view-pill{transform:none}
.lp .view-pill svg{width:14px;height:14px}
.lp-hint{position:absolute;left:12px;bottom:14px;z-index:3;font-size:12px;color:#F4EFE9;background:rgba(18,17,16,.72);border-radius:999px;padding:6px 11px;display:flex;align-items:center;gap:6px;opacity:0;transition:opacity .4s;pointer-events:none}
.type-card.play .lp-hint{opacity:1}
.lp-hint svg{width:12px;height:12px}

.fw{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);gap:44px;align-items:start}
@media(max-width:960px){.fw{grid-template-columns:minmax(0,1fr);gap:24px}}
.fw-picker{min-width:0}.fw-mobile-nav{display:none}@media(max-width:960px){.fw-mobile-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:var(--muted);font-size:12px}.fw-mobile-nav b{color:var(--fg);font-weight:600}.fw-mobile-nav>div{display:flex;gap:8px}.fw-mobile-nav button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:var(--panel);color:var(--coral);font-size:19px;cursor:pointer}.fw-list{position:relative;scroll-snap-type:x proximity}.fw-item{scroll-snap-align:start}}@media(max-width:560px){.fw-list .fw-item{width:78%;max-width:270px}}
.fw-list{display:flex;flex-direction:column;border-top:1px solid var(--line)}
@media(max-width:960px){.fw-list{flex-direction:row;overflow-x:auto;border-top:0;gap:8px;padding-bottom:6px;scrollbar-width:none}.fw-list::-webkit-scrollbar{display:none}}
.fw-item{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-template-columns:14px minmax(0,1fr);gap:4px 14px;align-items:center;padding:18px 16px;border-bottom:1px solid var(--line);position:relative;transition:background .3s}
.fw-item:hover{background:rgba(255,255,255,.025)}
.fw-item:focus-visible{outline:2px solid var(--coral);outline-offset:-2px}
.fw-item .sw{width:12px;height:12px;border-radius:50%;grid-row:span 2;align-self:start;margin-top:7px;box-shadow:0 0 0 3px rgba(255,255,255,.06)}
.fw-item b{font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--muted);transition:color .3s}
.fw-item .tr{font-size:13px;color:var(--muted)}
.fw-item .bk{grid-column:2;font-size:14px;color:var(--coral);max-height:0;opacity:0;overflow:hidden;transition:max-height .4s,opacity .4s}
.fw-item[aria-selected="true"]{background:var(--panel)}
.fw-item[aria-selected="true"] b{color:var(--fg)}
.fw-item[aria-selected="true"] .bk{max-height:24px;opacity:1}
.fw-item .prog{position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--coral)}
.fw-item[aria-selected="true"] .prog.run{animation:fwprog var(--dur,8s) linear forwards}
@keyframes fwprog{to{width:100%}}
@media(max-width:960px){.fw-item{border:1px solid var(--line);border-radius:12px;flex:none;width:220px}.fw-item .prog{left:12px;right:auto}}
.fw-stage{position:relative;padding-right:10%;min-width:0}
@media(max-width:620px){.fw-stage{padding-right:0}}
.laptop{border-radius:14px;border:1px solid var(--line);background:#0E0D0C;overflow:hidden;box-shadow:0 40px 80px rgba(0,0,0,.45)}
.lt-bar{height:30px;display:flex;align-items:center;gap:7px;padding-inline:14px;background:#161413;border-bottom:1px solid var(--line)}
.lt-bar i{width:9px;height:9px;border-radius:50%;border:1px solid var(--wire)}
.lt-bar span{margin-left:12px;font-size:12px;color:var(--muted);background:#0E0D0C;border-radius:6px;padding:3px 12px}
.fw-screen{position:relative;overflow:hidden;cursor:pointer;max-width:100%}
.fw-screen iframe{position:absolute;top:0;left:0;border:0;transform-origin:0 0;transform:scale(var(--s,.5));pointer-events:none;background:#121110;transition:opacity .35s}
.fw-screen.loading iframe{opacity:.15}
.lt-view{aspect-ratio:16/10}
.lt-view iframe{width:1280px;height:800px}
.phone{position:absolute;right:0;top:22%;width:24%;min-width:150px;border-radius:30px;background:#0B0A09;border:7px solid #2B2825;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.6);z-index:2}
.ph-notch{position:absolute;top:7px;left:50%;transform:translateX(-50%);width:34%;height:14px;border-radius:999px;background:#0B0A09;z-index:3}
.ph-view{aspect-ratio:390/780}
.ph-view iframe{width:390px;height:780px}
@media(max-width:620px){.phone{display:none}}
.fw-acts{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:24px}
.fw-tip{margin:12px 0 0;font-size:13px;color:var(--muted)}

.dm-box{transition:width .45s cubic-bezier(.2,.8,.2,1),border-radius .45s}
.dm-mode{display:flex;gap:2px;border:1px solid var(--wire);border-radius:999px;padding:3px;flex:none}
.dm-mode button{font:inherit;font-size:13px;font-weight:500;border:0;background:transparent;color:var(--muted);padding:6px 12px;border-radius:999px;cursor:pointer}
.dm-mode button[aria-pressed="true"]{background:var(--fg);color:var(--bg)}
.dm.mobile .dm-box{width:min(430px,100%);height:min(880px,100%);border-radius:30px;border:8px solid #2B2825}
.dm.mobile .dm-title span,.dm.mobile .dm-new,.dm.mobile .dm-bar .dots{display:none}
.dm.mobile .dm-bar{padding:8px 8px 8px 14px;gap:8px}
@media(max-width:700px){.dm-mode{display:none}.dm.mobile .dm-box{border:0;border-radius:0;width:100%;height:100%}}

.who{padding-block:72px 24px}
/* Industry directory */
.who-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.who-group{min-width:0}
.who-group-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 16px;padding:0 0 13px;border-bottom:1px solid var(--line);font:500 13px/1.4 var(--f-display);letter-spacing:.01em;color:var(--muted)}
.who-group-title span{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.who-items{display:grid;gap:9px}
.who-chip{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:11px;width:100%;min-height:66px;border:1px solid var(--line);border-radius:12px;padding:12px;font-weight:500;font-size:15px;color:var(--fg);background:var(--panel);transition:border-color .2s,background .2s}
.who-chip:hover{border-color:var(--coral);background:#211a16}
.who-chip:focus-visible{outline:2px solid var(--coral);outline-offset:3px}
.who-chip .ic{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--bg);border:1px solid var(--line);flex:none}
.who-chip svg{width:19px;height:19px;fill:none;stroke:var(--coral);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.who-chip svg *{stroke-dasharray:1 1;stroke-dashoffset:0}
.who-chip:hover svg *{animation:whodraw .9s cubic-bezier(.6,0,.2,1)}
@keyframes whodraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
.who-label{flex:1;min-width:0;line-height:1.3}
.who-arrow{font-size:17px;color:var(--muted);transition:color .2s;flex:none}
.who-chip:hover .who-arrow{color:var(--coral)}
.who-live-note{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin:24px 0 0}
.who-live-note i{width:6px;height:6px;background:var(--coral);border-radius:50%;flex:none}
@media(max-width:1100px){.who-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}}
@media(max-width:600px){.who-list{grid-template-columns:minmax(0,1fr);gap:28px}.who-items{grid-template-columns:repeat(2,minmax(0,1fr))}.who-chip{font-size:13px;padding:10px;gap:8px;min-height:66px}.who-chip .ic{width:28px;height:28px}.who-chip svg{width:17px;height:17px}.who-arrow{font-size:14px}.who-group-title{margin-bottom:12px}}
@media(max-width:360px){.who-items{grid-template-columns:minmax(0,1fr)}}

/* featured work reveal */
.rv{position:absolute;inset:0;z-index:4;background:#0B0A09;pointer-events:none;opacity:0}
.rv.on{opacity:1}
.rv.on.done{opacity:0;transition:opacity .7s ease}
.rv img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;clip-path:inset(0 100% 0 0)}
.rv svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke-linecap:round;stroke-linejoin:round;clip-path:inset(0 0 0 0)}
.rv svg path{vector-effect:non-scaling-stroke;stroke-width:1.5px}
.rv .sw2{position:absolute;top:0;bottom:0;left:0;width:2px;background:var(--coral);box-shadow:0 0 18px 2px rgba(255,67,0,.6);opacity:0}
.rv.play img{clip-path:inset(0 0 0 0);transition:clip-path 1.6s cubic-bezier(.65,0,.35,1) 2s}
.rv.play svg{clip-path:inset(0 0 0 100%);transition:clip-path 1.6s cubic-bezier(.65,0,.35,1) 2s}
.rv.play .sw2{animation:sweep 1.6s cubic-bezier(.65,0,.35,1) 2s forwards}
.rv .stage-lbl{position:absolute;left:16px;bottom:14px;z-index:2;font-size:13px;font-weight:600;color:#F4EFE9;background:rgba(18,17,16,.78);border-radius:999px;padding:7px 14px;display:flex;align-items:center;gap:8px}
.rv .stage-lbl i{width:7px;height:7px;border-radius:50%;background:var(--coral);animation:pulse 1.2s ease-in-out infinite}
.rv.nt,.rv.nt *{transition:none!important;animation:none!important}
.phone .ph-view iframe{transition:opacity .6s}
.phone.rev .ph-view iframe{opacity:0}


.hero-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--line);margin-bottom:34px}
.hero-facts div{padding:12px 14px;display:flex;flex-direction:column;gap:2px;min-width:0}
.hero-facts div+div{border-left:1px solid var(--line)}
.hero-facts b{font-size:20px;font-weight:700;letter-spacing:-.02em;line-height:1.1}
.hero-facts span{font-size:12px;color:var(--muted);line-height:1.3}
@media(max-width:560px){.hero-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-facts div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.hero-facts div:nth-child(4){border-top:1px solid var(--line)}}
.buildlog{margin-top:30px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:14px 18px}
.bl-sw{display:flex;align-items:center;gap:6px}
.bl-sw i{width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,255,255,.14);transform:scale(.45);opacity:.3;filter:grayscale(1);transition:transform .5s cubic-bezier(.3,1.7,.5,1),opacity .4s,filter .4s}
.st1 .bl-sw i,.st2 .bl-sw i{transform:none;opacity:1;filter:none}
.bl-sw i:nth-child(2){transition-delay:.08s}.bl-sw i:nth-child(3){transition-delay:.16s}.bl-sw i:nth-child(4){transition-delay:.24s}
.aa{margin-left:10px;font-size:28px;line-height:1;font-weight:800;letter-spacing:-.04em;color:var(--muted);transition:color .4s}
.st1 .aa,.st2 .aa{font-family:var(--f-brand-serif);font-weight:500;letter-spacing:0;color:#EFE4D2}
.bl-txt{min-width:0}
.bl-txt .eyebrow{font-size:11px;color:var(--coral)}
.bl-txt p{margin:3px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;color:#D9D2CA;line-height:1.45;min-height:2.9em}
.caret{display:inline-block;width:7px;height:14px;background:var(--coral);margin-left:3px;vertical-align:-2px;animation:pulse 1s steps(2) infinite}
.ring{position:relative;width:54px;height:54px;flex:none}
.ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.ring circle{fill:none;stroke-width:3.5}
.ring .bg{stroke:var(--line)}
.ring .fg{stroke:#3DDC97;stroke-dasharray:100;stroke-dashoffset:100;stroke-linecap:round;transition:stroke-dashoffset 1.4s cubic-bezier(.2,.8,.2,1)}
.ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}
@media(max-width:520px){.buildlog{grid-template-columns:minmax(0,1fr) auto}.bl-sw{display:none}}

@media(prefers-reduced-motion:reduce){*:not(#work):not(#work *){transition:none!important;animation:none!important}.stage,.stage:hover{transform:none}}

@media(min-width:961px){.fw-list{max-height:650px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--coral) transparent}}

.stepper{width:min(calc(100% - 90px),560px)}
.lt-bar i{flex:none}.lt-bar span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fw-item[aria-selected="true"] .bk{max-height:70px}

.logo:before{display:none!important}.logo .brand-lockup{display:block;width:215px;height:auto}.footer-brand{display:flex;align-items:center;gap:18px}.footer-brand img{object-fit:contain}@media(max-width:600px){.logo .brand-lockup{width:155px}.footer-brand{flex-wrap:wrap}}

.portrait.desk-card{display:block;aspect-ratio:auto;background:#171717;border:1px solid #34302a;border-radius:20px;isolation:isolate}.desk-heading{display:flex;align-items:center;gap:8px;padding:24px 22px 0;font:600 9px/1.4 system-ui;letter-spacing:1.6px;color:#a7a197;position:relative;z-index:2}.desk-heading>span:last-child{margin-left:auto;font-size:8px;letter-spacing:1px}.desk-dot{width:5px;height:5px;border-radius:50%;background:#ff4300}.desk-card>div{width:100%;box-sizing:border-box}.desk-motion{position:relative;transform:perspective(1000px) rotateX(var(--desk-rx,0deg)) rotateY(var(--desk-ry,0deg));transition:transform .5s ease-out;transform-origin:50% 65%;margin-top:-8px}.desk-art{display:block;width:100%;height:auto}.desk-monitor{position:absolute;left:14.5%;top:28.3%;width:59%;height:34%;border:0;background:transparent;cursor:pointer;border-radius:3px}.desk-monitor span{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#111e;color:#fff;padding:8px 12px;border:1px solid #ffffff35;border-radius:20px;font:600 10px system-ui;opacity:0;transition:opacity .2s}.desk-monitor:hover span,.desk-monitor:focus-visible span{opacity:1}.desk-caption{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 18px;background:#191918;position:relative;border-top:1px solid #33302a}.desk-caption strong{display:block;font-size:23px;font-weight:600;letter-spacing:-.5px;color:#f4efe9}.desk-caption span{display:block;margin-top:4px;font:12px/1.5 system-ui;color:#a7a197}.desk-next{width:38px;height:38px;flex-shrink:0;border-radius:50%;border:1px solid #544335;background:#24201c;color:#ff743f;cursor:pointer;font-size:23px}.desk-next:hover{background:#ff4300;color:#fff}.desk-project{display:flex;gap:12px;align-items:center;padding:13px 24px;background:#131312;color:#a7a197;font:9px system-ui;letter-spacing:1px}.desk-project b{font-weight:500;color:#d3c8ba;letter-spacing:0;font-size:11px}.desk-project>span:last-child{margin-left:auto}.desk-steam{animation:desk-breathe 5s ease-in-out infinite}@keyframes desk-breathe{50%{opacity:.3;transform:translateY(-6px)}}@media(prefers-reduced-motion:reduce){.desk-steam{animation:none}.desk-motion{transform:none;transition:none}}@media(max-width:400px){.desk-heading{padding:20px 16px 0;font-size:8px}.desk-caption{padding:18px}.desk-project{padding:12px 18px}}

.desk-motion{margin-top:0}.desk-heading{padding:18px 20px}.studio-browser{width:1280px;height:860px;transform-origin:0 0;position:relative;background:#171717;overflow:hidden}.studio-tabs{height:60px;display:flex;align-items:end;gap:6px;background:#242424;padding:8px 16px 0;font:18px system-ui;color:#aaa}.studio-tabs button{font:18px system-ui;background:#303030;border:0;border-radius:10px 10px 0 0;padding:15px 22px;color:#aaa;cursor:pointer}.studio-tabs button.selected{background:#454545;color:white}.studio-dots{padding:12px;color:#888;margin-right:15px;font-size:13px;letter-spacing:4px}#studio-frame{width:1280px;height:800px;border:0;display:block;pointer-events:none}.studio-pointer{position:absolute;left:600px;top:340px;width:30px;height:36px;z-index:3;pointer-events:none;transition:left 1.25s cubic-bezier(.4,0,.2,1),top 1.25s cubic-bezier(.4,0,.2,1),transform .18s}.studio-pointer.click{transform:scale(.8)}.desk-next{font:18px system-ui}.desk-caption strong{font-family:system-ui}.desk-project{letter-spacing:.7px}.desk-motion{transition:transform .8s}@media(prefers-reduced-motion:reduce){.studio-pointer{transition:none}}
#studio-frame{overflow:hidden;scrollbar-width:none;background:#191919}#studio-page{display:block;width:1280px;max-width:none;height:auto;image-rendering:auto}.studio-tabs button{font-size:24px;padding:12px 18px}.studio-tabs{gap:4px}.studio-dots{margin-right:5px;font-size:12px}.studio-browser{backface-visibility:hidden}
.studio-browser{position:absolute;left:0;top:0}.desk-motion{overflow:hidden}
.booking-showcase{padding-block:90px}.booking-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.booking-tiers>button{text-align:left;padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--fg);cursor:pointer;font-family:var(--f-display);transition:background .25s,border-color .25s,transform .25s}.booking-tiers>button:hover{transform:translateY(-3px)}.booking-tiers>button[aria-selected=true]{border-color:var(--coral);background:#231a15}.booking-tiers strong{display:block;font-family:var(--f-serif);font-size:28px;font-weight:400;margin:14px 0 10px}.booking-tiers>button>span:not(.eyebrow){display:block;font-size:13px;color:var(--muted)}.booking-tiers em{display:inline-block;font-style:normal;font-size:11px;color:var(--fg);border-top:1px solid var(--line);margin-top:22px;padding-top:12px}.booking-tier-content{margin-top:24px}.booking-device-stage{position:relative;height:600px;max-width:1050px;margin:0 auto;isolation:isolate}.booking-device{padding:0;overflow:hidden;position:absolute;cursor:pointer;background:#111;border:1px solid #61584e;box-shadow:0 18px 40px #0006;transition:transform .45s}.booking-device:hover{transform:translateY(-6px)}.booking-device img{display:block;width:100%;height:auto}.booking-computer{left:2%;top:35px;width:77%;border:8px solid #292725;border-radius:17px}.booking-chrome{height:23px;display:flex;gap:5px;align-items:center;padding:0 10px;color:#aaa;background:#20201e;font:9px system-ui}.booking-chrome i{width:5px;height:5px;border-radius:50%;background:#5f5b55}.booking-chrome>span{margin-left:12px}.booking-tablet{right:0;bottom:24px;width:30%;border:9px solid #252321;border-radius:21px;z-index:2}.booking-phone{left:58%;bottom:0;width:16%;border:5px solid #34302b;border-radius:24px;z-index:3}.booking-notch{position:absolute;top:5px;left:35%;height:6px;width:30%;background:#080808;border-radius:10px;z-index:2}.device-open{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);background:var(--coral);color:#160b05;font-size:11px;font-weight:700;padding:8px 12px;border-radius:99px;white-space:nowrap;opacity:0;transition:opacity .2s}.booking-device:hover .device-open,.booking-device:focus-visible .device-open{opacity:1}.booking-device-hint{text-align:center;color:var(--muted);font-size:12px;margin:18px 0 35px}.booking-description{display:grid;grid-template-columns:1fr .85fr;gap:70px;padding:35px 0 55px;border-bottom:1px solid var(--line)}.booking-description h3{font:400 clamp(30px,3vw,42px)/1.08 var(--f-serif);margin:12px 0 20px}.booking-description p{color:var(--muted);font-size:15px;max-width:580px}.row-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.row-actions a{text-decoration:none}.booking-includes ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}.booking-includes li{padding-left:24px;position:relative;font-size:15px}.booking-includes li:before{content:'↗';position:absolute;left:0;color:var(--coral)}.booking-includes p{font-size:12px;line-height:1.6;border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.booking-service{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;padding:70px 0}.booking-service h2{font-size:clamp(32px,3.4vw,46px)}.booking-service .btn{margin-top:25px}.booking-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.booking-service-grid article{padding:22px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.booking-service-grid article>span{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted)}.booking-service-grid h3{font-size:17px;line-height:1.2;margin:16px 0 12px}.booking-service-grid p,.booking-steps p{font-size:13px;line-height:1.6;color:var(--muted);margin:0}.booking-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);padding-top:35px}.booking-steps b{color:var(--coral);font-weight:400;font-size:24px}.booking-steps h3{font-size:17px}.booking-honesty{font-size:11px;color:var(--muted);line-height:1.7;margin:30px 0 0}.booking-honesty a{display:block}.booking-dialog{width:min(1400px,96vw);max-width:none;height:92vh;max-height:92vh;padding:0;background:#171513;color:var(--fg);border:1px solid var(--line);border-radius:15px;overflow:hidden}.booking-dialog[open]{display:flex;flex-direction:column}.booking-dialog::backdrop{background:#000c}.booking-dialog-top,.booking-dialog-bottom{padding:12px 18px;display:flex;gap:12px;justify-content:space-between;align-items:center;flex-shrink:0;font-size:12px}.booking-dialog-top button{border:1px solid var(--line);background:var(--panel);color:var(--fg);border-radius:8px;padding:7px 12px;cursor:pointer;font:inherit}.booking-dialog-top button[aria-pressed=true]{background:var(--coral);color:#190b05}.booking-dialog-body{flex:1;min-height:0;display:flex;justify-content:center;background:#080808;overflow:auto}.booking-dialog iframe{height:100%;width:100%;border:0;background:#121110;max-width:100%}.booking-dialog[data-mode=tablet] iframe{width:820px}.booking-dialog[data-mode=phone] iframe{width:390px}.booking-modes{display:flex;gap:6px}.booking-dialog-bottom{font-size:11px;color:var(--muted)}.booking-tier-content.changing{animation:booking-enter .5s ease-out}@keyframes booking-enter{from{opacity:.35;transform:translateY(10px)}to{opacity:1;transform:none}}@media(max-width:960px){.booking-device-stage{height:53vw;max-height:550px}.booking-computer{top:20px}.booking-tablet{bottom:10px}.booking-description{gap:30px}.booking-service{grid-template-columns:1fr;gap:30px}.booking-tiers strong{font-size:24px}.booking-tiers>button{padding:18px}}@media(max-width:600px){.booking-showcase{padding-block:55px}.booking-tiers{grid-template-columns:1fr;gap:10px}.booking-tiers>button{display:grid;grid-template-columns:1fr auto;gap:6px 10px;padding:16px}.booking-tiers strong{margin:0;font-size:23px;grid-column:1}.booking-tiers em{margin:0;padding:0;border:0;grid-column:2;grid-row:2;font-size:9px}.booking-tiers>button>span:not(.eyebrow){font-size:11px}.booking-tiers .eyebrow{font-size:9px;grid-column:1 / -1}.booking-device-stage{height:61vw}.booking-computer{left:0;width:83%;top:14px;border-width:4px;border-radius:8px}.booking-chrome{height:12px;font-size:5px;gap:3px}.booking-chrome i{width:3px;height:3px}.booking-tablet{width:32%;border-width:4px;border-radius:11px;bottom:8px}.booking-phone{width:19%;left:55%;border-width:3px;border-radius:13px}.booking-notch{height:3px;top:3px}.booking-device-hint{font-size:10px}.booking-description{grid-template-columns:1fr;gap:22px;padding:15px 0 35px}.booking-service{padding:45px 0}.booking-service-grid{grid-template-columns:1fr;gap:12px}.booking-steps{grid-template-columns:1fr;gap:22px}.booking-dialog-top{flex-wrap:wrap;padding:10px}.booking-dialog-top strong{font-size:11px}.booking-modes{order:3;width:100%;justify-content:center}.booking-dialog{width:98vw}.device-open{font-size:7px;padding:5px;bottom:6px}.booking-includes li{font-size:14px}}@media(prefers-reduced-motion:reduce){.booking-tier-content.changing{animation:none}.booking-device,.booking-tiers>button{transition:none}}

.studio-raster{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.studio-browser{opacity:0}
.client-work{padding-block:80px}.client-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.client-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--panel)}.client-image{display:block;position:relative;overflow:hidden;aspect-ratio:1.44}.client-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}.client-image:hover img{transform:scale(1.025)}.client-image>span{position:absolute;bottom:18px;right:18px;background:#121110e8;border:1px solid #ffffff40;border-radius:99px;padding:9px 14px;font-size:12px;color:#fff}.client-copy{padding:28px}.client-copy h3{font:400 34px/1.1 var(--f-serif);margin:12px 0 18px}.client-copy p,.client-copy dd{font-size:14px;color:var(--muted);line-height:1.6}.client-copy dl{border-top:1px solid var(--line);padding-top:20px}.client-copy dt{font-size:12px;color:var(--fg);margin-top:15px;font-weight:700}.client-copy dd{margin:5px 0 0}.client-copy>a{display:inline-block;margin-top:15px;color:var(--coral);text-decoration:none;font-size:14px}.review-section{padding-block:70px;display:grid;grid-template-columns:1fr 1fr;gap:50px}.review-section[hidden]{display:none}.review-cards{display:grid;gap:15px;align-content:center}.review-card{border:1px solid var(--line);background:var(--panel);padding:24px;border-radius:14px}.review-card blockquote{margin:15px 0;color:var(--fg);font-size:16px;line-height:1.65}.review-card small,.review-card a{font-size:11px;color:var(--muted)}.review-rating{color:var(--coral);font-size:14px}.faq-section{padding-block:75px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.faq-grid details{border-bottom:1px solid var(--line);padding:21px 0;align-self:start}.faq-grid summary{cursor:pointer;font-size:16px;font-weight:700;padding-right:20px;list-style:none;position:relative}.faq-grid summary::after{content:'+';position:absolute;right:0;color:var(--coral)}.faq-grid details[open] summary::after{content:'−'}.faq-grid details p{font-size:14px;line-height:1.7;color:var(--muted);margin:16px 0 0}.offer-breakdown{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.offer-breakdown>div{padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.offer-breakdown b{color:var(--coral);font-size:11px;letter-spacing:1px;text-transform:uppercase}.offer-breakdown h3{font-size:18px}.offer-breakdown p{font-size:13px;color:var(--muted);line-height:1.6}.contact-status{font-size:13px;line-height:1.6;color:var(--muted);padding:12px 0}.contact-status[data-error=true]{color:#ffae91}.contact-direct{display:flex;gap:15px;flex-wrap:wrap;font-size:13px;margin-top:12px}.hp-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.skip-link{position:fixed;left:16px;top:-80px;background:var(--coral);color:#180b06;padding:12px 20px;z-index:10000}.skip-link:focus{top:15px}.privacy-copy{max-width:800px;margin:50px auto;padding:25px;font:16px/1.7 system-ui}.privacy-copy h1{font-size:42px}.privacy-copy h2{font-size:24px;margin-top:30px}.privacy-copy p{color:#b4aaa0}@media(max-width:750px){.client-grid,.faq-grid,.review-section,.offer-breakdown{grid-template-columns:1fr}.client-work,.faq-section{padding-block:50px}.client-copy{padding:22px}.client-copy h3{font-size:29px}.review-section{gap:25px}}@media(prefers-reduced-motion:reduce){.client-image img{transition:none}}

.field textarea{font:inherit;width:100%;padding:12px 14px;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:10px;resize:vertical}.links{gap:22px}
@media(min-width:761px) and (max-width:1000px){.links{gap:12px;font-size:13px}}
.client-image .client-loaf-video{display:block;width:100%;height:100%;aspect-ratio:1440/1000;object-fit:cover}
.service-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin:20px 0;font-size:14px}.service-links a{text-decoration:underline;text-underline-offset:5px}
.booking-dialog:not([open]){display:none!important;visibility:hidden;pointer-events:none}.booking-dialog[open]{visibility:visible}.booking-controls{display:flex;align-items:center;gap:12px}.booking-controls .booking-modes{order:initial;width:auto}.booking-dialog-top #booking-close{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0}.booking-dialog-top #booking-close svg{display:block;pointer-events:none}.booking-dialog-top #booking-close:focus-visible{outline:2px solid var(--coral);outline-offset:3px}@media(max-width:600px){.booking-dialog-top{display:block}.booking-dialog-top strong{display:block;margin:0 0 8px}.booking-controls{width:100%;justify-content:space-between;gap:8px}.booking-controls .booking-modes{justify-content:flex-start;gap:5px}.booking-dialog-top .booking-modes button{min-height:44px;padding:7px 10px}.booking-dialog{height:92dvh;max-height:92dvh}}