:root{
  --text-xs:clamp(.75rem,.7rem + .25vw,.875rem);
  --text-sm:clamp(.875rem,.8rem + .35vw,1rem);
  --text-base:clamp(1rem,.95rem + .25vw,1.125rem);
  --text-lg:clamp(1.125rem,1rem + .75vw,1.5rem);
  --text-xl:clamp(1.5rem,1.2rem + 1.25vw,2.25rem);
  --text-2xl:clamp(2rem,1.2rem + 2.5vw,3.5rem);
  --text-3xl:clamp(2.5rem,1rem + 4vw,5rem);
  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;
  --color-bg:#0e0d0b;--color-surface:#16140f;--color-surface-2:#1d1a14;--color-border:#2f2a20;--color-divider:#26221a;
  --color-text:#efe9dc;--color-text-muted:#a9a190;--color-text-faint:#6e675a;--color-text-inverse:#16130c;
  --color-primary:#d9b548;--color-primary-hover:#ebc95d;--color-primary-active:#c29e33;
  --radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-full:9999px;
  --transition-interactive:180ms cubic-bezier(.16,1,.3,1);
  --shadow-lg:0 12px 32px oklch(0 0 0 / .45);
  --content-wide:1200px;
  --font-display:'Cabinet Grotesk','Helvetica Neue',sans-serif;
  --font-body:'Satoshi','Helvetica Neue',sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:none;text-size-adjust:none;-webkit-font-smoothing:antialiased;scroll-behavior:smooth;scroll-padding-top:var(--space-20)}
body{min-height:100dvh;line-height:1.6;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg)}
img,svg{display:block;max-width:100%;height:auto}
ul[role=list],ol[role=list]{list-style:none}
input,button,textarea,select{font:inherit;color:inherit}
h1,h2,h3{text-wrap:balance;line-height:1.1}
p,li{text-wrap:pretty;max-width:68ch}
::selection{background:oklch(from var(--color-primary) l c h / .3)}
:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-sm)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
button{cursor:pointer;background:none;border:none}
a,button,input,select,textarea{transition:color var(--transition-interactive),background var(--transition-interactive),border-color var(--transition-interactive),box-shadow var(--transition-interactive),transform var(--transition-interactive)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-2) var(--space-4);z-index:100}
.skip:focus{left:var(--space-4)}

.wrap{width:min(100% - 2*var(--space-6),var(--content-wide));margin-inline:auto}
.gold{color:var(--color-primary)}
.eyebrow{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);font-weight:700;margin-bottom:var(--space-4)}

/* header */
.header{position:sticky;top:0;z-index:50;background:oklch(from var(--color-bg) l c h / .82);backdrop-filter:blur(14px);border-bottom:1px solid var(--color-divider)}
.header__in{display:flex;align-items:center;gap:var(--space-6);height:68px}
.brand{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--color-text);margin-right:auto}
.brand img{width:40px;height:auto}
.brand__name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;letter-spacing:-.01em}
.brand__name b{color:var(--color-primary);font-weight:800}
.nav{display:flex;gap:var(--space-6)}
.nav a,.phone{color:var(--color-text-muted);text-decoration:none;font-size:var(--text-sm);font-weight:500}
.nav a:hover,.phone:hover{color:var(--color-text)}
.header__cta{display:flex;align-items:center;gap:var(--space-4)}
.menu{display:none;color:var(--color-text);padding:var(--space-2)}
.mnav{display:flex;flex-direction:column;padding:var(--space-2) var(--space-6) var(--space-6);gap:var(--space-1)}
.mnav[hidden]{display:none}
.mnav a{color:var(--color-text);text-decoration:none;padding:var(--space-3) 0;border-bottom:1px solid var(--color-divider)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);font-weight:700;font-size:var(--text-sm);text-decoration:none;border:1px solid transparent;min-height:48px}
.btn--sm{min-height:40px;padding:var(--space-2) var(--space-5)}
.btn--gold{background:var(--color-primary);color:var(--color-text-inverse)}
.btn--gold:hover{background:var(--color-primary-hover);box-shadow:0 8px 28px oklch(from var(--color-primary) l c h / .35);transform:translateY(-1px)}
.btn--gold:active{background:var(--color-primary-active)}
.btn--ghost{border-color:oklch(1 0 0 / .35);color:var(--color-text);background:oklch(0 0 0 / .25)}
.btn--ghost:hover{border-color:var(--color-text);background:oklch(1 0 0 / .08)}
.btn--line{border-color:var(--color-border);color:var(--color-text)}
.btn--line:hover{border-color:var(--color-primary);color:var(--color-primary)}
.btn--full{width:100%}
.link-btn{color:var(--color-primary);font-weight:700;font-size:var(--text-sm);padding:0;text-align:left}
.link-btn:hover{color:var(--color-primary-hover);text-decoration:underline}

