:root{--gold:#c9973b;--ink:#0b1a33;--paper:#e6eef6;--ease:cubic-bezier(.22,1,.36,1)}
html{scroll-behavior:smooth;scroll-padding-top:112px}*{box-sizing:border-box}body{overflow-x:clip}button,input,textarea,select{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #c9973b!important;outline-offset:5px}section{position:relative}h1{text-shadow:0 3px 28px #0007}h2 em{color:#927020!important}footer{color:#aebcd0!important}footer a{transition:color .25s;text-underline-offset:6px}footer a:hover{color:#e2b455!important;text-decoration:underline!important}#site-header{position:sticky!important;top:0;transition:box-shadow .4s,background .4s;padding:13px 28px!important}#site-header img{height:56px!important;max-width:90px;object-fit:contain}#header-wordmark{display:block!important;font-size:19px!important;white-space:nowrap}#desktop-nav{gap:20px!important}#mobile-drawer{position:fixed!important;inset:0!important;z-index:10000!important;overflow-y:auto;max-height:100dvh}#scroll-progress{height:3px;position:fixed;top:0;left:0;width:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#c9973b,#f4d58d);z-index:10001;pointer-events:none}
.hero-enhanced{isolation:isolate}.hero-enhanced>div[data-parallax]{animation:kenburns 28s ease-in-out infinite alternate;translate:0 var(--hero-shift,0px)}.hero-enhanced::after{content:"";position:absolute;width:280px;height:280px;border:1px solid #e2b45555;border-radius:50%;right:-140px;bottom:40px;pointer-events:none;z-index:0;box-shadow:0 0 0 45px #e2b4550b,0 0 0 90px #e2b45508}.hero-enhanced>div:last-child{z-index:1}.hero-enhanced p{color:#e3eaf2}.hero-enhanced .scroll-hint{position:absolute;bottom:25px;left:28px;color:#fff;font-size:10px;letter-spacing:3px;text-decoration:none;z-index:2;display:flex;gap:14px;align-items:center}.scroll-hint i{display:block;width:30px;height:1px;background:#e2b455;transform-origin:left;animation:flow-pulse 3s ease infinite}
.st8{position:relative;min-height:440px;justify-content:flex-end;isolation:isolate;box-shadow:0 18px 40px #0b1a331a!important}.st8>div:first-child{position:absolute!important;inset:0;aspect-ratio:auto!important;z-index:-1}.st8>div:first-child>div{background:linear-gradient(0deg,#07122af5, #07122a66 45%,transparent 80%)!important}.st8 img{transition:transform 1.2s var(--ease)}.st8:hover img{transform:scale(1.06)}.st8 h3{padding-top:180px!important}.st8>span{padding-bottom:32px!important}.st8:hover{box-shadow:0 28px 55px #0b1a3338!important}
.eyebrow{display:block;font-size:11px;font-weight:600;letter-spacing:3px;color:#927020;margin-bottom:22px}.flow-section{max-width:none;padding:100px max(28px,calc((100vw - 1144px)/2));display:grid;grid-template-columns:1fr 1fr;gap:90px;background:#0b1a33;color:#f3eee4;overflow:hidden}.flow-section:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 0 100%,#365c7655,transparent 70%);pointer-events:none}.flow-intro{position:relative}.flow-intro .eyebrow{color:#e2b455}.flow-section h2,.work-section h2,.faq-section h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(34px,4.4vw,58px);font-weight:500;line-height:1.1;margin:0 0 24px}.flow-section h2 em{color:#e2b455!important}.flow-intro p{color:#bac7d9;max-width:370px}.flow-button{display:inline-block;color:#f0cc83;padding:14px 0;text-decoration:none;border-bottom:1px solid #c9973b77;font-size:14px}.flow-steps{position:relative}.flow-steps article{display:flex;gap:26px;padding:20px 0 28px;position:relative}.flow-steps article>span{width:46px;height:46px;flex-shrink:0;background:#0b1a33;border:1px solid #c9973b;border-radius:50%;display:grid;place-items:center;color:#e2b455;font-size:13px;z-index:1}.flow-steps h3{font-size:22px;font-weight:500;line-height:1.3;margin:7px 0 12px}.flow-steps p{margin:0;color:#b7c5d9;font-size:15px;line-height:1.8}.flow-line{position:absolute;top:30px;bottom:65px;left:22px;width:2px;background:#ffffff18}.flow-line i{display:block;width:100%;height:100%;background:#e2b455;transform:scaleY(var(--flow,0));transform-origin:top;box-shadow:0 0 15px #e2b45555}.work-section,.faq-section{max-width:1200px;margin:auto;padding:96px 28px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-heading>a{font-size:14px;white-space:nowrap}.work-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:22px}.work-photo{border:0;padding:0;background:#0b1a33;border-radius:18px;overflow:hidden;position:relative;cursor:zoom-in;height:390px}.work-photo:nth-child(2){margin-top:45px}.work-photo img{height:100%;width:100%;object-fit:cover;display:block;transition:transform 1s var(--ease)}.work-photo:hover img{transform:scale(1.06)}.work-photo>span{position:absolute;bottom:18px;right:18px;width:40px;height:40px;display:grid;place-items:center;background:#e6eef6;border-radius:50%}.faq-section{padding-top:30px;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.faq-section details{border-bottom:1px solid #0b1a3322;padding:23px 0}.faq-section summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:25px;font-size:18px;font-weight:500}.faq-section summary::after{content:'+';color:#927020;font-size:24px}.faq-section details[open] summary::after{content:'−'}.faq-section details p{font-size:16px;line-height:1.8;color:#3f4e66}.form-note{font-size:12px;line-height:1.6;color:#b9c8dc;margin:0}#photo-dialog{border:0;padding:0;max-width:90vw;max-height:90dvh;background:#07122a;border-radius:12px;color:white}#photo-dialog::backdrop{background:#050d1be8;backdrop-filter:blur(8px)}#photo-dialog img{display:block;max-width:88vw;max-height:80dvh;object-fit:contain}#photo-dialog button{position:absolute;right:12px;top:12px;border:0;border-radius:50%;width:42px;height:42px;background:white;color:#0b1a33;cursor:pointer}.back-top{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:1px solid #c9973b;border-radius:50%;background:#0b1a33;color:#e2b455;z-index:100;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .3s}.back-top.visible{opacity:1;visibility:visible}.motion-ready{opacity:1;translate:0 26px;transition:opacity .85s var(--ease),translate .85s var(--ease);transition-delay:var(--delay,0ms)}.motion-ready.in-view{opacity:1;translate:0 0}@keyframes flow-pulse{50%{transform:scaleX(.5);opacity:.5}}@media(min-width:1000px){.flow-intro{position:sticky;top:140px;align-self:start}}@media(max-width:1100px){#desktop-right-cluster{gap:8px!important}#header-wordmark{font-size:16px!important}#desktop-nav{gap:13px!important}}@media(max-width:900px){#desktop-nav,#desktop-right-cluster{display:none!important}#hamburger-btn{display:flex!important}.flow-section{gap:36px}.work-photo{height:300px}}@media(max-width:640px){#site-header{padding:10px 16px!important;gap:10px!important}#site-header img{height:46px!important;max-width:64px}#header-wordmark{font-size:16px!important}.flow-section,.faq-section{grid-template-columns:1fr;gap:35px;padding:65px 20px}.work-section{padding:65px 20px}.work-grid{grid-template-columns:1fr;gap:18px}.work-photo{height:340px}.work-photo:nth-child(2){margin:0}.section-heading{display:block}.st8{min-height:380px}.hero-enhanced .scroll-hint{display:none}form{padding:24px!important}form>div[style*="grid"]{grid-template-columns:1fr!important}.flow-section h2,.work-section h2,.faq-section h2{font-size:38px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-ready{opacity:1;translate:none}.hero-enhanced>div[data-parallax]{translate:none}.flow-line i{transform:none}*{animation:none!important;transition:none!important}}
.review-section{max-width:1200px;margin:auto;padding:20px 28px 75px;overflow:hidden}.review-section h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(34px,4vw,50px);font-weight:500;line-height:1.15;margin:0}.review-controls{display:flex;gap:10px;justify-content:flex-end;margin-bottom:20px}.review-controls button{width:46px;height:46px;border:1px solid #b5bfce;background:transparent;border-radius:50%;cursor:pointer}.review-track{position:relative;height:350px;perspective:1600px;transform-style:preserve-3d;display:flex;justify-content:center}.review-card{position:absolute;top:0;width:65%;min-height:300px;padding:34px;background:#fff;border:1px solid #c9973b66;border-radius:20px;box-shadow:0 18px 40px #0b1a3312;display:flex;flex-direction:column;gap:24px;transition:transform 1s var(--ease),opacity .8s;backface-visibility:hidden}.review-card>p{font-style:italic;font-size:22px!important}.review-card>div:last-child{margin-top:auto}@media(max-width:640px){.review-card{width:86%;padding:24px;min-height:350px}.review-card>p{font-size:18px!important}.review-track{height:390px}}
/* Site-wide movement: calm ambient surfaces + deliberate interactive motion. */
@media(prefers-reduced-motion:no-preference){
.motion-section{isolation:isolate}.ambient-section{background-image:radial-gradient(ellipse at 12% 20%,#c9973b0d,transparent 48%),radial-gradient(ellipse at 88% 75%,#678dbb14,transparent 48%)!important;background-size:140% 140%!important;animation:ambient-drift 18s ease-in-out infinite alternate}
.motion-button{transition:translate .45s var(--ease),box-shadow .45s var(--ease),filter .4s!important}.motion-button:hover{translate:0 -3px;filter:brightness(1.05);box-shadow:0 12px 28px #0b1a3322}.motion-button:active{translate:0 0;scale:.98}.motion-link{transition:color .3s,translate .4s!important;text-underline-offset:5px}.motion-link:hover{translate:3px 0}.motion-photo{transition:scale 1.3s var(--ease),filter 1s!important}.motion-photo-frame:hover .motion-photo{scale:1.035}.flow-steps article>span{transition:box-shadow .5s,background .5s,scale .5s}.flow-steps article:hover>span{background:#24334a;scale:1.08;box-shadow:0 0 0 7px #c9973b12}.flow-steps article:hover h3{color:#e2b455}.faq-section summary{transition:padding .4s,color .4s}.faq-section summary:hover{padding-left:8px;color:#927020}.faq-section summary::after{transition:rotate .4s}.faq-section details[open] summary::after{rotate:180deg}.faq-section details[open] p{animation:answer-in .45s var(--ease)}footer a{transition:translate .4s,color .4s!important}footer a:hover{translate:3px 0}#desktop-nav a{position:relative}#desktop-nav a:after{content:"";position:absolute;bottom:-7px;left:0;width:100%;height:1px;background:#e2b455;transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}#desktop-nav a:hover:after,#desktop-nav a[aria-current=page]:after{transform:scaleX(1)}[data-countup]{transition:color .4s}[data-countup]:hover{color:#e2b455!important}.hero-enhanced::after{animation:halo-drift 14s ease-in-out infinite alternate}.loc-item{transition:translate .45s,box-shadow .45s!important}.loc-item:hover{translate:0 -4px;box-shadow:0 14px 28px #0b1a3312}
}
@keyframes ambient-drift{from{background-position:0% 0%,100% 100%}to{background-position:100% 70%,0% 20%}}@keyframes halo-drift{from{translate:0 0;scale:1}to{translate:-18px -22px;scale:1.06}}@keyframes answer-in{from{opacity:0;translate:0 -7px}to{opacity:1;translate:0 0}}@media(prefers-reduced-motion:reduce){.motion-button,.motion-link,.motion-photo,footer a{translate:none!important;scale:1!important}.ambient-section{animation:none!important}}
@media(prefers-reduced-motion:no-preference){
.flow-sequenced .flow-intro:not(.flow-revealed),.flow-sequenced .flow-steps article:not(.flow-revealed){opacity:1}
.flow-sequenced .flow-line i{transform:scaleY(var(--sequence-progress,0));transition:transform .85s cubic-bezier(.22,1,.36,1);box-shadow:0 0 16px #e2b45566}
.flow-sequenced .flow-line i:after{content:"";position:absolute;bottom:0;left:-3px;width:8px;height:8px;border-radius:50%;background:#f5d592;box-shadow:0 0 12px #e2b455}
}
