@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Oswald:wght@400;500;600&display=swap');
:root{--ink:#200d10;--wine:#681727;--red:#9d2637;--milk:#f8f0e7;--gold:#d8aa83;--muted:#c7aaa8;--line:rgba(216,170,131,.25)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--milk);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--gold);outline-offset:7px}header{height:100px;display:flex;align-items:center;justify-content:space-between;max-width:1440px;margin:auto;padding:20px 5%;border-bottom:1px solid var(--line);position:relative;z-index:2}.brand{display:block;width:138px}.brand img{display:block;width:100%;max-height:58px;object-fit:contain}nav{display:flex;gap:34px;font-size:13px;font-weight:600}nav a:hover,.text-button:hover{color:var(--gold)}.nav-contact{font-size:13px;border:1px solid var(--line);border-radius:30px;padding:10px 20px}.hero{max-width:1440px;min-height:730px;margin:auto;position:relative;display:grid;grid-template-columns:1.1fr 1fr;padding:85px 5% 60px;background:radial-gradient(ellipse at 80% 40%,#791d2c 0%,#3b111a 39%,transparent 68%);overflow:hidden}.hero-copy{z-index:1;position:relative}.eyebrow{font-size:10px;letter-spacing:.22em;font-weight:700;color:var(--gold);margin:0 0 25px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Oswald,'Arial Narrow',sans-serif;font-weight:400;line-height:1.1;letter-spacing:-.025em}h1{font-size:clamp(52px,6.7vw,98px);margin-bottom:30px}h1 span{color:var(--gold)}h2{font-size:clamp(38px,4.4vw,62px);margin-bottom:28px}h2 em{font-style:normal;color:var(--gold)}h3{line-height:1.3;font-size:24px;font-weight:600}.lead{font-size:21px;line-height:1.55;max-width:470px;margin-bottom:20px}.intro{font-size:14px;color:var(--muted);max-width:415px}.actions{display:flex;align-items:center;gap:24px;margin-top:35px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(110deg,#dbad85,#f1d9bf 55%,#d2a079);color:#37141a;padding:16px 25px;border-radius:4px;font-size:13px;font-weight:800;transition:transform .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:22px;font-weight:400}.text-button{font-size:13px;font-weight:600}.hero-note{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:11px;margin-top:50px}.line{display:block;width:40px;height:1px;background:var(--gold)}.portrait{position:absolute;right:2%;bottom:0;width:48%;height:100%;overflow:hidden}.portrait img{position:absolute;z-index:1;height:940px;width:auto;max-width:none;top:50px;left:50%;transform:translateX(-50%);filter:drop-shadow(-15px 10px 35px #24070d)}.portrait:after{content:'';position:absolute;z-index:2;bottom:0;height:25%;width:100%;background:linear-gradient(transparent,var(--ink))}.halo{position:absolute;top:140px;left:0;width:100%;aspect-ratio:1;border-radius:50%;border:1px solid #dfaf8540;box-shadow:0 0 90px #b9463d20,inset 0 0 100px #b9463d15}.portrait-type{position:absolute;top:60px;right:0;font-family:Oswald,sans-serif;font-size:150px;letter-spacing:.03em;color:#d8aa830c;writing-mode:vertical-rl}.portrait-caption{position:absolute;z-index:3;bottom:55px;right:25px;padding:10px 20px;border-left:1px solid var(--gold);font-size:17px}.portrait-caption span{display:block;font-size:10px;letter-spacing:.1em;color:var(--muted)}.directions-strip{display:flex;justify-content:center;gap:35px;padding:24px 4%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#351219;color:#dfc2aa;font-size:13px}.directions-strip i{font-style:normal;font-size:10px}.section{padding:90px 6%;max-width:1440px;margin:auto}.about{display:grid;grid-template-columns:1fr 1fr;gap:20px 100px}.about>.eyebrow{grid-column:1/-1}.about-copy{padding-top:8px;max-width:470px;font-size:16px;color:#d4bbb5}.about-copy .text-button{color:var(--gold)}.programs{background:var(--milk);color:var(--ink)}.programs .eyebrow{color:var(--wine)}.programs h2 em{color:var(--wine)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.section-heading h2{margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{display:flex;flex-direction:column;min-height:295px;padding:32px;border:1px solid var(--line);position:relative;transition:transform .2s,background .2s}.programs .card{border-color:#cdbeb1;background:#fffcf6}.card:hover{transform:translateY(-5px)}.card .eyebrow{letter-spacing:.12em;font-size:9px;margin-bottom:28px}.card h3{font-family:Oswald,sans-serif;font-size:34px;font-weight:400}.card p{font-size:13px;opacity:.8;max-width:300px}.card-link{font-size:12px;font-weight:800;margin-top:auto;padding-top:18px}.programs .card:last-child{background:radial-gradient(at top right,#8a2937,#46121f);color:var(--milk)}.programs .card:last-child .eyebrow{color:var(--gold)}.service-section{display:grid;grid-template-columns:1fr 1fr;gap:80px}.muted{color:var(--muted);max-width:380px;font-size:14px}.service-list a{display:block;position:relative;padding:22px 40px 22px 0;border-bottom:1px solid var(--line)}.service-list a:first-child{padding-top:0}.service-list h3{font-size:22px;margin-bottom:8px}.service-list p{font-size:13px;color:var(--muted);margin:0}.service-list span{position:absolute;right:5px;top:25px;color:var(--gold);font-size:25px}.tour{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px;background:radial-gradient(ellipse at left,#79222f,#391019 70%)}.tour p:not(.eyebrow){max-width:420px;color:#d4bbb5}.tour-art{aspect-ratio:1.15;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);position:relative;background:radial-gradient(ellipse,#ae39312b,transparent 68%)}.tour-art:before{content:'';position:absolute;width:75%;height:75%;border:1px solid #d8aa8325;border-radius:50%}.tour-art span{font-family:serif;font-size:140px;color:var(--gold);position:relative;letter-spacing:.1em}.tour-art p{font-size:8px;letter-spacing:.2em}.gift{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;background:var(--milk);color:var(--ink)}.gift h2 em,.gift .eyebrow{color:var(--wine)}.gift p{max-width:430px}.gift .button{background:var(--wine);color:var(--milk)}.final-cta{text-align:center;background:radial-gradient(ellipse at center,#5f1925,transparent 68%)}.final-cta p:not(.eyebrow){color:var(--muted);font-size:14px}footer{border-top:1px solid var(--line);padding:50px 6%;font-size:12px;color:var(--muted);max-width:1440px;margin:auto}footer .footer-brand{font-size:22px;letter-spacing:.12em;color:var(--gold);font-weight:700}footer div{display:flex;flex-wrap:wrap;gap:25px;margin:25px 0}footer small{font-size:10px}.inner-hero{padding:70px 6% 60px;max-width:1440px;margin:auto;background:radial-gradient(ellipse at right,#782130,transparent 70%)}.inner-hero h1{max-width:1000px;font-size:clamp(50px,7vw,90px)}.inner-hero .lead{max-width:650px}.back{display:block;font-size:12px;color:var(--muted);margin-bottom:55px}.detail{border-top:1px solid var(--line)}.detail p,.detail ul{max-width:730px;color:#dbc9c1}.detail li{margin:14px 0}.skip{position:absolute;left:15px;top:-100px;background:var(--milk);color:var(--ink);z-index:20;padding:10px}.skip:focus{top:10px}@media(min-width:1500px){body{background:#1a090d}.hero{min-height:770px}}@media(max-width:1000px){nav{gap:17px}.hero{padding-top:60px;min-height:670px}.portrait img{height:820px;top:80px}.hero h1{font-size:70px}.lead{font-size:18px;max-width:350px}.intro{max-width:310px}.actions{flex-direction:column;align-items:flex-start;gap:18px}.portrait-caption{right:0;font-size:15px}.section{padding:65px 5%}.about,.service-section,.tour,.gift{gap:40px}.cards{gap:15px}.card{padding:24px}.directions-strip{gap:20px}}@media(max-width:650px){header{height:auto;min-height:85px;flex-wrap:wrap;padding:18px 5%;gap:20px}.brand{width:110px}.nav-contact{font-size:11px;padding:7px 12px}nav{order:3;width:100%;justify-content:space-between;gap:8px;font-size:11px}.hero{display:block;padding:45px 6% 0;min-height:0}.hero h1{font-size:clamp(48px,12vw,70px);line-height:1.08}.eyebrow{font-size:8px;letter-spacing:.16em;margin-bottom:23px}.hero .lead{font-size:18px;max-width:100%}.intro{max-width:100%;font-size:13px}.actions{gap:18px;margin-top:25px}.hero-note{margin-top:28px;font-size:10px}.portrait{position:relative;height:450px;width:100%;right:auto;margin-top:10px}.portrait img{height:710px;top:20px}.portrait-type{font-size:100px;top:20px}.halo{top:45px}.portrait-caption{bottom:28px;right:0;background:#260b1399;font-size:14px}.portrait-caption span{font-size:9px}.directions-strip{gap:10px;flex-wrap:wrap;font-size:10px;padding:18px 5%}.section{padding:55px 6%}.about,.service-section,.tour,.gift{grid-template-columns:1fr;gap:20px}.section-heading{display:block}.section-heading .text-button{display:inline-block;margin-top:20px}.cards{grid-template-columns:1fr;gap:18px}.card{min-height:240px;padding:27px}.card h3{font-size:32px}.service-list{margin-top:10px}.tour-art{aspect-ratio:1.5;margin-bottom:18px}.tour-art span{font-size:110px}.tour{gap:20px}.inner-hero{padding:40px 6%}.inner-hero h1{font-size:52px;overflow-wrap:break-word}.back{margin-bottom:35px}footer div{gap:15px 22px}.final-cta h2{font-size:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