/* hero */
.hero{position:relative;min-height:min(88vh,860px);display:flex;align-items:center;overflow:hidden;isolation:isolate}
.hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;animation:drift 22s ease-out both}
@keyframes drift{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,oklch(.12 .01 80 / .94) 0%,oklch(.12 .01 80 / .78) 45%,oklch(.12 .01 80 / .2) 100%),linear-gradient(0deg,var(--color-bg) 0%,transparent 30%)}
.hero__in{padding-block:var(--space-24)}
.hero h1{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:800;letter-spacing:-.025em;max-width:16ch;margin-bottom:var(--space-6)}
.lede{color:var(--color-text-muted);font-size:var(--text-base);max-width:52ch;margin-bottom:var(--space-8)}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.hero__actions--center{justify-content:center}
.hero__proof{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-top:var(--space-12)}
.hero__proof li{display:flex;flex-direction:column}
.hero__proof b{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-text)}
.hero__proof span{font-size:var(--text-xs);color:var(--color-text-muted)}

/* steps */
.steps{padding-block:var(--space-12)}
.steps__list{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);border-top:1px solid var(--color-border);padding-top:var(--space-10)}
.steps h3{font-size:var(--text-lg);margin:var(--space-2) 0}
.steps p{color:var(--color-text-muted);font-size:var(--text-sm)}
.num{font-family:var(--font-display);color:var(--color-primary);font-weight:800;font-size:var(--text-sm)}

/* sections */
.section{padding-block:clamp(var(--space-16),8vw,var(--space-32))}
.section--alt{background:var(--color-surface);border-block:1px solid var(--color-divider)}
.sec-head{margin-bottom:var(--space-12)}
.sec-head--center{text-align:center}
.sec-head--center h2{margin-inline:auto}
.section h2,.band h2,.final h2{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:800;letter-spacing:-.02em;max-width:22ch}
.split{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(var(--space-8),5vw,var(--space-20));align-items:center;margin-bottom:clamp(var(--space-12),6vw,var(--space-24))}
.split:last-child{margin-bottom:0}
.split--rev>img{order:2}
.split--top{align-items:start}
.split img{border-radius:var(--radius-xl);width:100%;aspect-ratio:4/3;object-fit:cover;box-shadow:var(--shadow-lg)}
.split h3{font-size:var(--text-xl);font-family:var(--font-display);font-weight:700;margin-bottom:var(--space-4)}
.split p{color:var(--color-text-muted);margin-bottom:var(--space-4)}
.checks{display:grid;gap:var(--space-2);margin-top:var(--space-4)}
.checks li{position:relative;padding-left:var(--space-6);font-size:var(--text-sm)}
.checks li::before{content:"";position:absolute;left:0;top:.5em;width:10px;height:6px;border-left:2px solid var(--color-primary);border-bottom:2px solid var(--color-primary);transform:rotate(-45deg)}

/* agents band */
.band{position:relative;isolation:isolate;overflow:hidden;padding-block:clamp(var(--space-20),10vw,var(--space-32))}
.band__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 30%;z-index:-2}
.band__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,oklch(.11 .01 80 / .95) 0%,oklch(.11 .01 80 / .85) 50%,oklch(.11 .01 80 / .35) 100%)}
.band__in>p{color:var(--color-text-muted);margin:var(--space-4) 0 var(--space-6)}
.pills{display:flex;flex-wrap:wrap;gap:var(--space-2);max-width:620px;margin-bottom:var(--space-8)}
.pills li{border:1px solid oklch(1 0 0 / .2);background:oklch(0 0 0 / .35);border-radius:var(--radius-full);padding:var(--space-1) var(--space-4);font-size:var(--text-sm)}

