:root{--ink:#171310;--ivory:#f7f2e9;--paper:#fffdf8;--gold:#c3a15f;--gold-dark:#96733d;--taupe:#b7aa9d;--line:#ded3c5;--muted:#6f665f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.7}img{display:block;width:100%;height:auto}h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.1;margin:0 0 20px}h1{font-size:clamp(3.2rem,7vw,6.8rem);letter-spacing:-.05em}h1 em{display:block;color:var(--gold-dark);font-weight:600}h2{font-size:clamp(2.35rem,4.5vw,4.35rem);letter-spacing:-.035em}h3{font-size:1.55rem}p{margin:0 0 22px}.announcement{background:var(--ink);color:#fff;text-align:center;padding:10px 20px;font-size:.82rem;letter-spacing:.035em}.site-header{height:94px;padding:0 clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(255,253,248,.96);position:sticky;top:0;z-index:20}.brand{text-decoration:none;color:var(--ink);display:flex;flex-direction:column;text-transform:uppercase;line-height:1.35;letter-spacing:.13em;font-size:.72rem}.brand strong{font-family:'Playfair Display',serif;text-transform:none;letter-spacing:.01em;color:var(--gold-dark);font-size:.85rem}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:var(--ink);color:white;padding:17px 26px;border:1px solid var(--ink);font-size:.9rem;font-weight:700;letter-spacing:.025em;text-align:center;transition:.25s ease}.button:hover{background:var(--gold-dark);border-color:var(--gold-dark);transform:translateY(-2px)}.button-small{padding:11px 19px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.73rem;font-weight:700;color:var(--gold-dark);margin-bottom:18px}.hero{min-height:780px;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);align-items:center;gap:6vw;padding:70px clamp(22px,6vw,100px) 85px;background:linear-gradient(135deg,var(--ivory),#fff 65%);overflow:hidden}.hero-copy{max-width:760px}.hero-line{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:600}.hero-text{max-width:680px;font-size:1.12rem;color:#493f38}.hero-details{display:flex;gap:12px 28px;flex-wrap:wrap;margin:28px 0;color:var(--muted);font-weight:600;font-size:.9rem}.hero-details span:before{content:'◆';color:var(--gold);font-size:.65rem;margin-right:10px}.microcopy{font-size:.78rem;color:var(--muted);margin-top:12px}.hero-image-wrap{position:relative;max-width:590px;justify-self:end}.hero-image-wrap img{position:relative;z-index:2;aspect-ratio:4/5;object-fit:cover;object-position:center 18%}.gold-frame{position:absolute;width:100%;height:100%;border:2px solid var(--gold);top:26px;left:-26px;z-index:1}.hero-seal{position:absolute;z-index:3;bottom:-30px;left:-54px;width:116px;height:116px;border-radius:50%;background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.75rem;letter-spacing:.18em;border:6px solid var(--paper)}.hero-seal span{font-family:'Playfair Display',serif;color:var(--gold);font-size:2.25rem;line-height:1}.section-narrow{max-width:970px;margin:auto;padding:120px 28px;text-align:center}.intro p:last-child{max-width:790px;margin:0 auto;color:var(--muted);font-size:1.07rem}.starting-points{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(500px,1.2fr);background:var(--ink);color:white}.portrait-panel{position:relative;min-height:860px}.portrait-panel img{height:100%;object-fit:cover;object-position:center top;filter:saturate(.85)}.portrait-caption{position:absolute;left:0;right:0;bottom:0;padding:34px 40px;background:linear-gradient(transparent,rgba(23,19,16,.95));font-family:'Playfair Display',serif;font-size:1.5rem}.points-content{padding:100px clamp(28px,7vw,100px)}.points-content .eyebrow{color:var(--gold)}.point-card{display:grid;grid-template-columns:62px 1fr;gap:20px;padding:30px 0;border-top:1px solid rgba(255,255,255,.18)}.point-number{font-family:'Playfair Display',serif;color:var(--gold);font-size:1.5rem}.point-card h3{margin-bottom:10px}.point-card p{color:#c9c1ba;margin:0}.section-wide{max-width:1320px;margin:auto;padding:120px clamp(22px,4vw,56px)}.section-heading{max-width:800px;margin-bottom:55px}.section-heading>p:last-child{color:var(--muted)}.month-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.month-card{padding:42px 34px;border:1px solid var(--line);background:var(--paper)}.month-card.featured{background:var(--ivory);border-top:5px solid var(--gold)}.month{color:var(--gold-dark);font-weight:700;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem}.month-card ul,.pricing-card ul{padding:0;margin:26px 0 0;list-style:none}.month-card li,.pricing-card li{padding:10px 0 10px 21px;border-bottom:1px solid var(--line);position:relative}.month-card li:before,.pricing-card li:before{content:'◆';position:absolute;left:0;color:var(--gold);font-size:.55rem;top:15px}.how-it-works{display:grid;grid-template-columns:1fr 1.1fr;min-height:780px;background:var(--ivory)}.laptop-image img{height:100%;object-fit:cover;object-position:center top}.how-copy{padding:100px clamp(28px,7vw,110px)}.feature-row{display:grid;grid-template-columns:100px 1fr;gap:24px;padding:27px 0;border-top:1px solid var(--line)}.feature-row>span{text-transform:uppercase;font-size:.72rem;letter-spacing:.12em;color:var(--gold-dark);font-weight:700}.feature-row h3{margin-bottom:8px}.feature-row p{color:var(--muted);margin:0}.schedule{text-align:center}.schedule>p:nth-of-type(2){color:var(--muted)}.dates{display:grid;grid-template-columns:repeat(6,1fr);margin-top:45px;border:1px solid var(--line)}.dates span{padding:25px 10px;border-right:1px solid var(--line);font-family:'Playfair Display',serif;font-size:1.2rem}.dates span:last-child{border:0}.included{background:var(--ivory);max-width:none}.included>.section-heading,.included-grid,.included .center{max-width:1210px;margin-left:auto;margin-right:auto}.included-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.included-grid div{background:var(--paper);padding:28px 30px;font-weight:600}.included-grid div:before{content:'✓';color:var(--gold-dark);margin-right:12px}.center{text-align:center;margin-top:45px}.mission{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:center;padding:120px clamp(28px,8vw,140px);background:var(--ink);color:#fff}.mission-copy>p:not(.eyebrow){color:#cfc6be}.mission blockquote{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.5vw,3.2rem);color:var(--gold);margin:40px 0 0}.mission-accent{border:1px solid rgba(195,161,95,.5);padding:50px;background:#211c18}.mission-accent p{color:var(--taupe);font-size:.9rem}.mission-accent strong{font-family:'Playfair Display',serif;font-size:1.9rem;line-height:1.35}.pricing{padding:120px 24px;background:linear-gradient(135deg,#eee4d8,var(--paper))}.pricing-card{max-width:720px;margin:auto;text-align:center;padding:64px clamp(25px,6vw,74px);background:var(--paper);border:1px solid var(--gold);box-shadow:0 30px 80px rgba(49,37,26,.12)}.price{display:flex;justify-content:center;align-items:flex-start;line-height:1;margin:26px 0 20px}.price span{font-family:'Playfair Display',serif;font-size:2rem;margin-top:12px}.price strong{font-family:'Playfair Display',serif;font-size:6.2rem}.pricing-card ul{text-align:left;margin:35px 0}.pricing-card .button{width:100%}.faq{text-align:left}.faq>h2{text-align:center}.faq>.eyebrow{text-align:center}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-family:'Playfair Display',serif;font-size:1.25rem;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between}.faq summary:after{content:'+';color:var(--gold-dark);font-family:'DM Sans',sans-serif}.faq details[open] summary:after{content:'−'}.faq details p{color:var(--muted);padding:18px 35px 0 0;margin:0}.final-cta{display:grid;grid-template-columns:.65fr 1.35fr;min-height:620px;background:var(--ivory)}.final-image img{height:100%;object-fit:cover;object-position:center 18%}.final-copy{padding:100px clamp(28px,8vw,130px);align-self:center}.final-copy p:not(.eyebrow){color:var(--muted);max-width:680px}footer{background:var(--ink);color:#fff;padding:36px clamp(22px,5vw,72px);display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap;font-size:.8rem;letter-spacing:.05em}footer span{color:var(--taupe)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:980px){.hero{grid-template-columns:1fr;padding-top:55px}.hero-image-wrap{justify-self:center;max-width:520px}.starting-points,.how-it-works,.mission,.final-cta{grid-template-columns:1fr}.portrait-panel{min-height:720px}.laptop-image{max-height:650px}.month-grid{grid-template-columns:1fr}.dates{grid-template-columns:repeat(3,1fr)}.dates span{border-bottom:1px solid var(--line)}.included-grid{grid-template-columns:1fr 1fr}.final-image{max-height:650px}}@media(max-width:620px){body{font-size:16px}.announcement{font-size:.7rem}.site-header{height:76px}.brand span{display:none}.button-small{font-size:.75rem;padding:9px 13px}.hero{grid-template-columns:1fr;padding:46px 20px 70px;min-height:auto}.hero-image-wrap{margin:20px 18px 0}.hero-seal{width:90px;height:90px;left:-20px;bottom:-20px}.gold-frame{left:-12px;top:12px}.section-narrow,.section-wide{padding:82px 20px}.starting-points{grid-template-columns:1fr}.portrait-panel{min-height:570px}.points-content,.how-copy{padding:75px 22px}.point-card{grid-template-columns:42px 1fr}.feature-row{grid-template-columns:1fr;gap:4px}.how-it-works{display:flex;flex-direction:column-reverse}.laptop-image{max-height:520px}.dates{grid-template-columns:repeat(2,1fr)}.included-grid{grid-template-columns:1fr}.mission{padding:82px 22px}.pricing{padding:80px 16px}.pricing-card{padding:48px 22px}.price strong{font-size:5rem}.final-copy{padding:75px 22px}footer{flex-direction:column;align-items:center;text-align:center}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
