@font-face{font-family:Fraunces;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fonts/fraunces-normal-400-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:italic;font-weight:400 500;font-display:swap;src:url(/assets/fonts/fraunces-italic-400-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/manrope-normal-400-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/cormorant-garamond-normal-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/assets/fonts/cormorant-garamond-italic-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f6f3ec;--surface:#efeae0;--surface-2:#e7e1d4;--surface-card:#faf8f3;--ink:#0a1428;--ink-900:#050b16;--ink-800:#101d36;--ink-muted:#3f4c63;--ink-soft:#5a6780;--gold:#a9832f;--gold-text:#8a6a1f;--gold-soft:rgba(169,131,47,.45);--gold-faint:rgba(169,131,47,.18);--line:rgba(10,20,40,.1);--line-strong:rgba(10,20,40,.22);--shadow-sm:0 1px 2px rgba(10,20,40,.04), 0 2px 8px -2px rgba(10,20,40,.06);--shadow-md:0 2px 4px rgba(10,20,40,.04), 0 14px 36px -12px rgba(10,20,40,.16);--shadow-lg:0 4px 8px rgba(10,20,40,.04), 0 28px 60px -20px rgba(10,20,40,.22);--radius-card:16px;--radius-btn:10px;--radius-sm:8px;--radius-md:var(--radius-card);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:40px;--s-8:48px;--s-9:64px;--s-10:80px;--s-11:96px;--s-12:128px;--section-y:clamp(96px, 9vw, 128px);--ease-out:cubic-bezier(.22,1,.36,1);--dur-fast:.18s;--dur-reveal:.6s;--font-display:"Fraunces", Georgia, serif;--font-body:"Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--container:1200px;--pad:clamp(16px, 5vw, 64px);--navy-950:var(--ink-900);--navy-900:var(--ink);--navy-800:var(--ink-800);--navy-700:#172a4a;--navy-600:#213762;--gold-600:var(--gold);--gold-500:var(--gold);--gold-400:var(--gold);--gold-300:var(--gold);--ivory:var(--ink);--ivory-dim:var(--ink-muted);--slate:var(--ink-soft);--line-soft:var(--line);--shadow-1:var(--shadow-md)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}@media(min-width:1100px){body{font-size:18px}}.ambient-glow,.goldader{display:none}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}button{font-family:inherit;cursor:pointer}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:600;margin:0;color:var(--ink);letter-spacing:-.015em;line-height:1.1}h1{font-size:clamp(2.6rem,6vw,5rem);letter-spacing:-.02em;line-height:1.05}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.25rem,2vw,1.5rem);letter-spacing:-.01em}p{margin:0}p,li{max-width:65ch}.container{max-width:var(--container);margin:0 auto;padding-inline:var(--pad)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:var(--radius-sm)}::selection{background:#a9832f40;color:var(--ink-900)}.eyebrow{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted)}.eyebrow:before{content:"";width:24px;height:1px;background:var(--gold);display:inline-block;flex-shrink:0}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;font-family:var(--font-body);font-size:15px;font-weight:600;letter-spacing:.005em;line-height:1.2;border-radius:var(--radius-btn);border:1px solid transparent;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) ease,border-color var(--dur-fast) ease,background-color var(--dur-fast) ease,color var(--dur-fast) ease;white-space:nowrap}.btn svg{width:16px;height:16px;flex-shrink:0;transition:transform var(--dur-fast) var(--ease-out)}.btn:hover svg:last-child{transform:translate(3px)}.btn-primary,.btn-gold{background:var(--ink);color:var(--bg);border-color:var(--ink);box-shadow:var(--shadow-sm)}.btn-primary:hover,.btn-gold:hover{background:var(--ink-900);border-color:var(--ink-900);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary,.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}.btn-secondary:hover,.btn-ghost:hover{border-color:var(--ink);background:#0a14280a;transform:translateY(-1px)}.btn-line{background:transparent;color:var(--ink);border:none;padding:6px 0;border-bottom:1px solid var(--gold-soft);border-radius:0;font-size:15px}.btn-line:hover{border-color:var(--gold)}.arrow-link{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--ink)}.arrow-link svg{width:16px;height:16px;transition:transform var(--dur-fast) var(--ease-out)}.arrow-link:hover svg{transform:translate(3px)}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:18px 0;background:transparent;border-bottom:1px solid transparent;transition:background-color .3s ease,padding .3s ease,border-color .3s ease,box-shadow .3s ease}.site-header.is-scrolled{background:#f6f3ecd1;backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);padding:12px 0;border-color:var(--line);box-shadow:0 8px 24px -16px #0a14282e}.header-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:baseline;gap:.28em;font-family:Cormorant Garamond,Fraunces,Georgia,serif;font-size:32px;line-height:1;letter-spacing:.01em;color:var(--ink);white-space:nowrap;transition:opacity var(--dur-fast) ease}.brand:hover{opacity:.82}.brand-mark{display:none}.brand strong{font-weight:600;color:var(--ink)}.brand span{color:var(--gold);font-style:italic;font-weight:500}.cta-band .brand strong,.is-dark .brand strong{color:var(--bg)}.site-footer .brand span{color:var(--gold-text)}@media(max-width:980px){.brand{font-size:26px}}.main-nav{display:flex;align-items:center;gap:36px}.main-nav ul{display:flex;gap:28px}.main-nav a{position:relative;font-size:15px;font-weight:600;color:var(--ink-muted);padding:6px 0;transition:color var(--dur-fast) ease}.main-nav a:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease-out)}.main-nav a:hover,.main-nav a.is-active{color:var(--ink)}.main-nav a:hover:after,.main-nav a.is-active:after{transform:scaleX(1)}.has-dropdown{position:relative}.dropdown{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%) translateY(6px);min-width:260px;background:var(--surface-card);border:1px solid var(--line);border-radius:12px;padding:8px;opacity:0;visibility:hidden;transition:opacity .2s ease,transform .2s var(--ease-out),visibility .2s;box-shadow:var(--shadow-lg)}.dropdown:before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}.dropdown a{display:block;padding:10px 12px;border-radius:var(--radius-sm);font-size:14.5px;color:var(--ink-muted)}.dropdown a:after{display:none}.dropdown a:hover{background:var(--surface);color:var(--ink)}@media(min-width:981px){.has-dropdown:hover .dropdown,.has-dropdown:focus-within .dropdown{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}}.header-cta{display:flex;align-items:center;gap:12px}.header-cta .btn{padding:11px 18px;font-size:14px}.nav-toggle{display:none;width:44px;height:44px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-card);position:relative;flex-shrink:0}.nav-toggle span,.nav-toggle span:before,.nav-toggle span:after{content:"";position:absolute;left:0;right:0;height:1.5px;background:var(--ink);transition:transform .25s var(--ease-out),opacity .25s ease,top .25s ease}.nav-toggle span{top:50%;left:12px;right:12px}.nav-toggle span:before{top:-7px}.nav-toggle span:after{top:7px}.nav-toggle.is-open span{background:transparent}.nav-toggle.is-open span:before{top:0;transform:rotate(45deg)}.nav-toggle.is-open span:after{top:0;transform:rotate(-45deg)}@media(max-width:980px){.main-nav{position:fixed;inset:0 0 0 auto;width:min(360px,86vw);height:100dvh;background:var(--bg);border-left:1px solid var(--line);flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:96px 28px 40px;transform:translate(100%);transition:transform .4s var(--ease-out);gap:0;z-index:96;overflow-y:auto}.main-nav.is-open{transform:translate(0);box-shadow:var(--shadow-lg)}.main-nav ul{flex-direction:column;gap:0;width:100%}.main-nav ul li{width:100%;border-bottom:1px solid var(--line)}.main-nav a{display:block;padding:16px 2px;font-size:17px;color:var(--ink)}.main-nav a:after{display:none}.has-dropdown .dropdown{position:static;opacity:1;visibility:visible;transform:none;display:none;background:transparent;border:none;box-shadow:none;padding:0 0 8px 14px;min-width:0}.has-dropdown .dropdown a{font-size:15px;padding:10px 2px;color:var(--ink-muted)}.has-dropdown.is-open .dropdown{display:block}.header-cta{display:none}.nav-toggle{display:block;margin-left:auto;z-index:97}.nav-backdrop{position:fixed;inset:0;background:#050b1659;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s;z-index:95}.nav-backdrop.is-open{opacity:1;visibility:visible}}.hero{position:relative;padding:clamp(120px,14vw,170px) 0 clamp(64px,7vw,96px);overflow:hidden}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,80px);align-items:center}.hero-copy{max-width:680px}.hero h1{max-width:12ch;font-size:clamp(2.25rem,9vw,5rem);overflow-wrap:anywhere}@media(min-width:600px){.hero h1{font-size:clamp(2.6rem,6vw,5rem);overflow-wrap:normal}}.hero h1.is-long{font-size:clamp(2.1rem,4.2vw,3.7rem);max-width:17ch}.hero h1.is-long em{display:block;margin-top:.12em;text-decoration:none}.hero h1.is-long em:after{content:"";display:block;width:120px;height:2px;background:var(--gold);margin-top:.18em}.hero h1 em{font-style:italic;font-weight:500;color:var(--ink);text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:.08em;text-decoration-skip-ink:none}.hero p.lead{margin-top:28px;font-size:clamp(17px,1.4vw,20px);color:var(--ink-muted);max-width:56ch;line-height:1.6}.hero-actions{margin-top:40px;display:flex;gap:12px;flex-wrap:wrap}.hero-note a{color:var(--ink);border-bottom:1px solid var(--gold-soft)}.hero-note a:hover{border-color:var(--gold)}.editorial-more{margin-top:18px}.hero-note{margin-top:32px;padding-top:20px;border-top:1px solid var(--gold-faint);font-family:var(--font-display);font-style:italic;font-weight:400;font-size:1.1rem;line-height:1.5;color:var(--ink-muted);max-width:46ch}.hero-visual{position:relative;max-width:520px;margin-left:auto;width:100%;padding:0 0 32px 32px}.hero-media{margin:0;position:relative;overflow:hidden;border-radius:var(--radius-card);box-shadow:var(--shadow-lg);aspect-ratio:4/5;background:var(--surface-2)}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 60%,rgba(5,11,22,.28))}.hero-card{position:absolute;left:0;bottom:0;background:var(--surface-card);border:1px solid var(--line);border-radius:var(--radius-card);padding:20px 22px;box-shadow:var(--shadow-lg);max-width:280px}@keyframes imgIn{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:none}}.hero-media img{animation:imgIn .9s var(--ease-out) .15s both}.hero-card-title{font-family:var(--font-display);font-style:italic;font-weight:500;font-size:1.2rem;line-height:1.2;color:var(--ink);margin-bottom:8px;padding-bottom:10px;border-bottom:1px solid var(--gold-faint)}.hero-card p{font-size:14.5px;line-height:1.55;color:var(--ink-muted)}@keyframes heroIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes heroMove{0%{transform:translateY(16px)}to{transform:none}}.hero-copy>*{animation:heroIn .7s var(--ease-out) both}.hero-copy>h1{animation-name:heroMove}.hero-copy>:nth-child(2){animation-delay:.06s}.hero-copy>:nth-child(3){animation-delay:.12s}.hero-copy>:nth-child(4){animation-delay:.18s}.hero-copy>:nth-child(5){animation-delay:.24s}.hero-visual{animation:heroIn .9s var(--ease-out) .2s both}.stats-ribbon{position:relative;margin-top:clamp(56px,7vw,96px);padding:clamp(32px,4vw,48px) clamp(24px,4vw,56px);background:var(--ink);color:var(--bg);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);display:grid;grid-template-columns:repeat(4,1fr);gap:32px;overflow:hidden}.stats-ribbon:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--gold),transparent 70%)}.stat{text-align:left;position:relative;padding-left:20px;border-left:1px solid rgba(246,243,236,.14)}.stat .num{font-family:var(--font-display);font-weight:500;font-size:clamp(2.6rem,4.2vw,3.8rem);line-height:1;color:var(--bg);display:flex;align-items:baseline;gap:2px;letter-spacing:-.02em}.stat .label{margin-top:12px;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:#f6f3eca8;font-weight:700}@media(max-width:980px){.hero-grid{grid-template-columns:1fr}.hero-visual{max-width:none;margin:0;padding:0 0 28px}.hero-media{aspect-ratio:4/3}.hero-card{left:16px;bottom:0}}@media(max-width:900px){.stats-ribbon{grid-template-columns:repeat(2,1fr);row-gap:32px}}@media(max-width:600px){.hero h1{max-width:none}.hero-actions .btn{width:100%}.hero-media{aspect-ratio:4/3.2}.hero-card{max-width:calc(100% - 32px);padding:16px 18px}}section{position:relative}.section{padding:var(--section-y) 0}.section-tight{padding:clamp(64px,7vw,96px) 0}.section-alt{background:var(--surface)}.section-border-top{border-top:1px solid var(--line)}.section-head{max-width:720px;margin-bottom:clamp(40px,5vw,64px)}.section-head h2{margin-top:20px}.section-head p{margin-top:20px;color:var(--ink-muted);font-size:1.05em}.services-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.service-card{position:relative;display:flex;flex-direction:column;background:var(--surface-card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .25s var(--ease-out),box-shadow .25s ease,border-color .25s ease;grid-column:span 2}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--line-strong)}.service-body{padding:28px 32px 32px;display:flex;flex-direction:column;flex-grow:1;position:relative}.service-card.is-featured{grid-column:span 4;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.service-card.is-featured .service-media{aspect-ratio:auto;min-height:100%}.service-card.is-featured .service-body{padding:40px;justify-content:center}.service-card.is-featured p{flex-grow:0}.service-card.is-featured h3{padding-right:0}.service-card.is-featured .service-num{position:static;display:block;margin-bottom:14px}.service-media{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--surface-2)}.service-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}.service-card:hover .service-media img{transform:scale(1.03)}.media.is-missing img{display:none}.media.is-missing:before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,var(--surface-2),var(--surface))}.media.is-missing .media-fallback{display:flex}.media-fallback{display:none;position:absolute;inset:0;align-items:center;justify-content:center;color:var(--ink-soft)}.media-fallback svg{width:48px;height:48px;opacity:.6}.service-icon{width:44px;height:44px;margin-bottom:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);transition:border-color .25s ease}.service-icon svg{width:22px;height:22px}.service-card:hover .service-icon{border-color:var(--gold-soft)}.service-card h3{margin-bottom:12px;padding-right:40px}.service-card.is-featured h3{font-size:clamp(1.5rem,2.1vw,1.9rem)}.service-card p{color:var(--ink-muted);font-size:15.5px;line-height:1.6;flex-grow:1}.service-card.is-featured p{font-size:17px;max-width:40ch}.service-card .card-link{display:inline-flex;align-items:center;gap:8px;margin-top:28px;font-size:14.5px;font-weight:700;color:var(--ink)}.service-card .card-link svg{width:15px;height:15px;transition:transform var(--dur-fast) var(--ease-out)}.service-card:hover .card-link svg{transform:translate(3px)}.service-num{position:absolute;top:30px;right:32px;font-family:var(--font-display);font-style:italic;font-size:15px;color:var(--gold-text)}.service-card.is-navy .service-num{color:var(--gold)}.service-card.is-featured .service-num{top:40px;right:40px}.service-card.is-featured{background:var(--bg)}.service-card.is-navy{background:var(--ink);border-color:var(--ink);color:var(--bg)}.service-card.is-navy h3,.service-card.is-navy .card-link{color:var(--bg)}.service-card.is-navy p{color:#f6f3ecb8}.service-card.is-navy:hover{border-color:var(--ink)}.service-card.is-navy .media.is-missing:before{background:linear-gradient(160deg,var(--ink-800),var(--ink))}.service-card.is-navy .media-fallback{color:#f6f3ec99}.service-card.is-warm{background:var(--surface-2);border-color:transparent}@media(max-width:980px){.services-grid{grid-template-columns:repeat(2,1fr)}.service-card,.service-card.is-featured{grid-column:span 1}.service-card.is-featured{grid-column:span 2;grid-template-columns:1fr}.service-card.is-featured .service-media{aspect-ratio:2/1;min-height:0}.service-card.is-featured .service-body{padding:32px}}@media(max-width:600px){.services-grid{grid-template-columns:1fr}.service-card,.service-card.is-featured{grid-column:span 1}.service-card.is-featured .service-media{aspect-ratio:3/2}.service-body,.service-card.is-featured .service-body{padding:24px 24px 28px}.service-num,.service-card.is-featured .service-num{top:26px;right:24px}}.photo-band{position:relative;margin:0 0 clamp(56px,7vw,96px);border-radius:var(--radius-card);overflow:hidden;aspect-ratio:21/9;background:var(--surface-2);box-shadow:var(--shadow-lg)}.photo-band img{width:100%;height:100%;object-fit:cover}.photo-band:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 45%,rgba(5,11,22,.55))}.photo-band figcaption{position:absolute;left:clamp(20px,3vw,40px);right:clamp(20px,3vw,40px);bottom:clamp(20px,3vw,36px);z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--bg)}.photo-band figcaption strong{font-family:var(--font-display);font-weight:500;font-size:clamp(1.3rem,2.4vw,1.9rem);letter-spacing:-.01em;display:block}.photo-band figcaption span{font-family:var(--font-display);font-style:italic;font-size:1.05rem;color:#f6f3ecd9}@media(max-width:600px){.photo-band{aspect-ratio:4/3}}.editorial{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,96px);align-items:start}.editorial-head{position:sticky;top:120px}.editorial-head .eyebrow{margin-bottom:20px}.editorial-head h2{max-width:14ch}.editorial-head .btn{margin-top:36px}.editorial-body>p{color:var(--ink-muted);font-size:1.08em;line-height:1.65;max-width:58ch}.cities-line{margin-top:24px;font-family:var(--font-display);font-style:italic;font-weight:400;font-size:clamp(1.2rem,1.8vw,1.5rem);line-height:1.4;color:var(--ink);max-width:30ch}.cities-line em{font-style:normal;color:var(--gold-text)}.promise-grid{margin-top:40px;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.promise{background:var(--surface-card);border:1px solid var(--line);border-radius:var(--radius-card);padding:24px 24px 26px;box-shadow:var(--shadow-sm);transition:transform .25s var(--ease-out),box-shadow .25s ease,border-color .25s ease}.promise:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--line-strong)}.promise svg{width:24px;height:24px;color:var(--gold);margin-bottom:18px;display:block}.promise h3{font-size:1.2rem;margin-bottom:8px}.promise p{color:var(--ink-muted);font-size:15px;line-height:1.6}@media(max-width:600px){.promise-grid{grid-template-columns:1fr}}.check-list{display:flex;flex-direction:column}.check-list li{display:flex;gap:16px;align-items:flex-start;padding:16px 0;border-top:1px solid var(--gold-faint);font-size:16.5px;color:var(--ink);font-weight:500;max-width:none}.check-list li:last-child{border-bottom:1px solid var(--gold-faint)}.check-list svg{width:20px;height:20px;flex-shrink:0;margin-top:3px;color:var(--gold)}@media(max-width:900px){.editorial{grid-template-columns:1fr}.editorial-head{position:static}}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split.reverse .split-media{order:2}.split-media{position:relative;aspect-ratio:4/5;border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-md)}.split-media svg,.split-media img{width:100%;height:100%;object-fit:cover}.split-text .eyebrow{margin-bottom:20px}.split-text h2{margin-bottom:22px}.split-text p{color:var(--ink-muted);line-height:1.7;margin-bottom:16px}.split-text .check-list{margin-top:28px}@media(max-width:900px){.split,.split.reverse{grid-template-columns:1fr;gap:44px}.split.reverse .split-media{order:0}}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}.process-step{padding:36px 30px;border-right:1px solid var(--line);position:relative}.process-step:last-child{border-right:none}.process-num{font-family:var(--font-display);font-style:italic;color:var(--gold-text);font-size:16px;margin-bottom:16px;display:block}.process-step h4{font-size:18px;margin-bottom:10px}.process-step p{color:var(--ink-muted);font-size:15px;line-height:1.65}@media(max-width:900px){.process{grid-template-columns:1fr;border-top:none}.process-step{border-right:none;border-top:1px solid var(--line);padding:28px 0}}.quote-block{max-width:860px;margin:0 auto;text-align:center;padding:0 var(--pad)}.quote-block svg{width:32px;height:32px;color:var(--gold);margin-bottom:28px}.quote-block p{font-family:var(--font-display);font-size:clamp(1.4rem,2.8vw,2rem);line-height:1.35;color:var(--ink);font-style:italic;font-weight:400;max-width:none;letter-spacing:-.01em}.quote-block .cite{margin-top:28px;font-family:var(--font-body);font-size:14.5px;letter-spacing:.01em;color:var(--ink-soft);font-weight:600;font-style:normal}.quote-block .cite:before,.quote-block .cite:after{content:"";display:inline-block;width:24px;height:1px;background:var(--gold);vertical-align:middle;margin:0 14px}.kitech-band{background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--radius-card) + 8px);padding:clamp(32px,5vw,72px);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,5vw,80px);align-items:start;position:relative;overflow:hidden}.kitech-band:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gold)}.kitech-intro .eyebrow{margin-bottom:20px}.kitech-intro h2{max-width:16ch}.kitech-intro>p{margin-top:20px;color:var(--ink-muted);font-size:1.05em}.kitech-intro .btn{margin-top:32px}.kitech-media{margin:0;position:relative;overflow:hidden;border-radius:var(--radius-card);aspect-ratio:3/2;background:var(--surface-2);box-shadow:var(--shadow-md)}.kitech-media img{width:100%;height:100%;object-fit:cover}.kitech-grid{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px;border-top:1px solid var(--gold-soft);margin-top:8px}.kitech-card{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:28px 0 8px}.kitech-num{font-family:var(--font-display);font-style:italic;color:var(--gold-text);font-size:1.1rem;line-height:1.5}.kitech-card h3{font-size:1.2rem;margin-bottom:8px;line-height:1.5}.kitech-card .eyebrow{margin-bottom:8px}.kitech-card .eyebrow:before{display:none}.kitech-card p{color:var(--ink-muted);font-size:15.5px;line-height:1.6}@media(max-width:900px){.kitech-band{grid-template-columns:1fr}.kitech-grid{grid-template-columns:1fr;gap:0}.kitech-card{border-bottom:1px solid var(--gold-faint);padding:20px 0}.kitech-card:last-child{border-bottom:none}}.app-teaser{padding-top:0}.app-band{background:radial-gradient(120% 90% at 85% 30%,rgba(169,131,47,.16),transparent 55%),var(--ink);color:var(--bg);border-radius:calc(var(--radius-card) + 8px);padding:clamp(32px,5vw,72px);display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,5vw,80px);align-items:center;position:relative;overflow:hidden}.app-band:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gold)}.app-intro .eyebrow{color:#d9b867;margin-bottom:20px}.app-intro h2{color:var(--bg);font-size:clamp(2.2rem,4.4vw,3.6rem)}.app-intro h2 em{font-style:italic;font-weight:500;color:#d9b867}.app-intro>p{margin-top:20px;color:#f6f3ecc7;font-size:1.05em;max-width:52ch}.app-worlds{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px;padding-top:24px;border-top:1px solid rgba(169,131,47,.45)}.app-world-label{display:block;font-family:var(--font-display);font-style:italic;font-size:1.25rem;color:#d9b867;margin-bottom:10px}.app-world ul{list-style:none;margin:0;padding:0}.app-world li{position:relative;padding-left:18px;margin-top:8px;color:#f6f3ecdb;font-size:15.5px;line-height:1.5}.app-world li:before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;background:var(--gold);transform:rotate(45deg)}.app-langs{margin-top:24px;font-size:14px;letter-spacing:.04em;color:#f6f3ec9e}.app-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:32px}.app-store-soon{display:inline-flex;align-items:center;gap:12px;padding:10px 18px 10px 14px;border:1px solid rgba(246,243,236,.35);border-radius:var(--radius-btn);color:var(--bg);font-weight:600;font-size:16px;line-height:1.15}.app-store-soon svg{width:26px;height:26px;color:#d9b867;flex-shrink:0}.app-store-soon small{display:block;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#f6f3ec9e}.app-actions .btn-gold{background:var(--bg);color:var(--ink);border-color:var(--bg)}.app-actions .btn-gold:hover{background:#fff;border-color:#fff}.app-media{margin:0 auto;width:100%;max-width:320px;border-radius:28px;overflow:hidden;border:1px solid rgba(169,131,47,.45);box-shadow:0 30px 80px -20px #0009;aspect-ratio:9/16;background:var(--ink-900)}.app-video{display:block;width:100%;height:100%;object-fit:cover}@media(max-width:900px){.app-band{grid-template-columns:1fr}.app-media{max-width:280px}}@media(max-width:560px){.app-worlds{grid-template-columns:1fr}.app-actions .btn{white-space:normal;text-align:center}}.faq-layout{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,5vw,80px);align-items:start}.faq-layout .section-head{margin-bottom:0;position:sticky;top:120px}.faq-list{display:flex;flex-direction:column}.faq-item{border-top:1px solid var(--line);background:transparent;border-radius:0;padding:0}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;background:none;border:none;text-align:left;font-family:var(--font-display);font-size:clamp(1.1rem,1.6vw,1.3rem);font-weight:500;color:var(--ink);line-height:1.3;letter-spacing:-.01em;transition:color var(--dur-fast) ease}.faq-trigger:hover{color:var(--ink-900)}.faq-icon{position:relative;width:28px;height:28px;flex-shrink:0;border:1px solid var(--line-strong);border-radius:50%;transition:border-color .2s ease,background-color .2s ease}.faq-icon:before,.faq-icon:after{content:"";position:absolute;left:50%;top:50%;background:var(--ink);transition:transform .3s var(--ease-out),opacity .3s ease}.faq-icon:before{width:12px;height:1.5px;transform:translate(-50%,-50%)}.faq-icon:after{width:1.5px;height:12px;transform:translate(-50%,-50%)}.faq-trigger[aria-expanded=true] .faq-icon{border-color:var(--gold);background:var(--gold-faint)}.faq-trigger[aria-expanded=true] .faq-icon:after{transform:translate(-50%,-50%) scaleY(0)}.faq-heading{margin:0;font-size:inherit;line-height:inherit;letter-spacing:0}.faq-panel{display:grid;grid-template-rows:1fr;transition:grid-template-rows .4s var(--ease-out)}.faq-panel[hidden]{display:none}.faq-panel>div{overflow:hidden}.faq-panel p{color:var(--ink-muted);font-size:16px;line-height:1.65;padding:0 0 28px;max-width:60ch;transition:opacity .3s ease,transform .3s var(--ease-out)}html.js .faq-item:not(.is-open) .faq-panel{grid-template-rows:0fr}html.js .faq-item:not(.is-open) .faq-panel p{opacity:0;transform:translateY(-6px)}html.js .faq-item.is-open .faq-panel p{transition-delay:.08s}@media(max-width:900px){.faq-layout{grid-template-columns:1fr}.faq-layout .section-head{position:static}}.faq-item summary{list-style:none;cursor:pointer;padding:22px 40px 22px 0;position:relative;font-family:var(--font-display);font-size:1.15rem;font-weight:500;color:var(--ink);line-height:1.4}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"";position:absolute;right:8px;top:50%;width:10px;height:10px;transform:translateY(-60%) rotate(45deg);border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);transition:transform .3s var(--ease-out)}.faq-item[open] summary:after{transform:translateY(-30%) rotate(225deg)}.faq-item>p{color:var(--ink-muted);font-size:16px;line-height:1.65;padding:0 0 24px;margin:0}.counter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center}@media(max-width:700px){.counter-grid{grid-template-columns:1fr;gap:36px}}.cta-band{position:relative;background:var(--ink);color:var(--bg);padding:clamp(80px,9vw,120px) 0;overflow:hidden}.cta-band:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold) 20%,var(--gold) 80%,transparent)}.cta-band .container{position:relative;z-index:1}.cta-band .eyebrow{color:#f6f3ecb3}.cta-band h2{color:var(--bg);max-width:18ch;margin-top:20px;font-weight:500}.cta-band .cta-lead{margin-top:20px;color:#f6f3ecb8;font-size:1.05em;max-width:52ch}.cta-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:40px}.cta-band .btn-primary,.cta-band .btn-gold{background:var(--bg);color:var(--ink);border-color:var(--bg)}.cta-band .btn-primary:hover,.cta-band .btn-gold:hover{background:#fff;border-color:#fff}.cta-band .btn-secondary,.cta-band .btn-ghost{color:var(--bg);border-color:#f6f3ec59}.cta-band .btn-secondary:hover,.cta-band .btn-ghost:hover{border-color:var(--bg);background:#f6f3ec14}.cta-band a:focus-visible,.cta-band button:focus-visible{outline-color:var(--gold)}.contact-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:0;border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-md)}.contact-side{background:var(--surface);padding:64px 48px;position:relative}.contact-side h3{font-size:1.6rem;margin-bottom:18px}.contact-side>p{color:var(--ink-muted);margin-bottom:40px;line-height:1.7}.contact-methods{display:flex;flex-direction:column;gap:22px}.contact-method{display:flex;gap:16px;align-items:flex-start}.contact-method .ico{width:42px;height:42px;flex-shrink:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--ink);background:var(--surface-card);transition:border-color .2s ease,transform .2s var(--ease-out)}.contact-method .ico svg{width:19px;height:19px}.contact-method:hover .ico{border-color:var(--gold-soft);transform:translateY(-2px)}.contact-method .txt strong{display:block;font-size:14px;color:var(--ink);margin-bottom:3px}.contact-method .txt a,.contact-method .txt span{font-size:14.5px;color:var(--ink-muted)}.contact-method .txt a:hover{color:var(--ink)}.contact-form{background:var(--surface-card);padding:64px 56px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{position:relative;margin-bottom:26px}.field label{position:absolute;left:0;top:16px;font-size:15px;color:var(--ink-soft);transition:transform .2s ease,color .2s ease;pointer-events:none;transform-origin:left top}.field input,.field textarea,.field select{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line-strong);padding:16px 0 10px;font-family:var(--font-body);font-size:16px;color:var(--ink);transition:border-color .2s ease;border-radius:0}.field select{appearance:none;color:var(--ink);cursor:pointer}.field select option{background:var(--bg);color:var(--ink)}.field:has(select) label{transform:translateY(-15px) scale(.78);color:var(--gold)}.field:has(select):after{content:"";position:absolute;right:4px;top:24px;width:8px;height:8px;border-right:1px solid var(--ink-soft);border-bottom:1px solid var(--ink-soft);transform:rotate(45deg);pointer-events:none}.field textarea{resize:vertical;min-height:100px}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--ink)}.field input:focus+label,.field input:not(:placeholder-shown)+label,.field textarea:focus+label,.field textarea:not(:placeholder-shown)+label,.field.has-value label{transform:translateY(-15px) scale(.78);color:var(--gold)}.field-underline{position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease-out)}.field input:focus~.field-underline,.field textarea:focus~.field-underline{transform:scaleX(1)}.checkbox-row{display:flex;gap:12px;align-items:flex-start;margin:8px 0 32px}.checkbox-row input{margin-top:4px;accent-color:var(--ink);width:16px;height:16px;flex-shrink:0}.checkbox-row label{font-size:13.5px;color:var(--ink-muted);line-height:1.6}.checkbox-row a{color:var(--ink);border-bottom:1px solid var(--gold-soft)}.submit-btn{width:100%;justify-content:center;padding:17px 30px;position:relative;overflow:hidden}.submit-btn .btn-label,.submit-btn .btn-loading,.submit-btn .btn-success{display:flex;align-items:center;gap:10px;transition:opacity .25s ease,transform .25s ease}.submit-btn .btn-loading,.submit-btn .btn-success{position:absolute;inset:0;align-items:center;justify-content:center;opacity:0;pointer-events:none}.submit-btn.is-loading .btn-label{opacity:0}.submit-btn.is-loading .btn-loading{opacity:1}.submit-btn.is-success .btn-label,.submit-btn.is-success .btn-loading{opacity:0}.submit-btn.is-success .btn-success{opacity:1}.submit-btn.is-success{background:#2f6b3d;border-color:#2f6b3d}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(246,243,236,.3);border-top-color:var(--bg);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form-note{margin-top:16px;font-size:13px;color:var(--ink-soft);text-align:center}.form-status{font-size:13.5px;color:var(--ink-muted)}@media(max-width:980px){.contact-wrap{grid-template-columns:1fr}.contact-side,.contact-form{padding:48px 28px}}@media(max-width:560px){.form-row{grid-template-columns:1fr}}.site-footer{background:var(--surface);border-top:1px solid var(--line);padding:clamp(56px,7vw,80px) 0 32px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:56px}.footer-brand .brand{margin-bottom:20px;font-size:36px}.footer-legal{display:flex;gap:22px;flex-wrap:wrap}.footer-brand p{color:var(--ink-muted);font-size:15px;line-height:1.65;max-width:32ch}.footer-col h5,.footer-col .footer-h{font-family:var(--font-body);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 20px;font-weight:700}.footer-col ul{display:flex;flex-direction:column;gap:12px}.footer-col a{font-size:15px;color:var(--ink-muted);transition:color var(--dur-fast) ease}.footer-col a:hover{color:var(--ink)}.footer-col address{font-style:normal;font-size:15px;color:var(--ink-muted);line-height:1.6}.footer-social{display:flex;gap:10px;margin-top:24px}.footer-social a{width:40px;height:40px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--ink);background:var(--surface-card);transition:border-color var(--dur-fast) ease,transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) ease}.footer-social a:hover{border-color:var(--ink);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.footer-social svg{width:17px;height:17px}.footer-bottom{border-top:1px solid var(--line);padding-top:26px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;font-size:13.5px;color:var(--ink-soft)}.footer-bottom a{color:var(--ink-muted)}.footer-bottom a:hover{color:var(--ink)}@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.footer-grid{grid-template-columns:1fr;gap:32px}}.page-hero{position:relative;padding:clamp(140px,16vw,180px) 0 clamp(56px,7vw,90px);background:var(--bg);border-bottom:1px solid var(--line);overflow:hidden}.page-hero .container{position:relative}.breadcrumb{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--ink-soft);margin-bottom:22px;letter-spacing:.02em;flex-wrap:wrap}.page-hero h1{font-size:clamp(2.2rem,4.6vw,3.6rem);max-width:18ch}.page-hero .lead{margin-top:22px;max-width:58ch;color:var(--ink-muted);font-size:1.08em;line-height:1.6}html.js .reveal{opacity:0;transform:translateY(24px);transition:opacity var(--dur-reveal) var(--ease-out),transform var(--dur-reveal) var(--ease-out)}html.js .reveal.is-visible{opacity:1;transform:none}html.js .reveal-stagger>*{opacity:0;transform:translateY(24px);transition:opacity var(--dur-reveal) var(--ease-out),transform var(--dur-reveal) var(--ease-out)}html.js .reveal-stagger.is-visible>*{opacity:1;transform:none}html.js .reveal-stagger.is-visible>:nth-child(2){transition-delay:80ms}html.js .reveal-stagger.is-visible>:nth-child(3){transition-delay:.16s}html.js .reveal-stagger.is-visible>:nth-child(4){transition-delay:.24s}html.js .reveal-stagger.is-visible>:nth-child(5){transition-delay:.32s}html.js .reveal-stagger.is-visible>:nth-child(6){transition-delay:.4s}html.js .reveal-stagger.is-visible>:nth-child(7){transition-delay:.48s}html.js .reveal-stagger.is-visible>:nth-child(8){transition-delay:.56s}html.js .media img{opacity:0;transform:scale(1.04);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}html.js .media.is-visible img{opacity:1;transform:none}html.js .service-card:hover .media.is-visible img{transform:scale(1.03)}.wa-float{position:fixed;bottom:24px;right:24px;z-index:90;width:56px;height:56px;border-radius:50%;background:var(--ink);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) ease}.wa-float svg{width:26px;height:26px;color:var(--bg)}.wa-float:hover{transform:translateY(-3px)}@media(max-width:600px){.wa-float{width:48px;height:48px;right:calc(14px + env(safe-area-inset-right,0px));bottom:calc(14px + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-md)}.wa-float svg{width:22px;height:22px}}.text-center{text-align:center}.mx-auto{margin-left:auto;margin-right:auto}.mt-0{margin-top:0!important}.small-caps{font-variant:small-caps}.legal-content{max-width:760px}.legal-content h2{font-size:1.6rem;margin-top:48px;margin-bottom:16px}.legal-content h2:first-child{margin-top:0}.legal-content p,.legal-content li{color:var(--ink-muted);line-height:1.7;margin-bottom:14px;font-size:16px}.legal-content ul{padding-left:22px;list-style:disc}.legal-content strong{color:var(--ink)}.legal-content a{color:var(--ink);border-bottom:1px solid var(--gold-soft)}.legal-content a:hover{border-color:var(--gold)}.hero-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:22px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);background:var(--surface-card);box-shadow:var(--shadow-sm)}.hero-icon svg{width:26px;height:26px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0 32px;border-top:1px solid var(--gold-soft)}.step{padding:32px 0 8px;position:relative}.step:before{content:"";position:absolute;top:-1px;left:0;width:48px;height:2px;background:var(--gold)}.step-num{display:block;font-family:var(--font-display);font-style:italic;font-weight:400;font-size:2rem;line-height:1;color:var(--gold-text);margin-bottom:20px}.step h3{font-size:1.25rem;margin-bottom:12px}.step p{color:var(--ink-muted);font-size:15.5px;line-height:1.6}@media(max-width:980px){.steps{grid-template-columns:repeat(2,1fr);gap:0 32px}}@media(max-width:600px){.steps{grid-template-columns:1fr;border-top:none}.step{border-top:1px solid var(--gold-soft);padding:24px 0 20px}}.page-hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,80px);align-items:center}.page-hero .hero-actions{margin-top:36px}.page-hero .hero-note{margin-top:28px}.page-hero h1{max-width:14ch}.page-hero-media{margin:0;position:relative;overflow:hidden;border-radius:var(--radius-card);box-shadow:var(--shadow-lg);aspect-ratio:4/5;background:var(--surface-2)}.page-hero-media img{width:100%;height:100%;object-fit:cover;animation:imgIn .9s var(--ease-out) .15s both}.breadcrumb{display:flex;gap:10px;align-items:center;font-size:13.5px;color:var(--ink-soft);margin-bottom:22px;flex-wrap:wrap}.breadcrumb ol{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.breadcrumb li{display:inline-flex;gap:10px;align-items:center;max-width:none}.breadcrumb li+li:before{content:"";width:14px;height:1px;background:var(--gold-soft)}.breadcrumb a:hover{color:var(--ink)}.breadcrumb [aria-current]{color:var(--ink);font-weight:600}@media(max-width:980px){.page-hero-grid{grid-template-columns:1fr}.page-hero-media{aspect-ratio:3/2}.page-hero h1{max-width:none}}@media(max-width:600px){.page-hero .hero-actions .btn{width:100%}}.prose{max-width:68ch}.prose p{color:var(--ink-muted);font-size:1.05em;line-height:1.7}.prose p+p{margin-top:20px}.prose a{color:var(--ink);border-bottom:1px solid var(--gold-soft)}.prose a:hover{border-color:var(--gold)}.prose-lede{font-family:var(--font-display);font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.4;color:var(--ink);letter-spacing:-.01em;font-weight:400}.prose-lede+p{margin-top:24px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.detail-grid.is-two{grid-template-columns:repeat(2,1fr)}.detail-grid .promise{padding:28px 28px 30px}.detail-grid .promise h3{font-size:1.25rem}.detail-grid .promise p{font-size:15.5px}@media(max-width:980px){.detail-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.detail-grid,.detail-grid.is-two{grid-template-columns:1fr}}.booking-layout{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,5vw,80px);align-items:start}.booking-layout .section-head{margin-bottom:0;position:sticky;top:120px}.booking-alt{margin-top:28px;padding-top:24px;border-top:1px solid var(--gold-faint);color:var(--ink-muted);font-size:15.5px;line-height:1.65}.booking-alt a{color:var(--ink);font-weight:600;border-bottom:1px solid var(--gold-soft)}.booking-alt a:hover{border-color:var(--gold)}.booking{background:var(--surface-card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-md);padding:clamp(24px,3vw,40px);position:relative}.booking-steps{display:flex;gap:0;margin:0 0 28px;padding:0 0 20px;border-bottom:1px solid var(--line);counter-reset:bstep}.booking-steps li{flex:1;display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:600;color:var(--ink-soft);max-width:none}.booking-steps li:before{counter-increment:bstep;content:counter(bstep);width:28px;height:28px;border-radius:50%;border:1px solid var(--line-strong);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-style:italic;font-size:14px;flex-shrink:0}.booking-steps li.is-current{color:var(--ink)}.booking-steps li.is-current:before{background:var(--ink);color:var(--bg);border-color:var(--ink)}.booking-steps li.is-done{color:var(--ink-muted)}.booking-steps li.is-done:before{border-color:var(--gold);color:var(--gold-text)}.booking-status{font-size:15px;color:var(--ink-muted);line-height:1.55}.booking-status:not(:empty){margin-bottom:20px;padding:14px 16px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--line)}.booking-status.is-error{border-color:#a03c2859;color:#7a2e1c;background:#a03c280f}.booking-title{font-size:1.35rem;margin-bottom:8px}.booking-hint{color:var(--ink-muted);font-size:15px;margin-bottom:20px}.booking-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px;align-items:center}.booking-actions .btn{min-height:44px}.btn-text{background:none;border:none;padding:12px 4px;min-height:44px;font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--ink-muted);display:inline-flex;align-items:center;gap:8px;border-radius:var(--radius-sm)}.btn-text:hover{color:var(--ink)}.btn-text svg{width:16px;height:16px}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.topic{position:relative}.topic input{position:absolute;opacity:0;width:1px;height:1px}.topic label{display:flex;flex-direction:column;gap:6px;min-height:44px;cursor:pointer;padding:18px 18px 20px;border:1px solid var(--line-strong);border-radius:var(--radius-btn);background:var(--bg);transition:border-color var(--dur-fast) ease,box-shadow var(--dur-fast) ease,transform var(--dur-fast) var(--ease-out)}.topic label strong{font-family:var(--font-display);font-weight:600;font-size:1.1rem;color:var(--ink);letter-spacing:-.01em}.topic label span{font-size:13.5px;color:var(--ink-muted);line-height:1.45}.topic label:hover{border-color:var(--ink);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.topic input:checked+label{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--surface-card)}.topic input:focus-visible+label{outline:2px solid var(--gold);outline-offset:3px}@media(max-width:600px){.topic-grid{grid-template-columns:1fr}}.day-strip{display:flex;gap:8px;overflow-x:auto;padding:4px 4px 12px;margin:0 -4px 20px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.day-chip{flex:0 0 auto;min-width:72px;min-height:64px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-btn);background:var(--bg);font-family:var(--font-body);color:var(--ink);cursor:pointer;transition:border-color var(--dur-fast) ease,background-color var(--dur-fast) ease,transform var(--dur-fast) var(--ease-out)}.day-chip small{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.day-chip b{font-family:var(--font-display);font-weight:500;font-size:1.3rem;line-height:1}.day-chip em{font-style:normal;font-size:11.5px;color:var(--ink-soft)}.day-chip:hover:not([disabled]){border-color:var(--ink);transform:translateY(-2px)}.day-chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.day-chip[aria-pressed=true] small,.day-chip[aria-pressed=true] em{color:#f6f3ecb3}.day-chip[disabled]{opacity:.4;cursor:not-allowed}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px}.slot{min-height:44px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-btn);background:var(--bg);font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--ink);cursor:pointer;transition:border-color var(--dur-fast) ease,background-color var(--dur-fast) ease,transform var(--dur-fast) var(--ease-out)}.slot:hover{border-color:var(--ink);transform:translateY(-2px)}.slot[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.slot-empty{padding:20px;border:1px dashed var(--line-strong);border-radius:var(--radius-btn);color:var(--ink-muted);font-size:15px}.skeleton{display:grid;gap:10px}.skeleton span{display:block;height:44px;border-radius:var(--radius-btn);background:linear-gradient(90deg,var(--surface) 25%,var(--surface-2) 50%,var(--surface) 75%);background-size:200% 100%;animation:shimmer 1.2s linear infinite}.skeleton span:nth-child(1){width:60%}.skeleton span:nth-child(3){width:80%}@keyframes shimmer{to{background-position:-200% 0}}.booking-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-form .bfield{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.booking-form label{font-size:13.5px;font-weight:700;color:var(--ink-muted);letter-spacing:.02em}.booking-form input,.booking-form textarea{width:100%;min-height:44px;padding:11px 14px;border:1px solid var(--line-strong);border-radius:var(--radius-btn);background:var(--bg);font-family:var(--font-body);font-size:16px;color:var(--ink);transition:border-color var(--dur-fast) ease,box-shadow var(--dur-fast) ease}.booking-form textarea{min-height:96px;resize:vertical}.booking-form input:focus,.booking-form textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px #a9832f40}.booking-form .checkbox-row{margin:4px 0 0}.booking-form .checkbox-row input{width:18px;height:18px;min-height:0;margin-top:3px}.booking-summary{display:flex;align-items:center;gap:14px;padding:14px 16px;margin-bottom:22px;border:1px solid var(--gold-soft);border-radius:var(--radius-btn);background:var(--bg)}.booking-summary svg{width:20px;height:20px;color:var(--gold-text);flex-shrink:0}.booking-summary strong{display:block;font-family:var(--font-display);font-weight:500;font-size:1.1rem;color:var(--ink)}.booking-summary span{font-size:13.5px;color:var(--ink-muted)}.booking-success{text-align:left}.booking-success .mark{width:52px;height:52px;border-radius:50%;border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;color:var(--gold-text);margin-bottom:20px}.booking-success .mark svg{width:24px;height:24px}.booking-success h3{font-size:1.5rem;margin-bottom:10px}.booking-success p{color:var(--ink-muted);line-height:1.65}.booking-success p+p{margin-top:12px}.booking-contact{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.booking-contact a{display:flex;flex-direction:column;gap:4px;min-height:44px;padding:16px;border:1px solid var(--line-strong);border-radius:var(--radius-btn);background:var(--bg);color:var(--ink);transition:border-color var(--dur-fast) ease,transform var(--dur-fast) var(--ease-out)}.booking-contact a:hover{border-color:var(--ink);transform:translateY(-2px)}.booking-contact a strong{font-family:var(--font-display);font-weight:600;font-size:1.05rem}.booking-contact a span{font-size:13.5px;color:var(--ink-muted)}@media(max-width:980px){.booking-layout{grid-template-columns:1fr}.booking-layout .section-head{position:static}}@media(max-width:600px){.booking-form .form-row,.booking-contact{grid-template-columns:1fr}.booking-steps li span{display:none}.booking-steps li.is-current span{display:inline}}.mobile-bar{display:none}@media(max-width:600px){body{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}.wa-float{display:none}.mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:95;display:grid;grid-template-columns:1fr 1.15fr 1.15fr;gap:6px;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:#f6f3eceb;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}.mobile-bar a{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line-strong);border-radius:var(--radius-btn);background:var(--surface-card);font-size:14px;font-weight:700;color:var(--ink);gap:6px;padding:0 8px;white-space:nowrap;min-width:0}.mobile-bar a svg{width:17px;height:17px}.mobile-bar a.is-primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.main-nav.is-open~.mobile-bar{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}html.js .reveal,html.js .reveal-stagger>*,html.js .media img{opacity:1;transform:none;transition:none}.hero-copy>*,.hero-visual,.hero-media img{animation:none}.btn:hover,.service-card:hover,.footer-social a:hover,.wa-float:hover{transform:none}}.nobr{white-space:nowrap}.announce-bar{position:absolute;top:0;left:0;right:0;z-index:101;height:40px;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 16px;background:var(--ink-900);color:var(--bg);font-size:14px;line-height:1.2;text-decoration:none;white-space:nowrap;overflow:hidden;border-bottom:1px solid rgba(169,131,47,.45)}.announce-bar strong{color:#d9b867;font-weight:700}.announce-dot{width:8px;height:8px;border-radius:50%;background:#d9b867;flex-shrink:0;box-shadow:0 0 #d9b86799;animation:announce-pulse 2s ease-out infinite}.announce-cta{font-weight:700;color:#d9b867}.announce-short{display:none}@media(max-width:560px){.announce-short{display:inline}}.announce-bar:hover .announce-cta{text-decoration:underline}@keyframes announce-pulse{0%{box-shadow:0 0 #d9b86799}to{box-shadow:0 0 0 10px #d9b86700}}@media(prefers-reduced-motion:reduce){.announce-dot{animation:none}}.has-announce .site-header{top:40px;transition:top .3s ease,background-color .3s ease,padding .3s ease,border-color .3s ease,box-shadow .3s ease}.has-announce .site-header.is-scrolled{top:0}.has-announce .hero{padding-top:calc(clamp(120px,14vw,170px) + 40px)}@media(max-width:560px){.announce-bar{font-size:13px;gap:8px}.announce-long{display:none}}a.app-store-link{text-decoration:none;transition:background-color .2s ease,border-color .2s ease}a.app-store-link:hover{border-color:#d9b867;background:#d9b86714}
