:root{
  --black:#050505;
  --black-soft:#0b0b0a;
  --panel:#11110f;
  --panel-2:#161511;
  --gold:#cba357;
  --gold-light:#f0cf86;
  --gold-deep:#8c6323;
  --text:#f7f2e7;
  --muted:#aaa397;
  --line:rgba(203,163,87,.28);
  --green:#25d366;
  --header-h:98px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--black)}
body{margin:0;background:var(--black);color:var(--text);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{color:inherit}
::selection{background:var(--gold);color:#080808}

.preloader{position:fixed;inset:0;z-index:1000;display:grid;place-content:center;justify-items:center;background:#030303;transition:opacity .55s ease,visibility .55s ease}
.preloader.is-hidden{opacity:0;visibility:hidden}
.preloader-mark{font-family:Georgia,'Times New Roman',serif;font-size:58px;letter-spacing:.06em}.preloader-mark span{color:var(--gold)}
.preloader-line{width:145px;height:1px;margin:17px 0 14px;background:linear-gradient(90deg,transparent,var(--gold-light),transparent);animation:loaderGlow 1.25s ease-in-out infinite}
.preloader small{font-size:9px;letter-spacing:.42em;color:#b6ad9e}
@keyframes loaderGlow{0%,100%{opacity:.3;transform:scaleX(.68)}50%{opacity:1;transform:scaleX(1)}}

.site-header{position:fixed;z-index:100;top:0;left:0;right:0;height:var(--header-h);display:flex;align-items:center;gap:38px;padding:0 clamp(22px,4vw,68px);border-bottom:1px solid transparent;transition:background .35s ease,border-color .35s ease,backdrop-filter .35s ease}
.site-header.scrolled{background:rgba(5,5,5,.88);border-color:var(--line);backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:14px;min-width:250px}
.brand img{width:64px;height:70px;object-fit:cover;object-position:center;border:1px solid rgba(203,163,87,.38);box-shadow:0 0 30px rgba(203,163,87,.08)}
.brand-copy{display:flex;flex-direction:column;line-height:1}
.brand-copy strong{font-family:Georgia,'Times New Roman',serif;font-size:21px;letter-spacing:.13em;color:var(--gold-light)}
.brand-copy small{margin-top:7px;font-size:8px;letter-spacing:.17em;text-transform:uppercase;color:#d1cbc0}
.main-nav{display:flex;align-items:center;justify-content:center;gap:clamp(18px,2.3vw,38px);margin-left:auto}
.main-nav a{position:relative;padding:9px 0;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#d1cbc0}
.main-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--gold);transition:right .3s ease}
.main-nav a:hover::after,.main-nav a:focus-visible::after{right:0}
.header-cta{padding:15px 22px;background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:#090806;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;box-shadow:0 8px 32px rgba(203,163,87,.16);transition:transform .25s ease,box-shadow .25s ease}
.header-cta:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(203,163,87,.27)}
.menu-toggle{display:none;margin-left:auto;width:48px;height:48px;padding:13px;border:1px solid var(--line);background:rgba(10,10,10,.72);cursor:pointer}
.menu-toggle span{display:block;height:1px;background:#fff;margin:7px 0;transition:transform .3s ease,opacity .3s ease}

.hero{position:relative;min-height:900px;height:100svh;display:flex;align-items:flex-end;overflow:hidden;background:#030303}
.hero-media,.hero-overlay,.hero-grain{position:absolute;inset:0}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:50% 92%;transform:scale(1.005);animation:heroZoom 16s ease-in-out infinite alternate}
@keyframes heroZoom{from{transform:scale(1.005)}to{transform:scale(1.04)}}
.hero-overlay{background:linear-gradient(90deg,rgba(3,3,3,.96) 0%,rgba(3,3,3,.89) 34%,rgba(3,3,3,.26) 62%,rgba(3,3,3,.08) 100%),linear-gradient(0deg,rgba(0,0,0,.82) 0%,transparent 54%),radial-gradient(circle at 72% 58%,transparent 0%,rgba(0,0,0,.08) 42%,rgba(0,0,0,.34) 100%)}
.hero-grain{opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.34'/%3E%3C/svg%3E")}
.hero-inner{position:relative;z-index:3;width:min(760px,70vw);margin:0 0 18vh clamp(26px,7vw,116px)}
.eyebrow{margin:0;color:var(--gold-light);font-size:10px;font-weight:700;letter-spacing:.26em;text-transform:uppercase}
.hero h1,.quality h2,.section-heading h2,.experience h2,.reviews h2,.contact h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}
.hero h1{margin:25px 0 28px;font-size:clamp(66px,8.1vw,128px);line-height:.78;text-transform:uppercase}
.hero h1 span{color:var(--gold-light)}
.hero h1 em{font-style:normal;color:#fff}
.hero-lead{max-width:570px;margin:0;color:#d0c9bd;font-size:clamp(15px,1.15vw,18px);line-height:1.8}
.hero-actions{display:flex;gap:13px;margin-top:34px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:53px;padding:0 25px;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease}
.button:hover{transform:translateY(-2px)}
.button-gold{background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:#090806;box-shadow:0 12px 32px rgba(203,163,87,.14)}
.button-outline{border:1px solid rgba(255,255,255,.34);background:rgba(0,0,0,.18)}
.button-outline:hover{border-color:var(--gold);background:rgba(203,163,87,.08)}
.hero-side{position:absolute;z-index:3;right:3vw;bottom:11vh;display:flex;align-items:center;gap:15px;transform:rotate(-90deg);transform-origin:right bottom;color:#cfc7ba;font-size:9px;font-weight:700;letter-spacing:.24em}
.hero-side i{width:68px;height:1px;background:var(--gold)}
.sportscar-line{display:block;width:64px;height:31px}
.sportscar-line svg{width:64px;height:31px;overflow:visible;fill:#050505;stroke:var(--gold-light);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.sportscar-line circle{fill:#050505}
.trust-rail{position:absolute;z-index:4;left:clamp(26px,7vw,116px);right:clamp(26px,7vw,116px);bottom:0;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(10,10,9,.88);border:1px solid var(--line);backdrop-filter:blur(18px)}
.trust-rail article{min-height:116px;display:flex;align-items:center;gap:18px;padding:24px 27px;border-right:1px solid var(--line)}
.trust-rail article:last-child{border-right:0}
.icon-ring{flex:0 0 auto;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 36% 28%,#24221d 0,#0b0b0a 58%,#030303 100%);border:1px solid rgba(240,207,134,.54);box-shadow:inset 0 0 0 4px rgba(203,163,87,.045),0 12px 27px rgba(0,0,0,.34);transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease}
.icon-ring svg{width:29px;height:29px;fill:none;stroke:var(--gold-light);stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.trust-rail article:hover .icon-ring,.experience article:hover .icon-ring{transform:translateY(-4px) scale(1.03);border-color:var(--gold-light);box-shadow:inset 0 0 0 4px rgba(203,163,87,.07),0 0 28px rgba(203,163,87,.18),0 14px 34px rgba(0,0,0,.45)}
.trust-rail strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:21px;font-weight:400;color:#fff}
.trust-rail small{display:block;margin-top:7px;color:var(--muted);font-size:10px;line-height:1.35}
.scroll-cue{position:absolute;z-index:4;right:clamp(26px,7vw,116px);bottom:133px;display:flex;align-items:center;gap:10px;color:#b8b0a4;font-size:8px;letter-spacing:.22em;text-transform:uppercase}
.scroll-cue span{width:26px;height:39px;border:1px solid rgba(255,255,255,.35);border-radius:20px;position:relative}
.scroll-cue span::after{content:"";position:absolute;top:8px;left:50%;width:3px;height:6px;margin-left:-1.5px;border-radius:3px;background:var(--gold-light);animation:scrollDot 1.8s infinite}
@keyframes scrollDot{0%{transform:translateY(0);opacity:0}30%{opacity:1}100%{transform:translateY(15px);opacity:0}}

.section-pad{padding:clamp(105px,10vw,165px) clamp(24px,7vw,112px)}
.quality{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(55px,7vw,110px);align-items:center;overflow:hidden;background:linear-gradient(135deg,#080808 0%,#0d0d0b 60%,#080808 100%)}
.section-watermark{position:absolute;right:-30px;top:50%;transform:translateY(-50%);font-family:Georgia,'Times New Roman',serif;font-size:clamp(180px,27vw,440px);letter-spacing:-.08em;color:transparent;-webkit-text-stroke:1px rgba(203,163,87,.055);pointer-events:none}
.quality-media{position:relative;min-height:670px;border:1px solid var(--line);overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.42)}
.quality-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent 50%)}
.quality-media img{width:100%;height:100%;object-fit:cover;object-position:62% center;transition:transform .85s ease}
.quality-media:hover img{transform:scale(1.035)}
.quality-tag{position:absolute;z-index:2;left:25px;bottom:25px;display:flex;align-items:center;gap:14px;padding:13px 17px;background:rgba(5,5,5,.82);border:1px solid var(--line);backdrop-filter:blur(12px)}
.quality-tag span{font-family:Georgia,'Times New Roman',serif;font-size:22px;color:var(--gold-light)}
.quality-tag strong{font-size:9px;letter-spacing:.17em;text-transform:uppercase}
.quality-copy{position:relative;z-index:2}
.quality h2,.section-heading h2,.experience h2,.reviews h2,.contact h2{margin:22px 0 28px;font-size:clamp(48px,5.6vw,86px);line-height:.9}
.quality h2 em,.section-heading h2 em,.experience h2 em,.reviews h2 em,.contact h2 em{font-style:italic;font-weight:400;color:var(--gold)}
.quality-copy>p:not(.eyebrow){max-width:620px;color:var(--muted);font-size:15px;line-height:1.85}
.quality-list{list-style:none;padding:0;margin:31px 0 34px;border-top:1px solid var(--line)}
.quality-list li{display:flex;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px;color:#dfd8cc}
.quality-list span{color:var(--gold);font-size:11px}
.text-link{display:inline-flex;gap:12px;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--gold);color:var(--gold-light);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.text-link span{font-size:18px}

.gallery{background:#050505}
.section-heading{display:grid;grid-template-columns:1.05fr .65fr;gap:70px;align-items:end;margin-bottom:62px}
.section-heading>p{margin:0 0 8px;color:var(--muted);font-size:14px;line-height:1.85}
.gallery-grid{display:grid;grid-template-columns:1.08fr .92fr 1fr;grid-template-rows:365px 390px;gap:14px}
.gallery-card{position:relative;overflow:hidden;min-width:0;border:0;padding:0;background:#111;cursor:zoom-in;text-align:left}
.gallery-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.05) 60%);transition:background .35s ease}
.gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1),filter .4s ease}
.gallery-card:hover img{transform:scale(1.045);filter:contrast(1.05)}
.gallery-card:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px}
.gallery-card span{position:absolute;z-index:2;left:24px;right:24px;bottom:23px}
.gallery-card small{display:block;color:var(--gold-light);font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.gallery-card strong{display:block;margin-top:7px;font-family:Georgia,'Times New Roman',serif;font-size:25px;font-weight:400}
.gallery-main{grid-row:1/3}
.gallery-main img{object-position:center}
.gallery-wide{grid-column:2/4}
.gallery-wide img{object-position:center 50%}
.gallery-card:nth-child(3) img{object-position:center 63%}
.gallery-card:nth-child(4) img{object-position:center 44%}
.gallery-card:nth-child(5) img{object-position:center 54%}

.experience{background:linear-gradient(180deg,#0c0c0b,#070707);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.experience-intro{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:58px}
.experience-intro h2{margin-bottom:0}
.experience-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:rgba(12,12,11,.64)}
.experience article{min-height:315px;padding:38px 30px;border-right:1px solid var(--line);transition:background .3s ease,transform .3s ease}
.experience article:last-child{border-right:0}
.experience article:hover{background:rgba(203,163,87,.055)}
.experience h3{margin:26px 0 12px;font-family:Georgia,'Times New Roman',serif;font-size:28px;font-weight:400}
.experience p{margin:0;color:var(--muted);font-size:13px;line-height:1.75}

.reviews{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(50px,7vw,110px);align-items:center;background:#080808;position:relative;overflow:hidden}
.reviews::before{content:"★★★★★";position:absolute;right:-18px;top:-38px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(130px,18vw,280px);letter-spacing:.04em;color:rgba(203,163,87,.028);white-space:nowrap}
.reviews-heading{position:relative;z-index:2}
.reviews-heading>p:last-child{color:var(--muted);line-height:1.8;max-width:520px}
.review-stage{position:relative;z-index:2;padding:clamp(38px,5vw,70px);border:1px solid var(--line);background:linear-gradient(135deg,rgba(24,22,18,.92),rgba(10,10,9,.92));box-shadow:0 32px 75px rgba(0,0,0,.38)}
.review-stage::before{content:"“";position:absolute;right:30px;top:8px;font-family:Georgia,'Times New Roman',serif;font-size:120px;color:rgba(203,163,87,.15);line-height:1}
.review-stars{color:var(--gold-light);letter-spacing:.24em;font-size:16px}
.review-stage blockquote{margin:28px 0 34px;max-width:820px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(28px,3.1vw,48px);line-height:1.22;font-style:italic;color:#f2ede4}
.review-meta{display:flex;justify-content:space-between;gap:20px;padding-top:24px;border-top:1px solid var(--line);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.review-meta b{color:var(--gold-light)}
.review-topics{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}
.review-topics span{padding:9px 12px;border:1px solid rgba(203,163,87,.2);color:#c7c0b5;font-size:9px;letter-spacing:.08em;text-transform:uppercase}

.contact{display:grid;grid-template-columns:1fr 1fr;min-height:860px;background:#090909}
.contact-media{position:relative;min-height:780px;overflow:hidden}
.contact-media>img{width:100%;height:100%;object-fit:cover;object-position:70% center;transition:transform 1s ease}
.contact-media:hover>img{transform:scale(1.025)}
.contact-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.18) 70%),linear-gradient(90deg,rgba(0,0,0,.18),transparent)}
.contact-copy{position:absolute;z-index:2;left:clamp(28px,7vw,90px);right:clamp(28px,7vw,90px);bottom:clamp(48px,8vw,96px)}
.contact h2{font-size:clamp(52px,5.3vw,84px)}
.contact-copy>p:not(.eyebrow){max-width:560px;color:#c6bfb4;line-height:1.75}
.contact-copy>a{display:inline-block;margin-top:18px;padding-bottom:7px;border-bottom:1px solid var(--gold);color:var(--gold-light);font-size:16px}
.contact-form{display:flex;flex-direction:column;justify-content:center;gap:20px;padding:clamp(52px,7vw,100px);background:linear-gradient(145deg,#14130f,#0d0d0b)}
.form-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;margin-bottom:4px;border-bottom:1px solid var(--line)}
.form-head span{color:var(--gold-light);font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.form-head b{font-family:Georgia,'Times New Roman',serif;letter-spacing:.18em}
.form-status{display:none;padding:13px 15px;border:1px solid var(--line);font-size:12px;line-height:1.55}
.form-status.success{display:block;background:rgba(37,211,102,.08);border-color:rgba(37,211,102,.36);color:#d7f8e1}
.form-status.error{display:block;background:rgba(190,54,54,.1);border-color:rgba(220,90,90,.35);color:#ffdede}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form label{display:block;color:#cfc6b8;font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:9px;padding:13px 4px;border:0;border-bottom:1px solid #3f3a31;border-radius:0;outline:0;background:transparent;color:#fff;transition:border-color .25s ease,background .25s ease}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--gold-light);background:rgba(203,163,87,.025)}
.contact-form textarea{min-height:120px;resize:vertical}
.contact-form select option{background:#121212;color:#fff}
.consent{display:flex!important;align-items:flex-start;gap:11px;text-transform:none!important;letter-spacing:0!important;font-weight:400!important;line-height:1.5}
.consent input{width:auto;margin:2px 0 0;accent-color:var(--gold)}
.website-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-form button{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 20px;border:0;background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:#090806;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease}
.contact-form button:hover{transform:translateY(-2px);box-shadow:0 13px 34px rgba(203,163,87,.2)}
.contact-form button span{font-size:20px}

.site-footer{display:grid;grid-template-columns:1.5fr .85fr 1fr auto;align-items:center;gap:38px;padding:34px clamp(24px,7vw,112px);border-top:1px solid var(--line);background:#050505}
.footer-brand{display:flex;align-items:center;gap:15px}
.footer-brand img{width:68px;height:72px;object-fit:cover;border:1px solid rgba(203,163,87,.35)}
.footer-brand div{display:flex;flex-direction:column}
.footer-brand strong{font-family:Georgia,'Times New Roman',serif;font-size:19px;letter-spacing:.14em;color:var(--gold-light)}
.footer-brand span{margin-top:6px;color:var(--muted);font-size:8px;letter-spacing:.13em;text-transform:uppercase}
.footer-contact small{display:block;margin-bottom:8px;color:var(--gold);font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.footer-contact a{font-size:14px;color:#eee7dc}
.footer-copy{color:var(--muted);font-size:8px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}

.contact-dock{position:fixed;z-index:120;right:22px;bottom:22px;display:flex;flex-direction:column;gap:14px}
.pulse-button{position:relative;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--green);box-shadow:0 0 0 0 rgba(37,211,102,.62),0 10px 28px rgba(0,0,0,.38);animation:greenPulse 1.8s infinite;transition:transform .25s ease,filter .25s ease}
.pulse-button.phone{animation-delay:.75s}
.pulse-button:hover{transform:translateY(-3px) scale(1.03);filter:brightness(1.05)}
.pulse-button svg{width:27px;height:27px;fill:#fff}
@keyframes greenPulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.62),0 10px 28px rgba(0,0,0,.38)}70%{box-shadow:0 0 0 17px rgba(37,211,102,0),0 10px 28px rgba(0,0,0,.38)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0),0 10px 28px rgba(0,0,0,.38)}}

.lightbox{position:fixed;z-index:500;inset:0;display:grid;place-items:center;padding:58px;background:rgba(0,0,0,.94);backdrop-filter:blur(12px)}
.lightbox[hidden]{display:none}
.lightbox img{max-width:min(1200px,92vw);max-height:85vh;object-fit:contain;border:1px solid var(--line);box-shadow:0 30px 90px rgba(0,0,0,.7)}
.lightbox-close{position:absolute;right:26px;top:20px;width:48px;height:48px;border:1px solid var(--line);background:#111;color:#fff;font-size:30px;cursor:pointer}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}
.reveal.is-visible{opacity:1;transform:none}

:focus-visible{outline:2px solid var(--gold-light);outline-offset:4px}

@media(max-width:1180px){
  :root{--header-h:86px}
  .brand{min-width:220px}.brand img{width:56px;height:62px}.brand-copy strong{font-size:18px}
  .main-nav{gap:17px}.main-nav a{font-size:9px}.header-cta{padding:14px 17px}
  .trust-rail article{padding:20px 17px;gap:13px}.trust-rail small{font-size:9px}.icon-ring{width:50px;height:50px}.icon-ring svg{width:26px;height:26px}
  .experience article{padding:33px 23px}
  .site-footer{grid-template-columns:1.2fr .8fr 1fr}.footer-copy{grid-column:3;text-align:right}.site-footer>.footer-copy{align-self:end}
}

@media(max-width:960px){
  .site-header{padding:0 20px;background:rgba(5,5,5,.84);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
  .brand{min-width:0}.brand-copy small{display:none}.brand img{width:52px;height:57px}
  .main-nav,.header-cta{display:none}
  .menu-toggle{display:block}
  .site-header.menu-open .menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}
  .site-header.menu-open .menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .site-header.menu-open .main-nav{display:flex;position:fixed;top:var(--header-h);left:0;right:0;height:calc(100svh - var(--header-h));padding:45px 28px;background:rgba(5,5,5,.98);flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:27px}
  .site-header.menu-open .main-nav a{font-family:Georgia,'Times New Roman',serif;font-size:30px;font-weight:400;letter-spacing:0;text-transform:none}
  .hero{min-height:860px;height:100svh}
  .hero-media img{object-position:50% 88%}
  .hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.96),rgba(0,0,0,.55)),linear-gradient(0deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.12) 70%)}
  .hero-inner{width:auto;margin:0 25px 225px}
  .hero h1{font-size:clamp(60px,13vw,92px)}
  .hero-side,.scroll-cue{display:none}
  .trust-rail{left:20px;right:20px;grid-template-columns:1fr 1fr}
  .trust-rail article{min-height:88px}.trust-rail article:nth-child(2){border-right:0}.trust-rail article:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .quality{grid-template-columns:1fr;padding-top:110px}.quality-media{min-height:560px}.section-watermark{display:none}
  .section-heading{grid-template-columns:1fr;gap:10px}
  .gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:430px 300px 300px}.gallery-main{grid-row:1;grid-column:1/3}.gallery-wide{grid-column:1/3}
  .experience-grid{grid-template-columns:1fr 1fr}.experience article:nth-child(2){border-right:0}.experience article:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .reviews{grid-template-columns:1fr;gap:40px}
  .contact{grid-template-columns:1fr}.contact-media{min-height:620px}.contact-form{padding:70px 28px}
  .site-footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-copy{grid-column:2;text-align:right}
}

@media(max-width:620px){
  :root{--header-h:78px}
  .brand img{width:47px;height:52px}.brand-copy strong{font-size:16px}.site-header{padding:0 14px}
  .hero{min-height:900px}
  .hero-media img{object-position:50% 84%}
  .hero-inner{margin:0 20px 282px}
  .eyebrow{font-size:8px;letter-spacing:.2em}
  .hero h1{font-size:clamp(51px,17vw,74px);line-height:.82;margin-top:18px}
  .hero-lead{font-size:14px;line-height:1.65}
  .hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}
  .trust-rail{left:12px;right:12px;grid-template-columns:1fr;bottom:12px}.trust-rail article{min-height:58px;padding:10px 14px;border-right:0;border-bottom:1px solid var(--line)}.trust-rail article:last-child{border-bottom:0}.trust-rail article:nth-child(2){border-bottom:1px solid var(--line)}.trust-rail .icon-ring{width:39px;height:39px}.trust-rail .icon-ring svg{width:21px;height:21px}.trust-rail strong{font-size:17px}.trust-rail small{margin-top:3px}
  .section-pad{padding:90px 18px}
  .quality-media{min-height:430px}.quality-media img{object-position:62% center}
  .quality h2,.section-heading h2,.experience h2,.reviews h2,.contact h2{font-size:clamp(42px,13vw,58px)}
  .quality-list li{font-size:12px}
  .gallery-grid{display:flex;flex-direction:column}.gallery-card{height:330px}.gallery-main{height:440px}.gallery-wide{height:300px}
  .experience-intro{display:block}.experience-grid{grid-template-columns:1fr}.experience article{min-height:0;border-right:0;border-bottom:1px solid var(--line)}.experience article:last-child{border-bottom:0}
  .review-stage{padding:34px 23px}.review-stage blockquote{font-size:28px}.review-meta{display:block}.review-meta b{display:block;margin-top:8px}
  .contact-media{min-height:520px}.contact-copy{left:24px;right:24px;bottom:44px}.contact-copy>a{font-size:14px}
  .contact-form{padding:56px 20px}.form-row{grid-template-columns:1fr}
  .site-footer{grid-template-columns:1fr;padding:30px 18px}.footer-copy{grid-column:auto;text-align:left}.footer-contact a{font-size:13px}
  .contact-dock{right:14px;bottom:14px}.pulse-button{width:54px;height:54px}
  .lightbox{padding:50px 15px}.lightbox-close{right:14px;top:13px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reveal{opacity:1;transform:none}
}
