@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Libre+Caslon+Display&display=swap');
:root{--wine:#501d2b;--wine-dark:#36131d;--ink:#302329;--paper:#faf8f4;--gold:#ffe3a0;--muted:#6f6266;--line:#ddd5d5;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a95618;outline-offset:5px}.skip{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.header{max-width:1440px;margin:auto;padding:24px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{text-decoration:none;font-family:var(--serif);font-size:34px;line-height:1.1;white-space:nowrap}.brand span:not(.brand-dot){font-size:23px;font-style:italic}.brand-dot{color:#a84930}.header nav{display:flex;gap:30px;font-size:14px}.header nav a{text-decoration:none}.header nav a:hover{text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--wine);color:white;border:1px solid var(--wine);border-radius:6px;text-decoration:none;padding:14px 24px;font-weight:550;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:var(--wine-dark);transform:translateY(-1px)}.button.small{padding:10px 18px;font-size:14px;gap:20px}.button.gold{background:var(--gold);border-color:var(--gold);color:var(--wine-dark)}.button.gold:hover{background:#ffda7c}.button.outline{background:transparent;color:var(--wine);border-color:#c4afb6}.button.outline:hover{background:#f4eced}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.hero{max-width:1440px;margin:auto;background:var(--wine);display:grid;grid-template-columns:1.06fr 1fr;color:#fff9f0;min-height:660px}.hero-copy{padding:64px 8% 60px 10%}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:650;margin:0 0 24px}.hero .eyebrow{color:#edc6b0}h1,h2,h3,p{margin-top:0}h1{font-family:var(--serif);font-weight:400;font-size:clamp(56px,5.45vw,82px);line-height:1.04;letter-spacing:-1.2px;margin-bottom:24px}em{font-weight:400}h1 em{color:var(--gold)}.hero-description{max-width:390px;color:#ecdadc;line-height:1.75;margin-bottom:28px}.hero-note{font-size:13px;margin:17px 0 0;color:#e1c7cb}.hero-photo{position:relative;min-height:100%;overflow:hidden;background:#362124}.hero-photo img{display:block;object-fit:cover;width:100%;height:100%;position:absolute;inset:0;object-position:center}.photo-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#20120ca8);padding:60px 28px 25px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px;color:#fff7ea}.intro-strip{display:flex;gap:20px;justify-content:space-around;padding:23px 7%;border-bottom:1px solid var(--line);font-size:14px}.intro-strip span:before{content:'✦';color:#925c3c;font-size:12px;margin-right:12px}.section{max-width:1280px;margin:auto;padding:95px 5%}.section-heading{display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:12%;margin-bottom:42px}h2{font:400 clamp(38px,4vw,56px)/1.08 var(--serif);letter-spacing:-.6px;margin-bottom:0}.section .eyebrow{color:#805362;margin-bottom:18px}.section-heading>p{color:var(--muted);max-width:380px;margin:0 0 5px}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.price-card{border-top:1px solid #c9b9be;padding:27px 25px 20px 0}.card-number{display:block;font-size:12px;letter-spacing:1px;color:#966d7b;margin-bottom:22px}.price-card h3{font:400 30px/1.2 var(--serif);margin-bottom:14px}.price-card p{color:var(--muted);max-width:300px;min-height:80px}.price{display:flex;align-items:baseline;gap:12px}.price strong{font-family:var(--serif);font-weight:400;font-size:48px;line-height:1.2}.price span{font-size:14px;color:var(--muted)}.pricing-note{font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:24px;margin:24px 0 0;max-width:950px}.finder-section{background:#eddfdf;display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;padding:85px max(6%,calc((100vw - 1152px)/2));align-items:start}.finder-intro{padding-top:15px}.finder-intro h2{font-size:clamp(52px,5vw,72px);color:var(--wine);margin-bottom:28px}.finder-intro>p:not(.eyebrow){max-width:350px}.finder-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:32px;font-size:13px;font-weight:600;color:var(--wine)}.finder-intro .quiet{font-size:13px;color:var(--muted);margin-top:14px}.finder-card{background:#fffdf9;padding:32px;border:1px solid #e0cbcf;border-radius:10px;box-shadow:0 10px 35px #50203006;min-height:510px}.step-top{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;color:#856171;margin-bottom:14px}.progress{display:flex;gap:5px;margin-bottom:30px}.progress i{height:3px;flex:1;background:#e6dbdd}.progress i.done{background:var(--wine)}.finder-card h3{font:400 32px/1.18 var(--serif);margin-bottom:10px;color:var(--wine)}.hint{font-size:14px;color:var(--muted);margin-bottom:24px}.field{margin-bottom:22px}.field label,.field legend{display:block;margin-bottom:8px;font-size:14px;font-weight:600}.field select{width:100%;color:var(--ink);background:#fffdf9;border:1px solid #cabcbe;border-radius:5px;padding:12px 10px;min-height:49px}.choices{border:0;margin:0;padding:0;min-width:0}.choice{display:flex!important;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:5px;padding:13px 15px;margin-bottom:9px!important;font-size:15px!important;font-weight:450!important;cursor:pointer}.choice:has(input:checked){border-color:var(--wine);background:#f7edef}.choice input{accent-color:var(--wine);height:18px;width:18px;flex-shrink:0;margin:3px 0 0}.choice .sub{display:block;color:var(--muted);font-size:13px;margin-top:2px}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px}.form-actions .button{padding:10px 18px;font-size:14px;gap:22px}.back{border:0;background:none;color:var(--muted);cursor:pointer;padding:10px 0;font-size:14px}.error{color:#a22424;font-size:14px;margin:12px 0}.result-label{font-size:12px;letter-spacing:1.5px;color:#805362;margin-bottom:16px}.result-price{font:400 48px/1.1 var(--serif);margin:20px 0 4px;color:var(--wine)}.result-price small{font:400 14px var(--sans);color:var(--muted)}.cost-breakdown{font-size:14px;color:var(--muted);padding-bottom:18px;border-bottom:1px solid var(--line)}.result-reason{font-size:15px}.notice{font-size:14px;background:#f4ecee;border-left:3px solid #9e657a;padding:13px 15px;margin:14px 0}.notice strong{display:block;margin-bottom:3px}.recommendations{padding-left:20px;font-size:14px}.recommendations li{margin-bottom:9px}.next-note{border-top:1px solid var(--line);padding-top:20px;margin-top:20px;font-size:14px}.next-note p{margin:5px 0;color:var(--muted)}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-bottom:1px solid var(--line)}.about h2 em{color:#946342}.about-copy{color:var(--muted)}.about-copy .lead{color:var(--ink);font-size:21px;line-height:1.5}.signature{font:italic 44px var(--serif);color:var(--wine);display:block;margin-top:23px}.details{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;padding:20px 30px 20px 0;position:relative;font-weight:550;font-size:15px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:0;top:17px;font-weight:400;font-size:22px}.faq details[open] summary:after{content:'−'}.faq p{color:var(--muted);font-size:14px;padding-right:20px;margin-bottom:24px}footer{background:var(--wine);color:#f5e9e6;display:flex;align-items:center;justify-content:space-between;padding:34px 6%;gap:30px}footer .brand-dot{color:var(--gold)}footer p,footer>span{font-size:13px;color:#e0c5ca;margin:0}@media(min-width:1441px){.hero{border-radius:8px;overflow:hidden}}@media(max-width:900px){.header nav{display:none}.hero{min-height:580px}.hero-copy{padding:48px 8%}h1{font-size:57px}.section{padding:68px 6%}.finder-section{gap:5%;padding:60px 5%}.finder-card{padding:25px}.section-heading{gap:7%}.about,.details{gap:7%}.price-grid{gap:14px}.price-card h3{font-size:26px}.price-card p{min-height:110px}footer{flex-wrap:wrap}footer p{display:none}}@media(max-width:640px){.header{padding:20px 6%;gap:14px}.brand{font-size:28px}.brand span:not(.brand-dot){font-size:19px}.header .button{font-size:12px;padding:9px 11px;gap:8px}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 7% 42px}h1{font-size:60px;letter-spacing:-.8px}.hero .eyebrow{font-size:11px;letter-spacing:1.5px}.hero-description{max-width:360px}.hero-photo{height:320px}.hero-photo img{object-position:center 56%}.intro-strip{padding:19px 7%;gap:12px;flex-wrap:wrap;justify-content:flex-start;font-size:12px}.intro-strip span:before{margin-right:6px}.section{padding:56px 7%}.section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:28px}h2{font-size:44px}.price-grid{grid-template-columns:1fr;gap:5px}.price-card{padding:24px 0;display:grid;grid-template-columns:1fr auto;gap:6px 18px}.card-number{grid-column:1/-1;margin-bottom:9px}.price-card h3{font-size:29px}.price-card p{grid-column:1;grid-row:3;min-height:0;margin:0;font-size:14px}.price{grid-column:2;grid-row:2/4;display:flex;flex-direction:column;gap:2px;align-self:center;align-items:flex-end}.price strong{font-size:43px}.price span{font-size:12px}.pricing-note{margin-top:5px}.finder-section{grid-template-columns:1fr;padding:48px 6%;gap:28px}.finder-intro h2{font-size:58px}.finder-intro h2 br{display:none}.finder-intro>p:not(.eyebrow){max-width:none}.finder-meta{margin-top:20px}.finder-intro{padding:0}.finder-card{padding:25px 20px;min-height:490px}.about,.details{grid-template-columns:1fr;gap:32px}.about-copy .lead{font-size:20px}.faq summary{font-size:16px}.faq p{font-size:15px}footer{padding:30px 7%;gap:20px}footer>span{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.result-details summary{cursor:pointer;font-size:14px;font-weight:600;margin:18px 0 12px}.result-details p{margin-bottom:14px}

.pathway-link{display:inline-block;margin-top:20px;color:var(--gold);font-size:14px;text-underline-offset:5px}.pathway{border-bottom:1px solid var(--line)}.pathway-stages{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:44px 0}.pathway-stages article{border-top:2px solid #ac7c65;padding:23px 0 0}.stage-label{color:#805362;font-size:12px;font-weight:650;letter-spacing:1.5px;margin-bottom:18px}.pathway h3{font:400 30px/1.15 var(--serif);color:var(--wine);margin-bottom:15px}.pathway-stages article>p:last-child{color:var(--muted);font-size:15px;margin-bottom:0}.pathway-goals{display:grid;grid-template-columns:1fr 1.15fr;gap:7%;background:#f0e6e2;border-radius:8px;padding:32px;margin-top:20px}.pathway-goals p:last-child{color:var(--muted);font-size:15px;margin-bottom:0}.pathway-goals ul{padding-left:20px;margin:0;font-size:15px}.pathway-goals li{padding-left:5px;margin-bottom:10px}.pathway-goals li:last-child{margin-bottom:0}.pathway-goals li::marker{color:#985d3c}.pathway-note{font-size:14px;color:var(--muted);margin:24px 0 0;max-width:1000px}.pathway-note+.pathway-note{margin-top:12px}@media(max-width:1050px){.header nav{gap:16px;font-size:13px}}@media(max-width:640px){.pathway-stages{grid-template-columns:1fr;gap:26px;margin:32px 0}.pathway-goals{grid-template-columns:1fr;gap:24px;padding:25px}.pathway h3{font-size:30px}.pathway .eyebrow{line-height:1.7}}

.weekly-plan{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:28px}.weekly-plan summary{cursor:pointer;font-weight:600;padding:20px 0;color:var(--wine)}.weekly-plan ol{padding-left:25px;max-width:950px}.weekly-plan li{margin-bottom:15px;font-size:15px;color:var(--muted)}.weekly-plan li strong{color:var(--ink)}.weekly-plan p{font-size:14px;color:var(--muted);max-width:950px;margin:20px 0}

.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-bottom:1px solid var(--line)}.contact h2{margin-bottom:25px}.contact>div>p:not(.eyebrow){color:var(--muted);max-width:420px}.contact-parent{font-size:14px}.contact-panel{background:#f0e6e2;border-radius:8px;padding:32px}.contact-email{font-size:clamp(19px,2.2vw,27px);font-weight:550;color:var(--wine);text-underline-offset:6px;overflow-wrap:anywhere}.contact-phone{margin:14px 0;font-size:20px}.contact-actions{display:flex;flex-wrap:wrap;gap:12px}.contact-hours{border-top:1px solid #d8c6c5;margin-top:24px;padding-top:20px;font-size:14px}.contact-hours p{margin:8px 0;color:var(--muted)}.field input[type=text]{width:100%;min-width:0;min-height:49px;border:1px solid #cabcbe;border-radius:5px;padding:12px 10px;background:#fffdf9;color:var(--ink)}.field input[type=text]+.hint{margin:8px 0 0}.next-note .request-button{margin:15px 0 7px;color:white}.next-note .inquiry-help{font-size:13px}.next-note a:not(.button){color:var(--wine);text-underline-offset:3px}.inquiry-direct{padding-top:14px}#inquiry-fallback{margin-top:15px;font-size:14px}#inquiry-fallback summary{cursor:pointer;color:var(--wine);margin-bottom:10px}#inquiry-summary{box-sizing:border-box;display:block;width:100%;font:14px/1.55 var(--sans);border:1px solid #cabcbe;padding:12px;border-radius:5px;color:var(--ink);background:#fff;resize:vertical;margin-bottom:12px}#copy-status{font-size:14px}@media(max-width:640px){.contact{grid-template-columns:1fr;gap:25px}.contact-panel{padding:24px}.contact-actions .button{padding:12px 20px}.request-button{width:100%;padding:13px 14px;font-size:15px}}