/* pricing */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);align-items:stretch}
.plan{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-2);position:relative}
.plan--feat{border-color:var(--color-primary);background:linear-gradient(180deg,oklch(from var(--color-primary) l c h / .1),var(--color-surface) 50%)}
.plan__tag{position:absolute;top:calc(-1*var(--space-3));left:var(--space-8);background:var(--color-primary);color:var(--color-text-inverse);font-size:var(--text-xs);font-weight:700;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full)}
.plan h3{font-family:var(--font-display);font-size:var(--text-xl);font-weight:800}
.plan__for{color:var(--color-text-muted);font-size:var(--text-sm);min-height:3em}
.price{font-size:var(--text-sm);color:var(--color-text-muted)}
.price b{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-text);font-variant-numeric:tabular-nums}
.price__mo{font-size:var(--text-sm);color:var(--color-primary);font-weight:700}
.plan .checks{margin-block:var(--space-4) var(--space-6);flex:1}
.boost{margin-top:var(--space-12);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);display:grid;grid-template-columns:1fr 1.4fr;gap:var(--space-8);align-items:center;background:var(--color-surface)}
.boost__head h3{font-family:var(--font-display);font-size:var(--text-xl);font-weight:800;margin-bottom:var(--space-2)}
.boost__head p,.boost__plus{color:var(--color-text-muted);font-size:var(--text-sm)}
.boost__plus{grid-column:1/-1;border-top:1px solid var(--color-divider);padding-top:var(--space-4)}
.boost__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}
.boost__opt{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:var(--color-surface-2)}
.boost__opt:hover{border-color:var(--color-primary);transform:translateY(-2px)}
.boost__opt b{font-size:var(--text-sm)}
.boost__opt span{font-family:var(--font-display);font-size:var(--text-xl);font-weight:800;color:var(--color-primary)}
.boost__opt em{font-style:normal;font-size:var(--text-xs);color:var(--color-text-muted)}

/* partners */
.split--top>div>p{color:var(--color-text-muted);margin-top:var(--space-4)}
.partner-cards{display:grid;gap:var(--space-4)}
.pcard{border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);background:var(--color-bg);display:grid;gap:var(--space-2)}
.pcard h3{font-size:var(--text-lg)}
.pcard p{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}
.pcard .price b{font-size:var(--text-lg)}

/* faq */
.faq{display:grid;grid-template-columns:1fr 1.6fr;gap:var(--space-12)}
.faq__list details{border-bottom:1px solid var(--color-border)}
.faq__list summary{cursor:pointer;list-style:none;padding:var(--space-5) var(--space-8) var(--space-5) 0;font-weight:700;position:relative}
.faq__list summary::-webkit-details-marker{display:none}
.faq__list summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--color-primary);font-size:var(--text-lg)}
.faq__list details[open] summary::after{content:"–"}
.faq__list summary:hover{color:var(--color-primary)}
.faq__list details p{color:var(--color-text-muted);padding-bottom:var(--space-5);font-size:var(--text-sm)}

/* final */
.final{position:relative;isolation:isolate;overflow:hidden;text-align:center;padding-block:clamp(var(--space-20),10vw,var(--space-32))}
.final__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.final__shade{position:absolute;inset:0;z-index:-1;background:oklch(.1 .01 80 / .84)}
.final h2{margin:0 auto var(--space-4)}
.final p{color:var(--color-text-muted);margin:0 auto var(--space-8)}

/* footer */
.footer{border-top:1px solid var(--color-divider);padding-block:var(--space-12)}
.footer__in{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);align-items:start}
.footer__brand{display:flex;gap:var(--space-3);align-items:center;font-size:var(--text-sm);color:var(--color-text-muted)}
.footer__brand b{color:var(--color-text)}
.footer__brand img{width:36px}
.footer__contact{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1);font-size:var(--text-sm)}
.footer__contact a{color:var(--color-text);text-decoration:none}
.footer__contact a:hover{color:var(--color-primary)}
.footer__contact span,.footer__copy{color:var(--color-text-faint);font-size:var(--text-xs)}
.footer__copy{grid-column:1/-1}

