:root{--color-background:#faf7f0;--color-surface:#ffffff;--color-surface-elevated:#f4efe3;--color-text:#24262b;--color-text-muted:#6b6e76;--color-primary:#c79a3b;--color-primary-soft:#f3e3b9;--color-primary-dark:#a37b25;--color-success:#2e7d4f;--color-warning:#d98b2b;--color-danger:#c3413b;--color-border-subtle:#e0d6c5;--color-border-strong:#c4b6a1;--color-neutral-50:#f7f4ed;--color-neutral-100:#ebe4d7;--color-neutral-200:#d9cfbf;--color-neutral-300:#c2b59f;--color-neutral-400:#a79a86;--color-neutral-500:#8a7f6c;--color-neutral-600:#6b6253;--color-neutral-700:#4d463b;--color-neutral-800:#34302a;--color-neutral-900:#1f1c18;--font-sans:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-serif:"Playfair Display","Times New Roman",serif;--font-mono:"JetBrains Mono","SF Mono",ui-monospace,monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-md:1.0625rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:1.875rem;--font-size-3xl:2.25rem;--font-size-4xl:3rem;--line-height-tight:1.1;--line-height-snug:1.25;--line-height-normal:1.5;--line-height-relaxed:1.7;--space-0:0;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.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;--space-40:10rem;--space-48:12rem;--space-64:16rem;--space-96:24rem;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:18px;--radius-full:999px;--shadow-sm:0 4px 10px rgba(15,12,8,0.08);--shadow-md:0 12px 30px rgba(15,12,8,0.12);--shadow-lg:0 18px 45px rgba(15,12,8,0.18);--shadow-soft-gold:0 0 0 1px rgba(199,154,59,0.18),0 16px 40px rgba(15,12,8,0.16);--transition-fast:150ms ease-out;--transition-base:220ms ease-out;--transition-slow:320ms ease-out;--container-max-width:1120px}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth;text-size-adjust:100%}
body{min-height:100vh;font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-normal);background-color:var(--color-background);color:var(--color-text);-webkit-font-smoothing:antialiased}
img,picture,video,canvas,svg{display:block;max-width:100%}
img{height:auto}
input,button,textarea,select{font:inherit;color:inherit}
button{border:none;background:none;padding:0;cursor:pointer}
ul[role=list],ol[role=list]{list-style:none;margin:0;padding:0}
main{display:block}
body{text-rendering:optimizeLegibility}
a{text-decoration:none;color:var(--color-primary);transition:color var(--transition-base)}
a:hover{color:var(--color-primary-dark)}
a:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}
p{margin-top:0;margin-bottom:var(--space-4);color:var(--color-text-muted)}
h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:var(--space-3);font-family:var(--font-serif);font-weight:600;line-height:var(--line-height-tight);color:var(--color-neutral-900)}
h1{font-size:var(--font-size-4xl)}
h2{font-size:var(--font-size-3xl)}
h3{font-size:var(--font-size-2xl)}
h4{font-size:var(--font-size-xl)}
h5{font-size:var(--font-size-lg)}
h6{font-size:var(--font-size-base);text-transform:uppercase;letter-spacing:0.08em}
@media (max-width:768px){h1{font-size:2.25rem}h2{font-size:1.875rem}h3{font-size:1.5rem}}
small{font-size:var(--font-size-sm)}
strong{font-weight:600;color:var(--color-neutral-900)}
.code,code,pre{font-family:var(--font-mono)}
.container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding-left:var(--space-4);padding-right:var(--space-4)}
.section{padding-top:var(--space-16);padding-bottom:var(--space-16)}
.section--tight{padding-top:var(--space-10);padding-bottom:var(--space-10)}
@media (max-width:768px){.section{padding-top:var(--space-10);padding-bottom:var(--space-10)}}
.flex{display:flex}
.flex-col{flex-direction:column}
.flex-row{flex-direction:row}
.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.items-end{align-items:flex-end}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.justify-end{justify-content:flex-end}
.gap-2{gap:var(--space-2)}
.gap-3{gap:var(--space-3)}
.gap-4{gap:var(--space-4)}
.gap-6{gap:var(--space-6)}
.gap-8{gap:var(--space-8)}
.grid{display:grid}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
@media (max-width:900px){.grid-2,.grid-3{grid-template-columns:1fr}}
.text-center{text-align:center}
.text-right{text-align:right}
.m-auto{margin:auto}
.mt-0{margin-top:0}
.mt-4{margin-top:var(--space-4)}
.mt-6{margin-top:var(--space-6)}
.mt-8{margin-top:var(--space-8)}
.mb-0{margin-bottom:0}
.mb-4{margin-bottom:var(--space-4)}
.mb-6{margin-bottom:var(--space-6)}
.mb-8{margin-bottom:var(--space-8)}
.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}
.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}
.py-8{padding-top:var(--space-8);padding-bottom:var(--space-8)}
.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}
.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:0.7rem 1.4rem;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:600;letter-spacing:0.06em;text-transform:uppercase;border:1px solid transparent;background:var(--color-primary);color:#120f0a;box-shadow:var(--shadow-sm);transition:background-color var(--transition-base),color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-fast),border-color var(--transition-base)}
.button:hover,.btn:hover{background:var(--color-primary-dark);color:#fdfaf4;box-shadow:var(--shadow-md);transform:translateY(-1px)}
.button:active,.btn:active{transform:translateY(0);box-shadow:var(--shadow-sm)}
.button:focus-visible,.btn:focus-visible{outline:2px solid #000;outline-offset:3px;border-color:#000}
.button--ghost,.btn--ghost{background:transparent;color:var(--color-neutral-900);border-color:var(--color-border-strong);box-shadow:none}
.button--ghost:hover,.btn--ghost:hover{background:rgba(0,0,0,0.04);border-color:var(--color-neutral-700);color:var(--color-neutral-900)}
.button--subtle,.btn--subtle{background:var(--color-surface-elevated);color:var(--color-neutral-900);border-color:var(--color-border-subtle);box-shadow:none}
.button--subtle:hover,.btn--subtle:hover{background:#efe5d6;border-color:var(--color-border-strong)}
.button[disabled],.btn[disabled],.button.is-disabled,.btn.is-disabled{opacity:0.5;cursor:not-allowed;box-shadow:none;transform:none}
.input,.textarea,.select{width:100%;padding:0.7rem 0.85rem;border-radius:var(--radius-sm);border:1px solid var(--color-border-subtle);background-color:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);transition:border-color var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base)}
.input::placeholder,.textarea::placeholder{color:var(--color-text-muted)}
.input:focus-visible,.textarea:focus-visible,.select:focus-visible{outline:0;border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary-soft),0 0 0 4px rgba(0,0,0,0.07)}
.textarea{min-height:140px;resize:vertical}
label{display:block;margin-bottom:var(--space-2);font-size:var(--font-size-sm);font-weight:500;color:var(--color-neutral-800)}
.field{margin-bottom:var(--space-4)}
.field__hint{margin-top:var(--space-1);font-size:var(--font-size-xs);color:var(--color-text-muted)}
.field__error{margin-top:var(--space-1);font-size:var(--font-size-xs);color:var(--color-danger)}
.card{position:relative;background-color:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-6);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-sm)}
.card--elevated{background:radial-gradient(circle at top left,rgba(253,246,227,0.8),#ffffff);border-color:rgba(199,154,59,0.45);box-shadow:var(--shadow-soft-gold)}
.card--outlined{box-shadow:none;border-style:solid;border-width:1px;border-color:var(--color-border-strong)}
.card__eyebrow{display:inline-flex;align-items:center;gap:0.35rem;margin-bottom:var(--space-3);font-size:var(--font-size-xs);letter-spacing:0.16em;text-transform:uppercase;color:var(--color-text-muted)}
.badge{display:inline-flex;align-items:center;justify-content:center;padding:0.15rem 0.6rem;border-radius:999px;border:1px solid rgba(199,154,59,0.4);background:rgba(250,247,240,0.9);color:var(--color-neutral-800);font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase}
.badge--solid{background:var(--color-primary);color:#14100a;border-color:transparent}
.badge--outline{background:transparent}
.hero{padding-top:var(--space-20);padding-bottom:var(--space-16)}
.hero__layout{display:grid;grid-template-columns:minmax(0,1.1fr)minmax(0,1fr);gap:var(--space-10);align-items:center}
@media (max-width:960px){.hero{padding-top:var(--space-16);padding-bottom:var(--space-12)}.hero__layout{grid-template-columns:1fr;gap:var(--space-8)}}
.hero__kicker{font-size:var(--font-size-xs);letter-spacing:0.18em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-3)}
.hero__title{font-size:clamp(2.5rem,4vw,3.25rem);line-height:var(--line-height-tight);margin-bottom:var(--space-4)}
.hero__lede{font-size:var(--font-size-md);line-height:var(--line-height-relaxed);color:var(--color-text-muted);max-width:34rem;margin-bottom:var(--space-6)}
.hero__badge-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6)}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}
.hero__disclaimer{margin-top:var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-muted);max-width:30rem}
.hero__visual{position:relative;isolation:isolate}
.hero__visual-frame{position:relative;border-radius:26px;padding:var(--space-3);background:radial-gradient(circle at top left,#f8f1df,#111010);box-shadow:var(--shadow-lg);overflow:hidden}
.hero__visual-inner{position:relative;border-radius:20px;overflow:hidden;background:#111010}
.hero__visual-overlay{position:absolute;inset:auto 10% 8%;display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-4);color:#fefaf3;font-size:var(--font-size-xs);pointer-events:none}
.hero__visual-tag{display:inline-flex;align-items:center;gap:0.35rem;padding:0.3rem 0.7rem;border-radius:999px;background:rgba(8,5,0,0.8);backdrop-filter:blur(8px);border:1px solid rgba(226,190,116,0.6)}
.hero__visual-pill{padding:0.35rem 0.9rem;border-radius:999px;background:rgba(10,8,4,0.9);border:1px solid rgba(255,255,255,0.08)}
@media (max-width:768px){.hero__visual-frame{margin:0 auto;max-width:420px}}
.navbar{position:sticky;top:0;z-index:40;background:rgba(250,247,240,0.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(216,201,179,0.7)}
.navbar__inner{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-3);padding-bottom:var(--space-3)}
.navbar__brand{display:flex;align-items:center;gap:0.5rem;font-family:var(--font-serif);font-size:1.05rem;font-weight:600;color:var(--color-neutral-900)}
.navbar__brand-mark{width:32px;height:32px;border-radius:14px;border:1px solid rgba(199,154,59,0.5);background:radial-gradient(circle at 30% 0,rgba(255,255,255,0.9),rgba(199,154,59,0.9));display:flex;align-items:center;justify-content:center;font-size:0.7rem;letter-spacing:0.16em;text-transform:uppercase;color:#120f08}
.navbar__nav{display:flex;align-items:center;gap:var(--space-4);font-size:var(--font-size-sm)}
.navbar__link{position:relative;color:var(--color-text-muted);padding-block:0.15rem}
.navbar__link::after{content:"";position:absolute;left:0;right:0;bottom:-0.3rem;height:1px;background:linear-gradient(to right,transparent,var(--color-primary),transparent);opacity:0;transform:scaleX(0.6);transform-origin:center;transition:opacity var(--transition-base),transform var(--transition-base)}
.navbar__link:hover{color:var(--color-neutral-900)}
.navbar__link--active{color:var(--color-neutral-900)}
.navbar__link--active::after{opacity:1;transform:scaleX(1)}
.navbar__cta{display:flex;align-items:center;gap:var(--space-2)}
.navbar__menu-toggle{display:none}
@media (max-width:900px){.navbar__nav{display:none}.navbar__menu-toggle{display:inline-flex}}
.footer{border-top:1px solid var(--color-border-subtle);background:#f4ece0;padding-top:var(--space-10);padding-bottom:var(--space-6);font-size:var(--font-size-sm)}
.footer__top{display:grid;grid-template-columns:2fr 1.5fr 1.5fr;gap:var(--space-8);margin-bottom:var(--space-6)}
.footer__brand{max-width:20rem}
.footer__nav-title{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0.16em;color:var(--color-text-muted);margin-bottom:var(--space-3)}
.footer__link{display:block;margin-bottom:0.45rem;color:var(--color-text-muted)}
.footer__link:hover{color:var(--color-neutral-900)}
.footer__legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-subtle);color:var(--color-text-muted)}
@media (max-width:900px){.footer__top{grid-template-columns:1fr}.footer__legal{flex-direction:column}}
.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.chip{border-radius:999px;border:1px solid var(--color-border-subtle);padding:0.35rem 0.75rem;font-size:var(--font-size-xs);color:var(--color-text-muted);background-color:rgba(255,255,255,0.85)}
.chip--gold{border-color:rgba(199,154,59,0.5);background:rgba(247,237,215,0.8);color:var(--color-neutral-900)}
.kicker{font-size:var(--font-size-xs);letter-spacing:0.16em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-2)}
.section-title{font-size:var(--font-size-2xl);margin-bottom:var(--space-2)}
.section-lede{max-width:34rem;font-size:var(--font-size-md);line-height:var(--line-height-relaxed);color:var(--color-text-muted)}
.list-check{list-style:none;padding:0;margin:0}
.list-check li{position:relative;padding-left:1.4rem;margin-bottom:0.4rem;color:var(--color-text-muted);font-size:var(--font-size-sm)}
.list-check li::before{content:"";position:absolute;left:0.2rem;top:0.45rem;width:0.45rem;height:0.25rem;border-left:2px solid var(--color-success);border-bottom:2px solid var(--color-success);transform:rotate(-45deg)}
.faq{border-top:1px solid var(--color-border-subtle)}
.faq__item{border-bottom:1px solid var(--color-border-subtle);padding-block:var(--space-4)}
.faq__question{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);cursor:pointer}
.faq__q-text{font-weight:500;color:var(--color-neutral-900)}
.faq__icon{width:1.6rem;height:1.6rem;border-radius:999px;border:1px solid var(--color-border-subtle);display:flex;align-items:center;justify-content:center;font-size:0.9rem;color:var(--color-text-muted)}
.faq__answer{margin-top:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted)}
.testimonial{position:relative;padding:var(--space-6);border-radius:var(--radius-lg);background:linear-gradient(135deg,#111010,#272018);color:#f9f3e7;box-shadow:var(--shadow-md)}
.testimonial__quote{font-family:var(--font-serif);font-size:1.15rem;line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}
.testimonial__meta{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0.16em;color:rgba(249,243,231,0.8)}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}
.gallery-item{position:relative;border-radius:18px;overflow:hidden;background:#111010;box-shadow:var(--shadow-sm)}
.gallery-item__label{position:absolute;left:1rem;bottom:0.9rem;padding:0.25rem 0.7rem;border-radius:999px;background:rgba(8,6,3,0.85);backdrop-filter:blur(10px);border:1px solid rgba(231,192,117,0.7);color:#fdf5e4;font-size:var(--font-size-xs);letter-spacing:0.14em;text-transform:uppercase}
.pill-note{display:inline-flex;align-items:center;gap:0.4rem;padding:0.35rem 0.7rem;border-radius:999px;background:rgba(255,255,255,0.85);border:1px solid rgba(186,166,132,0.7);font-size:0.7rem;color:var(--color-text-muted)}
.pill-note__highlight{font-weight:600;color:var(--color-neutral-900)}
.disclaimer{border-radius:var(--radius-md);padding:var(--space-3);border:1px solid rgba(205,181,143,0.8);background:rgba(255,253,247,0.9);font-size:var(--font-size-xs);color:var(--color-neutral-800);line-height:var(--line-height-relaxed)}
.disclaimer--soft{border-style:dashed;background:rgba(252,247,236,0.9)}
.table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}
.table th,.table td{padding:0.75rem 0.5rem;text-align:left;border-bottom:1px solid var(--color-border-subtle)}
.table th{font-weight:500;color:var(--color-neutral-800);font-size:var(--font-size-xs);letter-spacing:0.12em;text-transform:uppercase}
.table-striped tr:nth-child(even){background-color:rgba(255,255,255,0.7)}
.tagline{font-size:var(--font-size-xs);letter-spacing:0.18em;text-transform:uppercase;color:var(--color-text-muted)}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.3fr)minmax(0,1fr);gap:var(--space-8);align-items:flex-start}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}
.contact-card{border-radius:var(--radius-lg);padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-sm)}
.contact-meta{font-size:var(--font-size-sm);color:var(--color-text-muted)}
.contact-meta strong{color:var(--color-neutral-900)}
.timeline{position:relative;padding-left:1.75rem}
.timeline::before{content:"";position:absolute;left:0.45rem;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,rgba(199,154,59,0.5),rgba(199,154,59,0))}
.timeline__step{position:relative;padding-bottom:var(--space-5)}
.timeline__step:last-child{padding-bottom:0}
.timeline__dot{position:absolute;left:-0.1rem;top:0.15rem;width:0.7rem;height:0.7rem;border-radius:999px;border:2px solid #faf7f0;background:radial-gradient(circle at 30% 0,#ffffff,var(--color-primary))}
.timeline__label{font-size:var(--font-size-xs);letter-spacing:0.12em;text-transform:uppercase;color:var(--color-text-muted)}
.timeline__title{font-weight:600;margin-top:0.2rem;margin-bottom:0.15rem;color:var(--color-neutral-900)}
.timeline__text{font-size:var(--font-size-sm);color:var(--color-text-muted)}
:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}
:focus:not(:focus-visible){outline:none}
@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}}
.notice{padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border-subtle);background:rgba(255,255,255,0.9);font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:var(--line-height-relaxed)}
.notice--gold{border-color:rgba(199,154,59,0.65);background:rgba(253,245,226,0.9);color:var(--color-neutral-900)}
.notice--danger{border-color:rgba(195,65,59,0.5);background:rgba(252,235,233,0.9);color:var(--color-danger)}