
:root{--cream:#f8f6f1;--paper:#fffdfa;--ink:#202020;--muted:#6f685f;--gold:#b79b62;--olive:#77785d;--line:#e4ddd1;--dark:#151515}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Montserrat,Arial,sans-serif;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:0 auto}.topbar{position:fixed;z-index:40;top:0;left:0;right:0;padding:18px 0;transition:.25s;background:rgba(248,246,241,.88);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.04)}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{width:210px;height:auto}.menu{display:flex;align-items:center;gap:24px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.menu a{opacity:.82}.menu a:hover{opacity:1;color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gold);padding:13px 20px;text-transform:uppercase;font-size:12px;letter-spacing:.16em;color:var(--ink);background:transparent;transition:.25s;cursor:pointer}.btn:hover{background:var(--gold);color:white}.btn.light{border-color:#fff;color:#fff}.btn.light:hover{background:#fff;color:#111}.burger{display:none;background:none;border:0;font-size:28px}.hero{min-height:100vh;display:grid;place-items:center;position:relative;background:center/cover no-repeat;color:#fff;text-align:center;padding:130px 20px 80px}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.52),rgba(0,0,0,.2));}.hero-content{position:relative;z-index:1;width:min(920px,100%)}.hero .wordmark{width:min(520px,82vw);margin:0 auto 24px;filter:invert(1) brightness(2)}.eyebrow{color:var(--gold);font-weight:700;letter-spacing:.22em;text-transform:uppercase;font-size:13px}.hero h1,.page-hero h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;line-height:1}.hero h1{font-size:clamp(42px,8vw,88px);margin:0 0 22px}.hero p{font-size:clamp(17px,2vw,24px);max-width:760px;margin:0 auto 34px}.section{padding:94px 0}.section.compact{padding:68px 0}.intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.intro h2,.section-title h2{font-size:clamp(42px,6vw,76px);margin:12px 0 24px}.lead{font-size:20px;color:var(--muted)}.kicker{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:700}.image-card{overflow:hidden;background:#ddd}.image-card img{width:100%;height:100%;object-fit:cover}.ratio-portrait{aspect-ratio:4/5}.ratio-wide{aspect-ratio:16/9}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{background:var(--paper);border:1px solid var(--line)}.service-card .image-card{aspect-ratio:4/5}.service-card-content{padding:28px}.service-card h3{font-size:38px;margin:0 0 12px}.split-dark{background:var(--dark);color:#fff}.split-dark .lead,.split-dark p{color:#d8d2c9}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery-grid .image-card{aspect-ratio:1/1}.gallery-grid .wide{grid-column:span 2;aspect-ratio:2/1}.cta-band{background:var(--dark);color:white;padding:78px 0;text-align:center}.cta-band h2{font-size:clamp(42px,7vw,82px);margin:10px 0 24px}.footer{background:#111;color:#eee;padding:70px 0 30px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:40px}.footer img{width:230px;filter:invert(1) brightness(2);margin-bottom:20px}.footer a{color:#eee;display:block;margin:8px 0}.legal{border-top:1px solid rgba(255,255,255,.12);margin-top:44px;padding-top:20px;display:flex;gap:18px;flex-wrap:wrap;color:#aaa;font-size:13px}.page-hero{min-height:62vh;display:grid;align-items:end;position:relative;color:white;background:center/cover no-repeat;padding:150px 0 80px}.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.15))}.page-hero .container{position:relative}.page-hero h1{font-size:clamp(54px,9vw,116px);margin:14px 0}.page-hero p{font-size:clamp(18px,2vw,25px);max-width:720px}.content-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.feature{background:var(--paper);padding:32px;border:1px solid var(--line)}.feature h3{font-size:40px;margin:0 0 12px}.feature .image-card{aspect-ratio:4/3;margin-bottom:24px}.themes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.theme-card{background:#fff;border:1px solid var(--line)}.theme-card .image-card{aspect-ratio:4/3}.theme-card div:not(.image-card){padding:22px}.theme-card h3{font-size:31px;margin:0 0 8px}.form-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.contact-list{font-size:24px}.contact-list a{display:block;margin:14px 0}.form{background:white;border:1px solid var(--line);padding:34px}.form label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin:16px 0 6px}.form input,.form textarea,.form select{width:100%;padding:14px;border:1px solid var(--line);font:inherit;background:#fff}.form textarea{min-height:140px}.check{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted);margin:18px 0}.check input{width:auto;margin-top:5px}.cookie-banner{position:fixed;z-index:90;left:22px;right:22px;bottom:22px;background:#fff;border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,.18);padding:22px;display:none;gap:18px;align-items:center;justify-content:space-between}.cookie-banner.show{display:flex}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.small-btn{border:1px solid var(--gold);background:transparent;padding:10px 14px;cursor:pointer}.small-btn.primary{background:var(--gold);color:#fff}.legal-page{padding:150px 0 80px}.legal-page h1{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;font-size:64px}.legal-page h2{font-size:36px;margin-top:34px}.note{font-size:13px;color:var(--muted);background:#fff;border-left:3px solid var(--gold);padding:14px 18px}.mobile-only{display:none}@media(max-width:900px){.burger{display:block}.menu{position:fixed;top:70px;right:18px;left:18px;background:#fff;border:1px solid var(--line);padding:20px;display:none;flex-direction:column;align-items:flex-start}.menu.open{display:flex}.menu .btn{width:100%}.brand img{width:170px}.intro,.form-wrap,.footer-grid,.content-grid{grid-template-columns:1fr}.services-grid,.themes{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid .wide{grid-column:span 2}.section{padding:68px 0}.cookie-banner{display:none;flex-direction:column;align-items:flex-start}.cookie-banner.show{display:flex}.desktop-only{display:none}.mobile-only{display:block}}