/* order dialog */
.order{margin:auto;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);color:var(--color-text);width:min(560px,calc(100% - 2*var(--space-4)));max-height:calc(100dvh - 2*var(--space-4));padding:0}
.order::backdrop{background:oklch(0 0 0 / .7);backdrop-filter:blur(4px)}
.order__form{padding:var(--space-8);display:grid;gap:var(--space-4);position:relative}
.order h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:800;margin-top:calc(-1*var(--space-2))}
.order__x{position:absolute;top:var(--space-4);right:var(--space-4);color:var(--color-text-muted);padding:var(--space-2)}
.order__x:hover{color:var(--color-text)}
.order label{display:grid;gap:var(--space-1);font-size:var(--text-xs);font-weight:700;color:var(--color-text-muted)}
.order input,.order select,.order textarea{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--text-base);font-weight:400;color:var(--color-text);width:100%}
.order input:focus,.order select:focus,.order textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px oklch(from var(--color-primary) l c h / .2)}
.order .row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}
.order__err{color:#f08a7e;font-size:var(--text-sm)}
.order__note{font-size:var(--text-xs);color:var(--color-text-muted);text-align:center}
.order__note a{color:var(--color-primary)}

/* reveal */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.reveal.in{opacity:1;transform:none}

@media (max-width:960px){
  .nav,.phone{display:none}
  .menu{display:block}
  .plans{grid-template-columns:1fr;max-width:520px;margin-inline:auto}
  .boost{grid-template-columns:1fr}
  .faq{grid-template-columns:1fr;gap:0}
}
@media (max-width:720px){
  .header__cta .btn{display:none}
  .split{grid-template-columns:1fr}
  .split--rev>img{order:0}
  .steps__list{grid-template-columns:1fr}
  .boost__grid{grid-template-columns:1fr}
  .boost__opt{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:var(--space-3)}
  .footer__in{grid-template-columns:1fr}
  .footer__contact{align-items:flex-start}
  .order .row{grid-template-columns:1fr}
  .order__form{padding:var(--space-6)}
  .hero__shade{background:linear-gradient(0deg,var(--color-bg) 0%,oklch(.12 .01 80 / .82) 50%,oklch(.12 .01 80 / .6) 100%)}
  .band__shade{background:oklch(.11 .01 80 / .86)}
}
.sec-head--center .eyebrow{margin-inline:auto}
.boost__plus{max-width:none}
@media (max-width:720px){.hero__proof{gap:var(--space-5);flex-wrap:nowrap}.hero__proof b{font-size:var(--text-lg)}}
.footer__h{font-weight:700;color:var(--color-text)}
.footer__contact address{font-style:normal;color:var(--color-text-muted);text-align:right;font-size:var(--text-sm)}
.boost__plus a{color:var(--color-primary);font-weight:700}
@media (max-width:720px){.footer__contact address{text-align:left}}
.nav a,.phone,.btn--sm{white-space:nowrap}
@media (max-width:1240px){.nav{gap:var(--space-4)}}
@media (max-width:1180px){.phone{display:none}}
@media (max-width:1100px){.nav,.phone{display:none}.menu{display:inline-flex}}

/* v2: split hero + showcase */
.hero--split{min-height:auto;align-items:stretch}
.hero__glow{position:absolute;inset:-20% -10% auto auto;width:70vw;height:70vw;max-width:1000px;max-height:1000px;z-index:-1;background:radial-gradient(closest-side,oklch(from var(--color-primary) l c h / .16),transparent 70%);pointer-events:none}
.hero__grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(var(--space-8),4vw,var(--space-16));align-items:center;padding-block:clamp(var(--space-12),7vw,var(--space-24))}
.hero--split h1{font-size:clamp(2.4rem,1rem + 3.6vw,4.4rem);max-width:13ch}
.hero--split .lede{color:var(--color-text-muted);max-width:52ch;margin-bottom:var(--space-8)}
.show{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
.show__frame{position:relative;aspect-ratio:16/9;border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--color-border);box-shadow:0 30px 80px oklch(0 0 0 / .55),0 0 0 1px oklch(from var(--color-primary) l c h / .12)}
.show__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .9s ease,transform 6s ease}
.show__img.is-on{opacity:1;transform:scale(1)}
.show__badge{position:absolute;left:var(--space-3);top:var(--space-3);display:inline-flex;align-items:center;gap:var(--space-2);background:oklch(.12 .01 80 / .78);backdrop-filter:blur(6px);color:var(--color-text);font-size:12px;font-weight:700;padding:6px 12px;border-radius:var(--radius-full)}
.show__badge i{width:8px;height:8px;border-radius:50%;background:var(--color-primary);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{opacity:.35}}
.show__tabs{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.show__tabs button{padding:8px 16px;border-radius:var(--radius-full);border:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;background:var(--color-surface)}
.show__tabs button[aria-selected=true]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-inverse)}
.show__tabs button:hover{color:var(--color-text)}
.show__tabs button[aria-selected=true]:hover{color:var(--color-text-inverse)}

/* works with strip */
.works{border-block:1px solid var(--color-divider);background:var(--color-surface);overflow:hidden}
.works__in{display:flex;align-items:center;gap:var(--space-8);padding-block:var(--space-6)}
.works__h{font-size:var(--text-xs);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.1em;font-weight:700;max-width:22ch;flex:none}
.works__list{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-6);align-items:center}
.works__list li{font-family:var(--font-display);font-weight:700;font-size:var(--text-base);color:var(--color-text-muted);white-space:nowrap}

