:root{--bg:#10100f;--bg2:#171716;--bg3:#211f1c;--cream:#f5efe6;--muted:#aaa7a0;--faint:#6e6a63;--gold:#d7ac79;--gold-light:#efd2ad;--line:rgba(246,236,220,.14);--font-body:'DM Sans','Manrope',Arial,sans-serif;--font-display:'Playfair Display',Georgia,serif;--wrap:min(1440px,calc(100% - 120px));--ease:cubic-bezier(.23,.75,.28,.99)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--bg);color:var(--cream);font-family:var(--font-body);font-size:15px;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.nav-open,body.modal-open{overflow:hidden}::selection{background:var(--gold);color:#111}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--gold-light);outline-offset:4px}img{display:block;max-width:100%}svg{height:20px;width:20px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.svg-sprite{position:absolute;height:0;width:0;overflow:hidden}.wrap{width:var(--wrap);margin-inline:auto}.section-pad{padding-block:138px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:99999;top:-80px;left:18px;background:var(--cream);color:#111;padding:12px 18px}.skip-link:focus{top:14px}.site-loader{position:fixed;inset:0;z-index:500;background:#10100f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;transition:opacity .75s ease,visibility .75s}.site-loader.done{opacity:0;visibility:hidden;pointer-events:none}.loader-brand{font-family:var(--font-display);font-size:48px;letter-spacing:-4px}.loader-brand span{color:var(--gold)}.loader-line{height:1px;background:var(--gold);width:100px;transform-origin:left;animation:loadBar .8s ease-in-out both}@keyframes loadBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
/* Header */
.header{position:fixed;z-index:70;top:0;left:0;width:100%;height:96px;padding:0 max(50px,calc((100vw - 1440px)/2));display:flex;align-items:center;gap:50px;transition:background .3s,box-shadow .3s,height .3s;border-bottom:1px solid transparent}.header.scrolled{height:78px;background:rgba(16,16,15,.93);border-bottom-color:var(--line);backdrop-filter:blur(22px)}.logo{display:flex;align-items:center;gap:13px;flex-shrink:0}.logo-mark{font:600 39px/.9 var(--font-display);letter-spacing:-4px;white-space:nowrap}.logo-dot{color:var(--gold)}.logo-words{font-size:12px;letter-spacing:2.8px;font-weight:700;line-height:1.55}.logo-words small{display:block;color:var(--gold);font-weight:500;font-size:7px;letter-spacing:2.3px;white-space:nowrap}.desktop-nav{display:flex;align-items:center;gap:32px;margin:auto}.nav-link{position:relative;font-size:12px;color:#d0cbc4;transition:color .2s;padding:10px 1px}.nav-link:hover,.nav-link.active{color:var(--gold-light)}.nav-link.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold)}.header-cta{display:flex;align-items:center;gap:19px;padding:13px 18px;border:1px solid rgba(215,172,121,.65);border-radius:1px;color:var(--gold-light);font-size:12px;white-space:nowrap;transition:background .25s,color .25s}.header-cta svg{height:15px;width:15px}.header-cta:hover{background:var(--gold);color:#181511}.menu-toggle{display:none;border:none;background:transparent;color:var(--cream);padding:9px}.menu-toggle svg{width:29px;height:29px}.mobile-menu{position:fixed;z-index:65;inset:0;display:flex;flex-direction:column;padding:132px 8vw 45px;background:#151413;opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .35s,visibility .35s,transform .35s}.mobile-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.mobile-menu .eyebrow{display:flex;justify-content:space-between;color:var(--gold);font-size:10px;letter-spacing:3px;margin:0 0 26px}.mobile-menu>a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:15px 0;font:400 clamp(29px,6vw,48px) var(--font-display)}.mobile-menu>a span{font:11px var(--font-body);color:var(--gold);margin-right:8px}.mobile-menu-bottom{margin-top:auto;font-size:12px;line-height:1.9;color:var(--muted)}
/* Shared */
.eyebrow,.kicker,.section-index,.section-index span,.hero-intro{font-size:10px;letter-spacing:3px;font-weight:600}.kicker{color:var(--gold);margin:0 0 19px}.section-index{color:var(--gold);display:flex;align-items:center;gap:22px;white-space:nowrap;margin-bottom:56px}.section-index .line{height:1px;background:var(--line);flex:1}.section-index>span:last-child:not(.line){color:#928e86;font-size:9px}.display-heading{font:400 clamp(38px,4.45vw,73px)/1.18 var(--font-display);letter-spacing:-2.7px;margin:0}.display-heading em{font-weight:400;color:var(--gold);font-style:italic}.btn{display:inline-flex;gap:39px;justify-content:center;align-items:center;padding:19px 23px;min-height:56px;font-size:12px;font-weight:700;white-space:nowrap;transition:transform .25s var(--ease),background .25s,border-color .25s}.btn:hover{transform:translateY(-3px)}.btn svg{width:18px;height:18px}.btn-gold{background:var(--gold);color:#151310}.btn-gold:hover{background:#ebc79c}.btn-outline{border:1px solid rgba(215,172,121,.58);color:var(--gold-light)}.btn-outline:hover{background:rgba(215,172,121,.08)}.under-link{display:inline-flex;gap:22px;align-items:center;font-size:12px;padding-bottom:10px;border-bottom:1px solid var(--gold);color:var(--gold-light)}.under-link svg{height:14px;width:14px}.section-heading-row{display:flex;justify-content:space-between;gap:65px;align-items:end;margin-bottom:45px}.section-heading-row>p,.portfolio-description{color:var(--muted);font-size:14px;line-height:1.9;max-width:340px;margin:0 0 8px}[data-reveal]{opacity:0;transform:translateY(27px);transition:opacity .8s var(--ease),transform .8s var(--ease)}[data-reveal].is-visible{opacity:1;transform:none}
/* Hero */
.hero{position:relative;min-height:790px;height:min(920px,100svh);background:radial-gradient(ellipse at 82% 34%,#38332c 0%,#1c1c1a 32%,#10100f 75%);overflow:hidden}.hero-grain{position:absolute;inset:0;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='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E")}.hero-inner{position:relative;display:grid;grid-template-columns:53% 47%;align-items:center;height:100%;padding-top:80px}.hero-copy{position:relative;z-index:3;padding-top:5px}.hero-eyebrow{display:flex;align-items:center;color:var(--gold);gap:15px;margin-bottom:34px}.eyebrow-line{width:27px;height:1px;background:var(--gold)}.hero-intro{color:#b4aca0;font-size:11px;letter-spacing:3.8px;margin:0 0 16px}.hero h1{font:400 clamp(64px,7.2vw,122px)/.98 var(--font-display);letter-spacing:-5.5px;margin:0;white-space:nowrap}.hero h1 em{color:var(--gold-light);font-weight:400;font-style:italic}.hero-period{color:var(--gold)}.hero-description{max-width:380px;font-size:15px;line-height:2;color:#d1cbc2;margin:31px 0 34px}.hero-actions{display:flex;align-items:center;gap:30px}.text-link{font-size:12px;white-space:nowrap;color:#d4cdc5;display:inline-flex;gap:10px;align-items:center}.text-link span{color:var(--gold);font-size:18px;transition:transform .2s}.text-link:hover span{transform:translate(2px,-2px)}.hero-art{height:590px;position:relative;margin-left:-50px}.hero-photo-shell{position:absolute;inset:34px -75px 52px 5px;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%,0 12%);overflow:hidden}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:50% 45%;filter:saturate(.78) contrast(1.05)}.hero-photo-vignette{position:absolute;inset:0;background:linear-gradient(90deg,#1a1a18 0%,transparent 24%,transparent 70%,rgba(14,14,14,.25)),linear-gradient(0deg,rgba(13,13,12,.8),transparent 42%)}.hero-vertical{position:absolute;right:-95px;top:75px;writing-mode:vertical-rl;letter-spacing:5px;font-size:10px;color:#e9d6bf;z-index:2}.hero-outline-text{position:absolute;font-family:var(--font-display);font-size:270px;line-height:1;bottom:4px;right:-57px;color:rgba(255,255,255,.045);pointer-events:none}.hero-frame-stamp{position:absolute;left:5px;bottom:79px;padding:14px 22px;display:flex;align-items:center;gap:12px;z-index:2;background:rgba(18,18,17,.88);border:1px solid rgba(215,172,121,.3)}.hero-frame-stamp svg{width:28px;height:28px;color:var(--gold)}.hero-frame-stamp span{font-size:8px;letter-spacing:2px;line-height:1.8}.hero-image-label{position:absolute;bottom:62px;left:170px;right:14px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#d9d0c5;z-index:2}.hero-base{position:absolute;z-index:2;bottom:30px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:36px;color:#bdb6ad}.availability{font-size:10px;letter-spacing:2px;white-space:nowrap}.status-dot{display:inline-block;vertical-align:middle;height:7px;width:7px;background:#d1b78e;border-radius:50%;margin-right:10px;box-shadow:0 0 0 4px rgba(209,183,142,.12)}.hero-bottom-line{height:1px;background:var(--line);flex:1}.scroll-prompt{font-size:9px;letter-spacing:2px;white-space:nowrap}.scroll-prompt span{font-size:19px;margin-left:10px;color:var(--gold)}
.specialty-bar{height:92px;background:#d6ad80;color:#1d1a16;display:flex;align-items:center;overflow:hidden}.specialty-track{display:flex;align-items:center;gap:36px;width:max-content;animation:moveTrack 28s linear infinite;white-space:nowrap}.specialty-track span{font-size:13px;letter-spacing:4px;font-weight:700}.specialty-track b{font-size:25px;font-weight:400}@keyframes moveTrack{to{transform:translateX(-50%)}}
/* Philosophy */
.intro-section{padding-bottom:100px}.intro-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:9%;align-items:end}.intro-grid .display-heading{font-size:clamp(35px,4.3vw,69px)}.intro-aside p{color:#aaa69f;line-height:2;font-size:15px;margin:0 0 30px}.signature-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:82px;padding-top:22px;font-size:9px;letter-spacing:3px;color:var(--faint)}.signature-scribble{font-family:var(--font-display);font-size:32px;letter-spacing:-2px;font-style:italic;color:var(--gold-light);transform:rotate(-8deg)}
/* Gallery */
.portfolio{background:#181716}.portfolio .section-index{margin-bottom:65px}.filter-list{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:0 0 30px}.filter-btn{border:1px solid transparent;background:transparent;color:#aaa69f;padding:11px 16px;font-size:11px;transition:background .2s,color .2s,border .2s}.filter-btn:hover{color:var(--cream)}.filter-btn.selected{background:var(--cream);color:#151310}.filter-btn sup{font-size:9px;margin-left:3px}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:240px;gap:13px}.gallery-item{position:relative;display:block;overflow:hidden;appearance:none;border:0;background:#272522;text-align:left;color:#fff;padding:0;isolation:isolate}.gallery-item[hidden]{display:none!important}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease),filter .6s;filter:saturate(.85)}.gallery-item:hover img,.gallery-item:focus-visible img{transform:scale(1.065);filter:saturate(1)}.gallery-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.06) 58%,transparent);z-index:1}.gallery-info{position:absolute;bottom:24px;left:23px;right:60px;z-index:2}.gallery-info small{display:block;font-size:9px;color:#e4c39a;letter-spacing:2px;margin-bottom:8px}.gallery-info strong{font:400 clamp(18px,1.45vw,28px) var(--font-display);letter-spacing:-.3px}.gallery-open{position:absolute;z-index:2;right:20px;bottom:23px;border:1px solid rgba(255,255,255,.55);width:36px;height:36px;display:grid;place-items:center;border-radius:50%;font-size:20px;transition:background .2s,color .2s,transform .2s}.gallery-item:hover .gallery-open{background:var(--gold-light);color:#111;transform:rotate(45deg)}.portfolio-disclaimer{font-size:11px;color:#86817a;line-height:1.8;margin:28px 0 0}.portfolio-description{max-width:330px}
/* Quote */
.quote-banner{position:relative;min-height:420px;display:grid;place-items:center;text-align:center;overflow:hidden}.quote-banner-image{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,7,.9),rgba(8,8,7,.74)),url('../images/couple-sunset.webp') center 50%/cover;filter:saturate(.66)}.quote-banner-content{position:relative;max-width:920px;padding-block:75px}.quote-banner .eyebrow{color:var(--gold);margin:0 0 35px}.quote-banner-content>p:nth-child(2){font:400 clamp(28px,3.2vw,50px)/1.5 var(--font-display);letter-spacing:-1px;margin:0 0 28px}.quote-banner-content em{color:var(--gold-light)}.quote-banner-content>span{color:#a99f95;font-size:9px;letter-spacing:2.5px}
/* About */
.about{padding-bottom:145px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.about-visual{position:relative;padding:0 50px 80px 0}.about-img{aspect-ratio:4/4.3;overflow:hidden;background:#302f2c}.about-img img{width:100%;height:100%;object-fit:cover;object-position:30% center;filter:contrast(1.1) grayscale(1)}.about-mark{font:400 86px var(--font-display);position:absolute;bottom:53px;right:3px;background:#1a1918;padding:20px 7px 0 26px;letter-spacing:-9px}.about-mark span{color:var(--gold)}.about-caption{position:absolute;left:0;bottom:36px;font-size:9px;letter-spacing:3px;color:#a69a8d}.about-caption span{color:var(--gold);font-size:17px;margin-left:30px}.about-copy .display-heading{line-height:1.17}.about-copy .lead{color:#f0e6da;font-size:17px;line-height:1.85;margin:31px 0 16px}.about-copy>p:not(.lead):not(.kicker){font-size:13px;line-height:2;color:#aaa59e;max-width:540px}.about-copy p em{font-family:var(--font-display);color:var(--gold);font-size:19px}.about-values{display:flex;flex-wrap:wrap;gap:17px 21px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:27px 0;margin:30px 0}.about-values span{display:flex;align-items:center;gap:8px;color:#c8beb2;font-size:9px;letter-spacing:1px;white-space:nowrap}.about-values svg{color:var(--gold);height:21px;width:21px}
/* Services */
.services{background:#1a1917}.services-title{margin-bottom:50px}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:8% 43% 1fr 60px;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:32px 15px 32px 0;transition:padding .25s,background .25s}.service-row:hover{padding-left:14px;background:rgba(215,172,121,.036)}.service-number{font-size:10px;letter-spacing:2px;color:var(--gold)}.service-title{font:400 clamp(26px,2.4vw,42px) var(--font-display);letter-spacing:-.9px}.service-title em{color:var(--gold);font-style:italic}.service-desc{font-size:12px;color:#aaa49b;line-height:2}.service-icon{height:43px;width:43px;border:1px solid #65605a;border-radius:50%;display:grid;place-items:center;transition:transform .25s,color .25s,background .25s}.service-icon svg{width:17px;height:17px}.service-row:hover .service-icon{background:var(--gold);color:#171512;border-color:var(--gold);transform:rotate(45deg)}
/* Approach */
.approach-heading{max-width:700px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:60px}.step{border-top:1px solid rgba(215,172,121,.6);padding:28px 0 0}.step-number{font-size:10px;letter-spacing:2px;color:var(--gold)}.step>svg{display:block;color:var(--gold-light);margin:40px 0 26px;height:33px;width:33px;stroke-width:1.15}.step h3{font:400 29px var(--font-display);margin:0 0 18px}.step p{font-size:13px;line-height:2;color:#aaa69f;margin:0;max-width:325px}
/* CTA */
.contact-banner{position:relative;min-height:535px;display:flex;align-items:center;overflow:hidden}.contact-banner-bg{position:absolute;inset:0;background:linear-gradient(90deg,#151412 0%,rgba(21,20,18,.8) 32%,rgba(21,20,18,.3) 100%),url('../images/travel-highlands.webp') center 43%/cover;filter:saturate(.7)}.contact-banner-inside{position:relative;z-index:1;padding:85px 0}.contact-banner h2{font:400 clamp(39px,5.3vw,80px)/1.25 var(--font-display);letter-spacing:-3px;margin:21px 0 32px}.contact-banner h2 em{color:var(--gold-light)}.contact-banner .eyebrow{color:var(--gold-light)}.contact-banner-index{position:absolute;right:28px;bottom:28px;z-index:1;font-size:9px;letter-spacing:2px;color:#dbd0c4}
/* FAQ */
.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:10%}.faq-layout>div:first-child>p:last-child{font-size:13px;line-height:1.8;color:var(--muted);margin:27px 0 0}.faq-items details{border-bottom:1px solid var(--line)}.faq-items details:first-child{border-top:1px solid var(--line)}.faq-items summary{list-style:none;padding:26px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;font-size:15px}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary span{height:25px;width:25px;color:var(--gold);border:1px solid var(--line);display:grid;place-items:center;font-size:20px;transition:transform .2s;flex:none}.faq-items details[open] summary span{transform:rotate(45deg)}.faq-items details p{margin:-8px 0 24px;line-height:1.9;max-width:540px;font-size:13px;color:var(--muted)}
/* Contact */
.contact-section{background:#1b1a18}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:start}.contact-copy>.display-heading{font-size:clamp(40px,4.5vw,70px)}.contact-copy>p:not(.kicker):not(.location-note){color:var(--muted);font-size:15px;line-height:2;max-width:445px;margin:26px 0 38px}.contact-methods{max-width:470px}.contact-methods>a{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding:22px 0;transition:color .2s}.contact-methods>a:last-child{border-bottom:1px solid var(--line)}.contact-methods>a:hover{color:var(--gold)}.method-icon{height:48px;width:48px;display:grid;place-items:center;border:1px solid #625646;color:var(--gold);flex:none}.method-icon svg{height:22px;width:22px}.contact-methods a small{display:block;font-size:9px;letter-spacing:2px;color:#8f877d;margin-bottom:9px}.contact-methods a strong{font-size:17px;font-weight:500}.method-arrow{margin-left:auto;height:16px;width:16px}.location-note{color:#bcb4a9;font-size:12px;margin-top:25px;line-height:1.8}.form-panel{border:1px solid rgba(215,172,121,.17);padding:38px 41px;background:#24221f}.form-heading{display:flex;justify-content:space-between;padding-bottom:26px;border-bottom:1px solid var(--line);margin-bottom:31px;font-size:10px;letter-spacing:2px}.form-heading span:last-child{color:var(--gold)}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:19px}.form-panel label{display:block;font-size:11px;color:#d5cfc7;letter-spacing:.2px;margin-bottom:23px}.form-panel label span{color:var(--gold)}.form-panel input,.form-panel select,.form-panel textarea{display:block;width:100%;background:#1b1a18;border:1px solid rgba(245,239,230,.17);border-radius:0;color:var(--cream);font-size:12px;outline:0;padding:15px 13px;margin-top:11px;min-height:49px;transition:border-color .2s}.form-panel input:focus,.form-panel textarea:focus,.form-panel select:focus{border-color:var(--gold)}.form-panel input::placeholder,.form-panel textarea::placeholder{color:#817a70}.form-panel select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23c4b49c' stroke-width='1.7'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.form-panel select option{color:#f5efe6;background:#20201e}.form-panel textarea{resize:vertical;min-height:119px;line-height:1.6}.form-panel input[type=date]{color-scheme:dark}.form-submit{border:0;width:100%;justify-content:space-between;margin-top:2px}.form-privacy{font-size:10px;color:#9a938b;line-height:1.7;margin:17px 0 0}
/* Footer */
.footer{padding-top:90px;background:#10100f}.footer-top{display:flex;justify-content:space-between;gap:35px;padding-bottom:85px}.footer-brand{font:400 clamp(42px,6vw,100px)/1 var(--font-display);letter-spacing:-3px}.footer-brand span{color:var(--gold)}.footer-top>div:first-child>p{font-size:13px;color:var(--muted);line-height:2;margin:22px 0 0}.footer-links{display:flex;gap:100px;padding-top:12px}.footer-links>div{display:flex;flex-direction:column;gap:15px}.footer-links small{font-size:10px;letter-spacing:2px;color:var(--gold);margin-bottom:15px}.footer-links a{font-size:12px;color:#c2bbb1;transition:color .2s}.footer-links a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid var(--line);padding:27px 0;display:flex;gap:18px;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1.2px;color:#888078}.footer-bottom a:not(.back-top){color:var(--gold-light)}.footer-note{max-width:190px;font-size:9px;line-height:1.6;letter-spacing:0}.back-top{width:32px;height:32px;border:1px solid var(--line);display:grid;place-items:center;font-size:17px;color:var(--cream);transition:border-color .2s}.back-top:hover{border-color:var(--gold)}.floating-wa{position:fixed;z-index:55;bottom:30px;right:30px;display:flex;align-items:center;gap:11px;padding:14px 18px;color:#111;background:var(--gold-light);border-radius:50px;font-size:12px;font-weight:700;box-shadow:0 10px 40px #0006;transition:transform .25s}.floating-wa svg{width:21px;height:21px}.floating-wa:hover{transform:translateY(-5px)}
/* Lightbox */
.lightbox{position:fixed;z-index:100;inset:0;background:rgba(9,9,9,.98);display:flex;flex-direction:column;padding:32px 52px;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}.lightbox.open{opacity:1;visibility:visible}.lightbox-top,.lightbox-bottom{display:flex;justify-content:space-between;align-items:center}.lightbox-top>span{font-size:10px;letter-spacing:3px;color:var(--gold)}.lightbox-close{background:transparent;color:#fff;border:1px solid #6c645e;width:44px;height:44px;display:grid;place-items:center}.lightbox-close:hover,.lightbox-nav:hover{background:var(--gold);color:#111}.lightbox-close svg{height:22px;width:22px}.lightbox-stage{flex:1;display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:0;margin:22px 0}.lightbox-stage img{height:100%;width:100%;max-width:calc(100vw - 260px);object-fit:contain;min-height:0}.lightbox-nav{border:1px solid #6c645e;background:transparent;color:#fff;width:52px;height:52px;font-size:22px;flex:none}.lightbox-bottom p{color:var(--gold);font-size:10px;letter-spacing:2px;margin:0 0 7px}.lightbox-bottom h3{font:400 31px var(--font-display);margin:0}.lightbox-bottom>span{font-size:11px;color:#92897e;letter-spacing:2px}
@media(max-width:1350px){:root{--wrap:calc(100% - 90px)}.header{padding-inline:45px}.hero h1{font-size:clamp(60px,7vw,105px)}.hero-art{margin-left:-28px}.hero-photo-shell{right:-35px}.hero-vertical{right:-39px}.gallery-grid{grid-auto-rows:205px}.footer-links{gap:65px}}
@media(max-width:1050px){:root{--wrap:calc(100% - 70px)}.header{gap:25px;padding-inline:35px}.desktop-nav{gap:18px}.hero{min-height:740px;height:auto}.hero-inner{min-height:740px}.hero h1{font-size:clamp(58px,7.4vw,80px);letter-spacing:-4px}.hero-art{height:460px;margin-left:-13px}.hero-photo-shell{inset:30px -15px 43px -30px}.hero-frame-stamp{left:-28px;bottom:68px}.hero-image-label{left:120px;bottom:54px}.hero-vertical{display:none}.hero-outline-text{font-size:180px;right:-25px}.hero-actions{gap:16px}.hero-actions .btn{gap:14px}.text-link{font-size:11px}.section-pad{padding-block:100px}.gallery-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:230px}.about-grid{gap:5%}.about-values{gap:13px}.about-values span{font-size:8px}.service-row{grid-template-columns:6% 45% 1fr 44px;gap:12px}.footer-links{gap:35px}}
@media(max-width:760px){:root{--wrap:calc(100% - 42px)}html{scroll-padding-top:72px}.header,.header.scrolled{height:73px;padding-inline:22px;background:rgba(16,16,15,.92);border-bottom:1px solid var(--line)}.logo-mark{font-size:34px}.logo-words{font-size:10px;letter-spacing:2px}.logo-words small{font-size:6px;letter-spacing:1.4px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:block;margin-left:auto}.section-pad{padding-block:82px}.section-index{margin-bottom:37px;gap:13px;font-size:9px;letter-spacing:2px}.section-index>span:last-child:not(.line){display:none}.display-heading{font-size:clamp(35px,8vw,56px);letter-spacing:-1.8px}.hero{min-height:860px;height:100svh;max-height:1000px}.hero-inner{display:flex;flex-direction:column;align-items:stretch;min-height:0;height:100%;padding-top:125px}.hero-copy{padding:0;z-index:3}.hero-eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:21px}.hero-intro{font-size:8px;letter-spacing:2px;margin-bottom:10px}.hero h1{font-size:clamp(57px,12.3vw,86px);letter-spacing:-3.4px;line-height:.99}.hero-description{font-size:12px;max-width:310px;margin:19px 0 23px;line-height:1.85}.hero-actions{gap:17px}.hero-actions .btn{min-height:49px;padding:13px 15px;font-size:10px;gap:11px}.hero-actions .btn svg{height:15px;width:15px}.hero-actions .text-link{font-size:9px;gap:4px}.hero-art{height:auto;position:absolute;z-index:1;top:44%;bottom:50px;left:17%;right:-21px;margin:0;pointer-events:none}.hero-photo-shell{inset:0 0 40px -25px;clip-path:polygon(9% 0,100% 0,100% 100%,0 100%,0 14%)}.hero-photo{object-position:55% 50%}.hero-photo-vignette{background:linear-gradient(0deg,#10100f 0%,transparent 39%),linear-gradient(90deg,#10100f 0%,transparent 31%)}.hero-frame-stamp{left:-10px;bottom:50px;padding:9px 12px}.hero-frame-stamp svg{width:23px;height:23px}.hero-frame-stamp span{font-size:6px;letter-spacing:1px}.hero-image-label{bottom:51px;left:140px;right:15px;font-size:7px}.hero-image-label span:last-child{display:none}.hero-outline-text{font-size:140px;bottom:10px}.hero-base{bottom:21px;gap:12px}.availability{font-size:8px;letter-spacing:1px}.scroll-prompt{font-size:8px;letter-spacing:1px}.scroll-prompt span{font-size:14px;margin-left:2px}.specialty-bar{height:67px}.specialty-track{gap:20px}.specialty-track span{font-size:11px;letter-spacing:2px}.specialty-track b{font-size:18px}.intro-grid{grid-template-columns:1fr;gap:27px}.intro-aside p{font-size:13px;line-height:1.9}.signature-row{margin-top:46px}.signature-scribble{font-size:26px}.section-heading-row{display:block;margin-bottom:26px}.section-heading-row .display-heading{margin-bottom:20px}.section-heading-row>p,.portfolio-description{max-width:500px;font-size:13px}.filter-list{flex-wrap:nowrap;overflow:auto;margin-right:-21px;padding-bottom:12px;scrollbar-width:none}.filter-list::-webkit-scrollbar{display:none}.filter-btn{white-space:nowrap;font-size:11px;padding:10px 12px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:215px;gap:9px}.gallery-item.wide{grid-column:span 2}.gallery-item.tall{grid-row:span 2}.gallery-info{left:12px;right:15px;bottom:15px}.gallery-info small{font-size:7px;letter-spacing:1px}.gallery-info strong{font-size:17px}.gallery-open{width:27px;height:27px;right:12px;bottom:14px;font-size:15px}.gallery-item.wide .gallery-info strong{font-size:23px}.portfolio-disclaimer{font-size:10px}.quote-banner{min-height:350px}.quote-banner-content>p:nth-child(2){font-size:28px;line-height:1.55}.about-grid{grid-template-columns:1fr;gap:38px}.about-visual{max-width:570px;width:90%;margin-inline:auto;padding:0 36px 45px 0}.about-img{aspect-ratio:1/1}.about-mark{font-size:64px;bottom:24px}.about-caption{bottom:11px}.about-copy .display-heading{font-size:clamp(40px,8.8vw,56px)}.about-copy .lead{font-size:16px}.about-copy>p:not(.lead):not(.kicker){font-size:13px}.about-values{gap:13px}.services-title>p{margin:0}.service-row{grid-template-columns:30px 1fr 42px;gap:12px;padding:23px 0}.service-number{font-size:8px}.service-title{font-size:clamp(22px,5.4vw,34px)}.service-title em{display:block}.service-desc{grid-column:2;grid-row:2;font-size:10px;line-height:1.75}.service-icon{grid-column:3;grid-row:1/3;width:35px;height:35px}.steps{grid-template-columns:1fr;gap:30px;margin-top:45px}.step{display:grid;grid-template-columns:54px 1fr;column-gap:18px;padding-top:20px}.step-number{grid-column:1/3}.step>svg{grid-row:2/4;margin:23px 0 0}.step h3{grid-column:2;margin-top:22px;margin-bottom:7px}.step p{grid-column:2;max-width:none}.contact-banner{min-height:470px}.contact-banner h2{font-size:clamp(42px,8.6vw,65px);letter-spacing:-2px}.contact-banner-bg{background-position:55% 50%}.faq-layout{grid-template-columns:1fr;gap:37px}.faq-items summary{font-size:13px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-copy>.display-heading{font-size:clamp(43px,8.6vw,64px)}.form-panel{padding:26px 22px}.footer{padding-top:65px}.footer-top{flex-direction:column;gap:50px;padding-bottom:55px}.footer-brand{font-size:54px}.footer-links{gap:70px}.footer-bottom{flex-wrap:wrap;gap:15px;font-size:9px;justify-content:space-between}.footer-note{order:3;max-width:none;width:100%}.floating-wa{bottom:18px;right:17px;padding:12px 13px}.floating-wa span{display:none}.lightbox{padding:22px 17px}.lightbox-top>span{font-size:8px;letter-spacing:1.5px}.lightbox-stage{gap:6px}.lightbox-stage img{max-width:calc(100vw - 112px)}.lightbox-nav{height:34px;width:34px;font-size:17px}.lightbox-bottom h3{font-size:22px}.lightbox-bottom p{font-size:8px}}
@media(max-width:420px){.hero h1{font-size:clamp(51px,12.3vw,60px)}.hero-copy{padding-top:7px}.hero{min-height:770px}.hero-art{top:45%}.gallery-grid{grid-auto-rows:180px}.gallery-info strong{font-size:15px}.gallery-item.wide .gallery-info strong{font-size:20px}.form-two{grid-template-columns:1fr;gap:0}.form-panel{padding:23px 17px}.contact-methods a strong{font-size:15px}.footer-links{gap:55px}.section-index{font-size:8px}}
@media(max-height:700px) and (min-width:761px){.hero{height:auto;min-height:750px}.hero-inner{min-height:750px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}}
