/* Full-width public collection. Editor form styles remain scoped separately. */
body:has(.grand-home){background:#111c2a;color:#f7ead1}
body:has(.grand-home) #main{max-width:none;width:100%;padding:0;margin:0}
body:has(.grand-home) .site-header{position:absolute;z-index:5;top:0;left:0;width:100%;max-width:none;padding:22px clamp(20px,4vw,70px);background:transparent;border:0;color:#f7ead1}
body:has(.grand-home) .site-header a{color:inherit}
body:has(.grand-home) .site-header .brand-mark{border-color:#c4a76b;color:#f7ead1;background:#172336}
body:has(.grand-home) .site-header .button{border:1px solid #c7ad7d;background:transparent;color:#f7ead1}
.grand-home{--gold:#d5b67b;font-family:SourceSans3,sans-serif;font-size:18px;line-height:1.65;overflow:clip}
.grand-home *{box-sizing:border-box}
.grand-home h1,.grand-home h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;letter-spacing:-.025em;line-height:.98;margin:0 0 28px;color:inherit;max-width:none}
.grand-home h1{font-size:clamp(64px,6.8vw,112px)}
.grand-home h2{font-size:clamp(56px,6.2vw,98px)}
.grand-home h1 em,.grand-home h2 em{font-weight:400;color:inherit}
.grand-home p{max-width:540px;margin:0 0 26px}
.grand-home .gh-eyebrow{font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 28px}
.gh-scene{isolation:isolate;position:relative;min-height:100svh;display:flex;align-items:center;padding:110px clamp(24px,7vw,112px);background:#111c2a}
.gh-scene picture{position:absolute;inset:0;z-index:-3}
.gh-scene picture img{width:100%;height:100%;object-fit:cover;object-position:center}
.gh-scene:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(9,18,31,.8),rgba(9,18,31,.45) 42%,transparent 74%),linear-gradient(0deg,#111c2a 0%,transparent 15%)}
.gh-copy{max-width:660px;width:52%}
.gh-hero{padding-top:170px;min-height:max(820px,100svh)}
.grand-home .gh-scene-note{position:absolute;bottom:20px;left:clamp(24px,7vw,112px);font-size:14px;letter-spacing:.08em;max-width:none;margin:0}
.gh-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-top:32px}
.grand-home a{color:inherit;text-decoration:none;text-underline-offset:6px}
.grand-home a:hover{text-decoration:underline}
.grand-home a:focus-visible,.grand-home summary:focus-visible{outline:2px solid #eec891;outline-offset:6px}
.gh-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 24px;border:1px solid #c5a975;background:#ead6ad;color:#192336!important;font-weight:600;font-size:16px;gap:20px}
.gh-link{display:inline-flex;align-items:center;min-height:48px;border-bottom:1px solid currentColor;font-size:16px}
.gh-intro{text-align:center;max-width:1000px;margin:auto;padding:110px 24px 100px}
.grand-home .gh-intro p{margin-left:auto;margin-right:auto;max-width:620px}
.gh-rose{background:#542b2c;color:#fff3e2;--gold:#f3d89e}
.gh-rose:after{background:linear-gradient(90deg,rgba(75,30,33,.85),rgba(75,30,33,.56) 42%,transparent 78%),linear-gradient(0deg,#542b2c 0%,transparent 14%)}
.gh-celebrations{background:#22172b}
.gh-celebrations:after{background:linear-gradient(90deg,rgba(22,13,31,.86),rgba(22,13,31,.47) 43%,transparent 78%)}
.gh-making,.gh-questions{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:120px clamp(24px,7vw,112px);max-width:1600px;margin:auto}
.gh-making{align-items:center}
.gh-making-copy p{max-width:560px}
.grand-home .gh-small{font-size:14px;margin-top:22px;color:#dccdb7}
.gh-questions{border-top:1px solid #dac39433}
.gh-questions details{border-bottom:1px solid #dac39444;padding:14px 0}
.gh-questions summary{cursor:pointer;min-height:44px;padding:8px 0;font-size:18px;list-style-position:outside;margin-left:18px}
.gh-questions details p{font-size:16px;color:#e0d5c3;margin:12px 0 20px}
.gh-closing{text-align:center;padding:100px 24px 120px;background:radial-gradient(ellipse at bottom,#35423f 0%,#111c2a 65%)}
.grand-home .gh-closing p{margin-left:auto;margin-right:auto}
.gh-footer{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px clamp(24px,7vw,112px);border-top:1px solid #dac39433;font-size:14px}
.gh-footer nav{display:flex;gap:24px;flex-wrap:wrap}
.gh-footer a{display:inline-flex;min-height:44px;align-items:center}
.demo-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;border-radius:0;background:#111c2a}
.demo-dialog .demo-dialog-bar{height:60px;background:#111c2a;color:#f8ead3;border-bottom:1px solid #d5b67b44;padding:8px 20px}
.demo-dialog .demo-dialog-bar button{min-height:44px;background:transparent;border:1px solid #c7ad7d;color:#f8ead3;border-radius:0;padding:8px 18px}
.demo-dialog iframe{width:100%;height:calc(100dvh - 60px);display:block;border:0}
body:has(.demo-dialog[open]){overflow:hidden}
@media(max-width:759px){
 body:has(.grand-home) .site-header{padding:15px 20px;align-items:center;gap:10px}
 body:has(.grand-home) .site-header nav a:not(.button){display:none}
 body:has(.grand-home) .site-header .button{font-size:14px;padding:8px 12px;min-height:44px}
 .grand-home h1{font-size:clamp(53px,14vw,90px)}
 .grand-home h2{font-size:clamp(54px,13.5vw,82px)}
 .gh-scene{min-height:max(860px,110svh);align-items:flex-start;padding:65px 24px 370px}
 .gh-hero{padding-top:145px;min-height:max(1000px,120svh)}
 .gh-copy{width:100%;max-width:550px;margin:0 auto}
 .gh-copy>p:not(.gh-eyebrow){font-size:17px;max-width:420px}
 .gh-scene:after{background:linear-gradient(180deg,rgba(9,18,31,.84),rgba(9,18,31,.56) 40%,transparent 75%,#111c2a 100%)}
 .gh-rose:after{background:linear-gradient(180deg,rgba(75,30,33,.9),rgba(75,30,33,.63) 45%,transparent 80%,#542b2c 100%)}
 .gh-celebrations:after{background:linear-gradient(180deg,rgba(22,13,31,.86),rgba(22,13,31,.58) 45%,transparent 80%,#22172b 100%)}
 .gh-actions{gap:16px;margin-top:24px}
 .gh-scene picture img{object-position:50% 100%}
 .gh-intro{padding:80px 24px}
 .gh-making,.gh-questions{grid-template-columns:1fr;gap:30px;padding:80px 24px}
 .gh-footer{align-items:flex-start;flex-direction:column;gap:8px}
 .gh-closing{padding:70px 24px 85px}
}
@media(prefers-reduced-motion:reduce){.grand-home *{scroll-behavior:auto!important}}
