:root{--black:#0d0d0c;--gold:#c9a76d;--ivory:#f3eee5;--muted:#a9a59d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--ivory);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}.header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;position:absolute;top:0;left:0;right:0;z-index:10;background:linear-gradient(#0b0b0bca,transparent)}.brand{display:flex;align-items:center;gap:13px;font-family:Georgia,serif;font-size:18px;letter-spacing:.09em}.brand img{height:60px;width:60px;object-fit:cover;border-radius:50%}.brand small{display:block;font-size:10px;letter-spacing:.5em;color:var(--gold);margin-top:3px}.nav{display:flex;gap:30px;align-items:center}.nav>a{font-size:11px;text-transform:uppercase;letter-spacing:.14em}.nav>a:hover,.text-link:hover{color:var(--gold)}.nav .nav-cta{border:1px solid var(--gold);padding:16px 19px;color:var(--gold)}.menu-toggle{display:none;background:none;border:0;color:white;font-size:30px}.hero{height:min(850px,100svh);min-height:630px;position:relative;display:flex;align-items:center}.hero-img,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-img{object-fit:cover;object-position:center 48%}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.62) 48%,rgba(0,0,0,.1) 100%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 35%)}.hero-content{position:relative;z-index:1;margin:80px 0 0 9%;max-width:800px}.eyebrow,.section-kicker{color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.26em}.hero h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.15}.hero h1{font-size:clamp(45px,5.7vw,86px);margin:28px 0}.hero h1 em,h2 em{color:var(--gold);font-weight:400}.hero-content>p{font-size:17px;line-height:1.8;color:#e4e0d9;max-width:550px}.hero-actions{display:flex;gap:35px;align-items:center;margin-top:35px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:25px;padding:18px 25px;font-size:11px;font-weight:700;letter-spacing:.13em;cursor:pointer;border:1px solid var(--gold)}.btn.gold{background:var(--gold);color:#111}.btn.gold:hover{background:#e2c18a}.btn.outline{background:transparent;color:var(--gold)}.text-link,.subtle-link{font-size:11px;letter-spacing:.14em;font-weight:700}.hero-caption{position:absolute;bottom:32px;right:6%;font-size:10px;letter-spacing:.25em;color:#eee}.section{padding:110px 8%}.intro{text-align:center;max-width:1000px;margin:auto}.intro h2,.section h2,.occasion-text h2{font-size:clamp(36px,4.2vw,64px);margin:20px 0 26px}.intro>p{max-width:640px;margin:auto;color:var(--muted);font-size:16px;line-height:1.9}.intro-stats{margin-top:55px;display:flex;justify-content:center;gap:32px;align-items:center;color:#ddd;font-size:10px;letter-spacing:.12em}.intro-stats i{color:var(--gold);font-style:normal}.experiences{background:#161615}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-top p{color:var(--muted);max-width:300px;line-height:1.7}.experience-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:300px 300px;gap:15px}.experience-card{position:relative;overflow:hidden;min-height:250px}.experience-card.large{grid-column:span 2;grid-row:span 2}.experience-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.experience-card:hover img{transform:scale(1.055)}.experience-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.9),transparent 75%)}.card-content{position:absolute;z-index:1;bottom:25px;left:27px;right:20px}.card-content span{font-size:9px;letter-spacing:.2em;color:var(--gold)}.card-content h3{font-family:'Playfair Display',serif;font-size:clamp(21px,2.3vw,35px);font-weight:400;margin:10px 0}.card-content p{font-size:13px;line-height:1.6;color:#ddd;max-width:300px}.card-content a{font-size:10px;letter-spacing:.16em;color:var(--gold)}.occasions{display:grid;grid-template-columns:1fr 1fr}.occasion-photo img{width:100%;height:100%;object-fit:cover;min-height:660px}.occasion-text{padding:90px 11%;background:#211e19;display:flex;flex-direction:column;justify-content:center}.occasion-text>p{line-height:1.9;color:#bbb5ac}.occasion-line{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid #ffffff2b}.occasion-line b{color:var(--gold);font-size:12px}.occasion-text .btn{margin-top:35px;align-self:flex-start}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.about p{line-height:1.9;color:var(--muted)}.about img{width:100%;height:530px;object-fit:cover}.subtle-link{color:var(--gold);display:inline-block;margin-top:22px}.gallery{background:#171716;text-align:center}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:45px}.gallery-grid img{width:100%;height:280px;object-fit:cover}.contact{display:grid;grid-template-columns: .8fr 1.2fr;gap:9%;background:#201d18}.contact-intro p{line-height:1.8;color:#bcb6ab}.contact-note{color:var(--gold);font-size:11px;letter-spacing:.15em;margin-top:50px}.quote-form{display:flex;flex-direction:column;gap:22px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.quote-form label{display:flex;flex-direction:column;gap:9px;font-size:11px;letter-spacing:.07em}.quote-form input,.quote-form select,.quote-form textarea{background:#151412;border:1px solid #5b5144;color:white;padding:15px;outline:none;min-width:0;border-radius:0}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--gold)}.quote-form button{align-self:flex-start}.form-help{color:#b5ac9f;font-size:12px;line-height:1.6}footer{padding:55px 8% 25px;background:#0a0a09}.footer-brand{display:flex;align-items:center;gap:15px}.footer-brand img{width:72px;height:72px;border-radius:50%}.footer-brand strong{font-family:Georgia,serif;letter-spacing:.12em}.footer-brand small{display:block;color:var(--gold);font-size:9px;letter-spacing:.12em;margin-top:10px}.footer-links{display:flex;gap:30px;justify-content:flex-end;margin-top:-45px;font-size:10px;letter-spacing:.13em}.footer-bottom{border-top:1px solid #3b352b;margin-top:70px;padding-top:25px;display:flex;justify-content:space-between;color:#aaa;font-size:10px;letter-spacing:.12em}@media(max-width:900px){.header{padding:0 5%}.menu-toggle{display:block}.nav{display:none;position:absolute;top:85px;left:0;right:0;padding:25px;background:#111;flex-direction:column;align-items:stretch}.nav.open{display:flex}.hero-content{margin-left:7%;margin-right:7%}.experience-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,280px)}.experience-card.large{grid-column:span 2;grid-row:span 1}.occasions{grid-template-columns:1fr}.occasion-photo img{height:400px;min-height:0}.occasion-text{padding:70px 8%}.about{gap:5%}.gallery-grid img{height:200px}.contact{gap:5%}}@media(max-width:600px){.brand{font-size:14px}.brand img{width:48px;height:48px}.header{height:76px}.nav{top:76px}.hero{min-height:700px;height:92svh}.hero-img{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#000b,#0007),linear-gradient(0deg,#0009,transparent)}.hero-content{margin-top:45px}.hero h1{font-size:45px}.hero-content>p{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:25px}.hero-caption{font-size:8px;left:7%;right:auto}.section{padding:75px 6%}.intro-stats{flex-wrap:wrap;gap:14px;font-size:9px}.section-top{display:block}.experience-grid{display:block}.experience-card,.experience-card.large{height:330px;margin-bottom:12px}.about,.contact{grid-template-columns:1fr}.about img{height:350px;margin-top:20px}.gallery-grid{grid-template-columns:1fr 1fr;gap:8px}.gallery-grid img{height:165px}.form-row{grid-template-columns:1fr}.footer-links{justify-content:flex-start;margin-top:35px;flex-wrap:wrap;gap:17px}.footer-bottom{gap:18px;flex-wrap:wrap}}

/* Experience detail pages */
.detail-hero{height:660px;min-height:570px;position:relative;display:flex;align-items:end}.detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.detail-hero-content{position:relative;z-index:1;padding:160px 8% 85px;max-width:900px}.detail-back{display:inline-block;color:#e5d5ba;font-size:11px;letter-spacing:.18em;margin-bottom:55px}.detail-hero h1{font:400 clamp(56px,7vw,108px)/1.06 'Playfair Display',Georgia,serif;margin:18px 0}.detail-hero-content>p{font-size:19px;line-height:1.7;max-width:620px;color:#eee}.detail-hero .btn{margin-top:20px}.detail-story{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.detail-story p,.detail-split p{font-size:16px;line-height:1.95;color:var(--muted)}.detail-highlights{background:#191816}.detail-highlights ul{display:grid;grid-template-columns:repeat(2,1fr);gap:0 50px;list-style:none;padding:0;margin:50px 0 0}.detail-highlights li{border-top:1px solid #514738;padding:28px 0;font-size:18px;font-family:'Playfair Display',serif}.detail-highlights li span{font:600 11px 'DM Sans',sans-serif;color:var(--gold);margin-right:25px}.detail-split{display:grid;grid-template-columns:1fr 1fr;background:#242019}.detail-split img{width:100%;height:550px;object-fit:cover}.detail-split>div{padding:70px 10%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.detail-split h2{font-size:clamp(35px,4vw,62px)}.detail-split .btn{margin-top:22px}.detail-next{display:flex;justify-content:space-between;align-items:center;gap:30px}.detail-next>a{color:var(--gold);font-size:18px;border-bottom:1px solid var(--gold);padding-bottom:8px}@media(max-width:700px){.detail-hero{min-height:640px}.detail-hero-content{padding:120px 7% 65px}.detail-hero h1{font-size:56px}.detail-story,.detail-split{grid-template-columns:1fr}.detail-highlights ul{grid-template-columns:1fr}.detail-split img{height:320px}.detail-split>div{padding:70px 7%}.detail-next{display:block}.detail-next>a{display:inline-block;margin-top:20px}}
/* Event landing pages */
a.occasion-link{color:inherit;text-decoration:none;transition:color .2s ease}a.occasion-link:hover{color:#d9b77d}

.bot-field{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.form-help a{color:#c7a66d;text-decoration:underline}.legal-page{max-width:850px;margin:0 auto;padding:150px 24px 100px;line-height:1.85}.legal-page h1{font-family:'Playfair Display',serif;font-size:clamp(2.5rem,6vw,4rem);margin-bottom:25px}.legal-page h2{margin-top:35px;color:#d6b578}.legal-page p{margin-bottom:20px}.legal-page a{color:#d6b578}
