:root{--paper:#f8f5f0;--ink:#302a25;--muted:#706258;--gold:#a98448;--line:#dcd1c4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:1.8}a{color:inherit;text-decoration:none;cursor:pointer}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:28px 6%;border-bottom:1px solid var(--line)}.wordmark{font-family:'Cormorant Garamond',Georgia,serif;font-size:23px;letter-spacing:3px;line-height:1.2}.wordmark span{display:block;font-family:Montserrat,sans-serif;font-size:8px;letter-spacing:4px;margin-top:9px}nav{display:flex;gap:30px;align-items:center;font-size:11px}.nav-cta{border-bottom:1px solid var(--gold);padding:10px 0}nav span{margin-left:15px}.hero{position:relative;max-width:1440px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;padding:70px 6% 80px;gap:6%}.eyebrow{font-size:9px;letter-spacing:2.4px;font-weight:600;margin:0 0 23px;color:var(--muted)}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.06;margin:0}h1{font-size:clamp(48px,5.1vw,78px);letter-spacing:-2px}em{font-weight:400;color:#876c48}h1 em{font-size:.83em}h2{font-size:clamp(38px,3.7vw,56px);letter-spacing:-1px}h3{font-size:34px}.intro{max-width:430px;margin:28px 0 30px;font-size:12px;line-height:2;color:var(--muted)}.button{padding:16px 22px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;font-size:10px;font-weight:500;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.dark{background:var(--ink);color:#fff}.dark:hover{background:#554638}.light{background:#efe5d6;color:var(--ink)}.button span{font-size:18px}.credential{font-size:9px;color:var(--muted);margin-top:21px}.credential span{padding:0 9px}.brand-panel{background:#211d17;min-height:475px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;border-radius:180px 180px 3px 3px;position:relative;padding:35px 15px 30px;box-shadow:18px 18px 0 #e9dfd0}.brand-panel img{width:100%;height:auto;display:block}.brand-note{text-align:center;color:#d5b67c;margin-top:22px}.brand-note span{font-size:8px;letter-spacing:3px}.brand-note p{font-family:'Cormorant Garamond',Georgia,serif;font-size:34px;line-height:1.1;margin:14px 0}.brand-note em{color:#e7d5ae}.scroll{position:absolute;bottom:18px;left:6%;font-size:8px;letter-spacing:2px}.scroll span{margin-left:25px;font-size:19px}.planning,.contact{padding:90px 6%;max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:10%}.planning{border-top:1px solid var(--line)}.section-heading>p:last-child,.contact>div>p:not(.eyebrow){max-width:370px;color:var(--muted);font-size:12px;margin-top:25px}.steps details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:22px;padding:21px 0;cursor:pointer;font-size:13px}summary::-webkit-details-marker{display:none}.number{font-family:Georgia,serif;font-size:15px;color:var(--gold)}.plus{margin-left:auto;font-size:22px;font-weight:400}details[open] .plus{transform:rotate(45deg)}details p{font-size:12px;color:var(--muted);padding-left:40px;margin:0 0 25px}.text-link{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--gold);width:fit-content;font-size:11px;padding:8px 0;margin-top:28px}.contact{background:#eee6da;max-width:none;padding-left:max(6%,calc((100vw - 1267px)/2));padding-right:max(6%,calc((100vw - 1267px)/2))}.contact .button{margin-top:20px}.contact small{display:block;font-size:9px;margin-top:12px;color:var(--muted)}.address{border-left:1px solid #d0c2b1;padding-left:60px}address{font-style:normal;font-size:13px;line-height:2;margin-top:23px}.phone{border-top:1px solid #d0c2b1;margin-top:35px;padding-top:23px}.phone span{display:block;font-size:8px;letter-spacing:2px}.phone a{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px}.vip{background:#302a25;color:#f5efe7;padding:70px 6%;display:grid;grid-template-columns:1fr 1fr;gap:10%}.vip .eyebrow{color:#c5b299}.vip em{color:#d2b484}.vip>div>p:not(.eyebrow){font-size:12px;max-width:380px;margin:0 0 25px;color:#ded3c7}.social{display:flex;gap:28px;font-size:10px;margin-top:26px;color:#d9c8b0}footer{padding:40px 6% 90px;display:flex;align-items:center;justify-content:space-between;gap:24px}footer .wordmark{font-size:17px}footer p{font-size:9px;color:var(--muted)}footer>a{font-size:8px;letter-spacing:1px}.floating{position:fixed;bottom:22px;right:25px;z-index:5;background:#302a25;color:#fff;border:1px solid #b19772;padding:12px 18px;display:flex;gap:10px;align-items:center;border-radius:40px;box-shadow:0 4px 18px #302a2526;font-size:11px}.floating svg{width:23px;height:23px}.skip{position:fixed;left:10px;top:-80px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}@media(min-width:1500px){.vip{padding-left:calc((100vw - 1267px)/2);padding-right:calc((100vw - 1267px)/2)}}@media(max-width:800px){header{padding:22px 6%}.wordmark{font-size:18px;letter-spacing:2px}nav>a:not(.nav-cta){display:none}nav{font-size:9px}.hero{padding-top:42px;gap:32px;grid-template-columns:1fr}.hero-copy{max-width:550px}h1{font-size:57px}.intro{font-size:12px}.brand-panel{min-height:0;max-width:460px;width:100%;margin:0 auto 15px;padding:30px 25px;border-radius:160px 160px 3px 3px}.brand-panel img{max-height:280px;object-fit:contain}.brand-note{margin-top:0}.brand-note p{font-size:30px}.planning,.contact,.vip{grid-template-columns:1fr;gap:32px;padding:55px 6%}.address{border-left:0;border-top:1px solid #d0c2b1;padding:30px 0 0}h2{font-size:43px}footer{flex-wrap:wrap;padding-top:30px}.social{gap:20px}.floating{bottom:15px;right:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.portrait{padding:0;height:560px;background:#dfceb8}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 35%;max-height:none}.portrait .brand-note{position:absolute;bottom:0;left:0;right:0;padding:40px 20px 20px;background:linear-gradient(transparent,#302a25da);color:#fff}.portrait .brand-note em{color:#ead9bd}.results{padding:70px 6%;border-top:1px solid var(--line)}.gallery-empty{margin-top:35px;padding:28px 32px;background:#eee6da;display:flex;align-items:center;gap:28px}.gallery-empty h3{font-size:30px}.gallery-empty p{font-size:12px;color:var(--muted);margin-bottom:0}.gallery-symbol{font-size:42px;color:var(--gold)}.footer-logo{width:100px;height:auto;border-radius:3px}@media(max-width:800px){.portrait{height:470px;padding:0}.portrait img{max-height:none}.results{padding:50px 6%}.gallery-empty{padding:22px;gap:15px}.gallery-empty h3{font-size:26px}}

header{padding-top:14px;padding-bottom:14px}.brand-link{display:flex;align-items:center;flex-shrink:0}.header-logo{display:block;width:132px;height:auto;max-height:88px;object-fit:contain}.footer-logo{width:80px;background:transparent;border-radius:0}@media(max-width:800px){.header-logo{width:110px;max-height:74px}header{gap:12px}.portrait{box-shadow:8px 8px 0 #e9dfd0}.floating span{display:none}.floating{padding:12px}}

.purpose{display:grid;grid-template-columns:.75fr 1.25fr;gap:9%;padding:70px 9%;background:#efe8de;align-items:center}.purpose>img{width:100%;height:430px;object-fit:cover;object-position:center 28%;border-radius:3px}.purpose-statement{font-family:"Cormorant Garamond",Georgia,serif;font-size:29px;line-height:1.4;margin:26px 0 20px}.purpose-values{font-size:12px;color:var(--muted);max-width:470px}.signature{font-family:"Cormorant Garamond",Georgia,serif;font-size:27px;font-style:italic;color:#876c48;margin-top:27px}.signature span{display:block;font-family:Montserrat,Arial,sans-serif;font-style:normal;font-size:8px;letter-spacing:1.4px;color:var(--muted);margin-top:6px}nav{gap:22px}@media(max-width:1000px){nav{gap:15px;font-size:9px}}@media(max-width:800px){.purpose{grid-template-columns:1fr;padding:50px 6%;gap:30px}.purpose>img{height:350px;max-width:400px}.purpose-statement{font-size:26px}}

/* Extend the portrait beyond its frame to hide the source screenshot border. */
.portrait>img{position:absolute;inset:-4%;width:108%;height:108%;max-width:none;max-height:none;object-fit:cover;object-position:center 35%;flex-shrink:0}.portrait .brand-note{z-index:1}