/* feature icons */
.feats{padding-block:clamp(var(--space-12),6vw,var(--space-20))}
.feats__list{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}
.feats__list li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8) var(--space-6);transition:transform var(--transition-interactive),border-color var(--transition-interactive)}
.feats__list li:hover{transform:translateY(-4px);border-color:oklch(from var(--color-primary) l c h / .5)}
.feats__list svg{color:var(--color-primary);margin-bottom:var(--space-5)}
.feats__list h3{font-family:var(--font-display);font-size:var(--text-lg);margin-bottom:var(--space-2)}
.feats__list p{color:var(--color-text-muted);font-size:var(--text-sm)}

/* gallery */
.sec-head__sub{color:var(--color-text-muted);margin:var(--space-4) auto 0;max-width:56ch}
.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}
.gallery figure{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}
.gallery img{width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .6s ease}
.gallery figure:hover img{transform:scale(1.03)}
.gallery figcaption{display:flex;flex-direction:column;gap:2px;padding:var(--space-5) var(--space-6)}
.gallery figcaption b{font-family:var(--font-display);font-size:var(--text-lg)}
.gallery figcaption span{color:var(--color-text-muted);font-size:var(--text-sm)}
.inds{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);margin-top:var(--space-10)}
.inds li{border:1px solid var(--color-border);border-radius:var(--radius-full);padding:6px 14px;font-size:var(--text-xs);color:var(--color-text-muted)}

/* footer v2 */
.footer__in{grid-template-columns:1.3fr 1fr 1fr 1.2fr}
.footer__svc,.footer__social{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-sm)}
.footer__svc a{color:var(--color-text-muted);text-decoration:none}
.footer__svc a:hover{color:var(--color-primary)}
.footer__in .footer__contact{order:4}
.soc{display:flex;gap:var(--space-3);margin-top:var(--space-2)}
.soc a{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--color-border);color:var(--color-text)}
.soc a:hover{background:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}

/* chat bubble */
.chat{position:fixed;right:20px;bottom:20px;z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-3)}
.chat__btn{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--color-primary);color:var(--color-text-inverse);font-weight:700;font-size:var(--text-sm);padding:12px 18px;border-radius:var(--radius-full);box-shadow:var(--shadow-lg)}
.chat__btn:hover{background:var(--color-primary-hover)}
.chat__panel{width:min(320px,calc(100vw - 40px));background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:var(--space-2)}
.chat__panel[hidden]{display:none}
.chat__h{font-family:var(--font-display);font-weight:800;font-size:var(--text-lg)}
.chat__sub{font-size:var(--text-xs);color:var(--color-text-faint);margin-bottom:var(--space-2)}
.chat__opt{display:block;text-align:left;width:100%;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--color-border);color:var(--color-text);text-decoration:none;font-size:var(--text-sm);font-weight:500}
.chat__opt:hover{border-color:var(--color-primary);color:var(--color-primary)}

@media (max-width:1100px){.feats__list{grid-template-columns:repeat(2,1fr)}.footer__in{grid-template-columns:1fr 1fr}.footer__in .footer__contact{order:0}}
@media (max-width:900px){.hero__grid{grid-template-columns:1fr}.hero--split h1{max-width:16ch}.works__in{flex-direction:column;align-items:flex-start;gap:var(--space-3)}}
@media (max-width:720px){.gallery{grid-template-columns:1fr}.feats__list{grid-template-columns:1fr}.footer__in{grid-template-columns:1fr}.chat__btn span{display:none}.chat__btn{padding:14px}.works__list li{font-size:var(--text-sm)}}
.footer__in .footer__copy{order:9}
.footer__in .footer__contact{align-items:flex-start}
.footer__in .footer__contact address{text-align:left}
.brand__logo{height:48px;width:auto}
.footer__logo{width:150px!important;height:auto}
.footer__brand{flex-direction:column;align-items:flex-start}
.faq__art{margin-top:var(--space-8);border-radius:var(--radius-xl);border:1px solid var(--color-border);width:100%}
@media (max-width:720px){.brand__logo{height:40px}.faq__art{margin-bottom:var(--space-8)}}
.brand img.brand__logo{width:auto;height:54px}
@media (max-width:720px){.brand img.brand__logo{height:44px}}
.brand__logo,.footer__logo{mix-blend-mode:lighten}
