:root {
  color-scheme: light; --paper:#fdfbf7; --paper-deep:#f6f0e4; --ink:#332f2b;
  --muted:#6f665c; --gold:#a97b23; --gold-bright:#b8862b; --gold-text:#765214; --gold-button:#765214; --line:#ece2cd; --white:#fffefa;
  --serif:"Cormorant Garamond","Palatino Linotype",Georgia,serif; --sans:Lato,"Avenir Next",Avenir,Arial,sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}
a{color:inherit}.skip-link{position:absolute;top:-4rem;left:1rem;z-index:10;padding:.7rem 1rem;background:var(--ink);color:white}.skip-link:focus{top:1rem}
.site-header{min-height:90px;padding:12px clamp(20px,6vw,92px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-size:.88rem;font-weight:700;letter-spacing:.17em}.brand img{display:block;object-fit:contain}
.brand small{display:block;margin-top:2px;color:var(--gold-text);font-size:.59rem;font-weight:500;letter-spacing:.12em}.header-link{color:var(--gold-text);font-size:.76rem;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}
.header-link:hover,.header-link:focus-visible{color:var(--ink);text-decoration:underline;text-underline-offset:5px}
.hero{min-height:635px;position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden;padding:42px clamp(22px,9vw,142px) 78px;background:linear-gradient(110deg,#f8f2e5 0%,var(--paper) 54%,#f2e6cc 100%)}
.hero-copy{position:relative;z-index:2;max-width:530px;padding:20px 0 34px}.eyebrow{margin:0 0 14px;color:var(--gold-text);font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500}h1{margin-bottom:18px;font-size:clamp(3.8rem,7vw,6.5rem);letter-spacing:-.035em;line-height:.84}h1 em{color:var(--gold);font-weight:400}
.hero-intro{max-width:410px;margin-bottom:24px;color:#62594f;font-size:1.05rem}.hero-facts{display:flex;flex-wrap:wrap;gap:10px 25px;margin:0 0 28px;color:var(--muted);font-size:.88rem;letter-spacing:.035em}.hero-facts strong{color:var(--ink);font-family:var(--serif);font-size:1.75rem;font-weight:500}
.button{min-height:48px;display:inline-flex;justify-content:center;align-items:center;padding:12px 24px;border:1px solid var(--gold-bright);border-radius:999px;font:700 .73rem var(--sans);letter-spacing:.11em;text-decoration:none;text-transform:uppercase;transition:background .2s ease,color .2s ease,transform .2s ease}
.button-primary{background:var(--gold-button);border-color:var(--gold-button);color:white}.button-primary:hover,.button-primary:focus-visible{transform:translateY(-2px);background:#926819;border-color:#926819}
.hero-art{position:absolute;width:52%;height:100%;right:0;top:0;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 70%),linear-gradient(155deg,#eeddbb 0%,#f5ebd7 43%,#d9c08c 44%,#b9944d 47%,#e3cfaa 48%,#e9dcc2 100%)}
.sun-disc{position:absolute;top:13%;left:39%;width:min(29vw,320px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 38%,#fff8e7 0,#f4e6c9 45%,#d4b26c 100%);opacity:.9;box-shadow:0 0 80px rgba(255,250,230,.56)}
.waterline{position:absolute;left:-10%;width:120%;height:26%;border-top:1px solid rgba(128,96,39,.25);border-radius:50%;transform:rotate(-7deg)}.waterline-one{top:59%}.waterline-two{top:67%;left:7%;transform:rotate(5deg)}.waterline-three{top:76%;left:-2%;transform:rotate(-3deg)}
.art-caption{position:absolute;right:10%;bottom:8%;color:rgba(51,47,43,.65);font-size:.62rem;letter-spacing:.21em}.hero-note{position:absolute;bottom:0;left:0;width:100%;padding:14px 20px;background:rgba(255,254,250,.72);color:var(--muted);font-size:.74rem;letter-spacing:.1em;text-align:center;text-transform:uppercase}.note-mark{padding-right:8px;color:var(--gold);font-size:1.1rem}
.section-wrap{padding:94px clamp(22px,8vw,120px)}.intro{max-width:980px;margin:0 auto;text-align:center}.intro h2,.section-heading h2,.details-copy h2{margin-bottom:20px;font-size:clamp(2.5rem,4vw,4rem);letter-spacing:-.02em;line-height:.98}.intro-lede{max-width:650px;margin:0 auto;color:var(--muted);font:1.25rem/1.6 var(--serif)}
.ornament{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:28px;color:var(--gold)}.ornament span{width:55px;height:1px;background:var(--line)}
.program{padding-top:8px}.section-heading{margin-bottom:34px;text-align:center}.section-heading .eyebrow{margin-bottom:10px}.program-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;max-width:1150px;margin:auto}
.program-card{min-height:208px;padding:25px 19px;border:1px solid var(--line);background:var(--white);text-align:center}.card-number{color:var(--gold-text);font-size:.68rem;letter-spacing:.16em}.program-card h3{margin:14px 0 8px;font-size:1.55rem;line-height:1.08}.program-card p{margin:0;color:var(--muted);font-size:.83rem}
.details{padding:88px clamp(22px,8vw,120px);background:var(--paper-deep)}.details-inner{max-width:1120px;display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.82fr);gap:clamp(40px,8vw,110px);margin:auto;align-items:start}
.details-copy{padding-top:10px}.details-copy>p:not(.eyebrow):not(.payment-note){max-width:510px;color:var(--muted)}.included-list{display:grid;grid-template-columns:1fr 1fr;gap:9px 20px;padding:0;margin:25px 0 28px;list-style:none}.included-list li::before{content:"✧";padding-right:9px;color:var(--gold)}
.price-card{max-width:465px;padding:20px 23px;border:1px solid #dfd0ae;background:rgba(255,254,250,.78)}.price-label,.price-detail{display:block;color:var(--muted);font-size:.82rem}.price{display:block;margin:5px 0 6px;font:500 2.6rem/1.1 var(--serif)}.price small{color:var(--gold-text);font:700 .7rem var(--sans);letter-spacing:.12em}.price-detail{font-size:.76rem}
.payment-note{max-width:480px;margin:16px 0 0;color:var(--muted);font-size:.78rem}.form-card{padding:clamp(25px,4vw,42px);border:1px solid var(--line);background:var(--white);box-shadow:0 15px 50px rgba(73,57,29,.06)}.form-card h2{margin-bottom:10px;font:500 2.3rem/1 var(--serif)}.form-intro,.privacy-note,.payment-link-note{color:var(--muted);font-size:.82rem}
.closed-banner{margin:18px 0;padding:13px 15px;border-left:3px solid var(--gold);background:#f7f0df;color:#55482e;font-size:.82rem}fieldset{min-width:0;padding:0;margin:0;border:0}fieldset:disabled{opacity:.6}
form label:not(.consent-label):not(.honeypot){display:block;margin:17px 0 6px;font-size:.77rem;font-weight:700}input[type=text],input[type=email]{width:100%;min-height:45px;padding:10px 12px;border:1px solid #d9d0bf;border-radius:2px;background:#fff;color:var(--ink);font:inherit}input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.consent-label{display:flex;align-items:flex-start;gap:10px;margin:19px 0;color:var(--muted);font-size:.75rem;line-height:1.5}.consent-label input{margin-top:4px;accent-color:var(--gold)}.submit-button{width:100%;cursor:pointer}.submit-button:disabled{cursor:progress;opacity:.65}
.form-status{min-height:1.5em;margin:14px 0 4px;color:var(--ink);font-size:.82rem}.form-status[data-state=error]{color:#8c2e21}.form-status[data-state=success]{color:#355e3b}.privacy-note{margin:15px 0 0;font-size:.73rem}.payment-link-note{margin:10px 0 0;font-size:.73rem}
.honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.site-footer{min-height:112px;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:23px clamp(22px,7vw,105px);background:#332f2b;color:#fdfbf7}
.footer-brand{color:#fdfbf7;font-size:.72rem}.footer-brand img{filter:brightness(1.1)}.footer-brand small{color:#d5b265}.site-footer p{margin:0;color:#e0d8c9;font-size:.76rem;letter-spacing:.05em}
@media(max-width:900px){.hero{min-height:590px;grid-template-columns:1fr}.hero-copy{max-width:58%}.hero-art{width:55%;opacity:.74}.program-grid{grid-template-columns:repeat(3,1fr)}.details-inner{grid-template-columns:1fr 1fr;gap:34px}}
@media(max-width:650px){.site-header{min-height:74px;padding-inline:18px}.brand img{width:54px;height:54px}.header-link{font-size:.63rem}.hero{min-height:730px;align-items:start;padding:66px 24px 65px}.hero-copy{max-width:100%;padding-top:0}.hero-art{width:100%;height:52%;top:auto;bottom:43px;opacity:.52}.sun-disc{top:4%;left:38%;width:55vw}.hero-note{padding:12px;font-size:.63rem}.section-wrap{padding:68px 22px}.intro h2,.section-heading h2,.details-copy h2{font-size:2.7rem}.program{padding-top:0}.program-grid{grid-template-columns:1fr 1fr;gap:9px}.program-card{min-height:175px;padding:20px 12px}.program-card h3{font-size:1.38rem}.details{padding:65px 20px}.details-inner{grid-template-columns:1fr;gap:34px}.form-card{padding:25px 21px}.site-footer{align-items:flex-start;flex-direction:column;padding-block:24px}.site-footer p{padding-left:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}
