:root{--paper:#f7f3eb;--ink:#392e31;--wine:#482837;--gold:#ad895b;--muted:#7b706b;--line:#d9cfc0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}p{line-height:2.1}header{height:100px;max-width:1440px;margin:auto;padding:0 5%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:13px;font-size:23px;letter-spacing:.12em}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:.16em;margin-top:5px}.crest{height:42px;width:42px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--wine)}nav{display:flex;align-items:center;gap:34px;font-size:12px}.nav-cta{border-bottom:1px solid var(--gold);padding:12px 0}.nav-cta span{padding-left:18px}.hero{position:relative;max-width:1440px;min-height:740px;margin:auto;isolation:isolate;overflow:hidden;background:#e7d6be}.hero-photo{position:absolute;inset:0;z-index:-2}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(247,243,235,.98),rgba(247,243,235,.89) 25%,rgba(247,243,235,.08) 62%)}.hero-copy{padding:85px 0 110px 8%;max-width:670px}.eyebrow{font-size:11px;letter-spacing:.21em;color:var(--gold);margin:0 0 25px}h1{font-size:clamp(36px,3.8vw,55px);font-weight:400;line-height:1.65;letter-spacing:.12em;margin:0 0 24px}h1 em{font-style:normal;color:var(--wine)}.hero-intro{font-size:15px;margin-bottom:30px}.button{background:var(--wine);color:#fff8eb;padding:19px 25px;display:inline-flex;gap:45px;align-items:center;justify-content:space-between;letter-spacing:.08em;font-size:13px;min-height:58px;transition:background .2s,transform .2s}.button:hover{background:#673c50;transform:translateY(-2px)}.button span{font-size:20px}.micro{font-size:10px;color:var(--muted);letter-spacing:.04em;margin-top:13px}.hero-bottom{position:absolute;bottom:25px;left:8%;right:5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.19em}.hero-bottom a{font-size:11px}.section{padding:95px max(6%,calc((100% - 1060px)/2));scroll-margin-top:10px}.section-label{font-size:11px;letter-spacing:.16em;color:var(--gold);display:flex;align-items:center;gap:14px;margin-bottom:50px}.section-label:before{content:'';width:30px;height:1px;background:var(--gold)}.section-label span{color:var(--muted)}h2{font-size:clamp(24px,2.6vw,34px);font-weight:400;line-height:1.8;letter-spacing:.09em;margin:0 0 28px}h3{font-weight:400}.intro-grid,.heritage-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.prose p{font-size:14px;margin:0 0 22px}.signature{margin-top:50px;font-size:24px;letter-spacing:.18em}.signature small{display:block;font-size:10px;letter-spacing:.12em;margin-top:14px;color:var(--muted)}.heritage{background:#eee7db}.heritage-grid{align-items:center}.heritage-art{position:relative;min-height:400px;background:var(--wine);color:#d4ba8e;display:flex;align-items:center;justify-content:center;gap:36px;overflow:hidden}.heritage-art:before,.heritage-art:after{content:'';position:absolute;width:300px;height:300px;border:1px solid #aa8d6255;border-radius:50%;left:-160px;top:-100px}.heritage-art:after{left:auto;top:auto;bottom:-190px;right:-100px;width:400px;height:400px}.grapes{font-size:34px;line-height:1.1;letter-spacing:-3px;text-align:center;transform:rotate(-10deg);opacity:.7}.heritage-art>span{writing-mode:vertical-rl;font-size:22px;letter-spacing:.22em;line-height:2}.heritage-art>small{position:absolute;bottom:27px;left:30px;font-size:8px;letter-spacing:.22em}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:24px}.section-heading>p{font-size:13px;color:var(--muted)}.methods{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:35px}.methods article{position:relative;padding:42px}.methods article:first-child{border-right:1px solid var(--line)}.method-number{font-size:24px;color:var(--gold);display:block;margin-bottom:15px}.methods h3{font-size:26px;margin:0 0 20px}.methods h3 small{display:block;font-size:11px;color:var(--gold);margin-top:13px;letter-spacing:.08em}.methods p{font-size:13px;margin:0;color:var(--muted)}.reading-note{font-size:12px;text-align:center;color:var(--muted);margin:25px 0 0}.concerns{padding-top:40px}.concern-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.concern-grid article{padding:30px 18px 25px 0;border-bottom:1px solid var(--line)}.concern-grid article>span{font-size:10px;color:var(--gold);letter-spacing:.15em}.concern-grid h3{font-size:18px;margin:15px 0 10px}.concern-grid p{font-size:12px;color:var(--muted);margin:0}.free{background:var(--wine);color:#f8f1e7}.free .section-label span,.free .eyebrow{color:#d0b691}.free-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:75px}.free h2{font-size:29px}.free-description{font-size:13px;margin-bottom:30px}.button.light{background:#f3eadc;color:var(--wine)}.button.light:hover{background:#fff}.free .micro{color:#d3c3c9}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:25px;padding:24px 0;border-top:1px solid #ffffff26}.steps li>span{color:#d0b691;font-size:12px;padding-top:6px}.steps h3{font-size:16px;margin:0 0 10px}.steps p{font-size:12px;color:#dbced3;margin:0}.line-info{margin-top:35px;padding:20px;border:1px solid #ab8b654d}.line-info p{margin:0;font-size:14px}.line-info small{display:block;line-height:1.8;font-size:12px;color:#d3c3c9}[hidden]{display:none!important}.faq h2{font-size:26px;margin-bottom:35px}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:23px 0;font-size:14px}summary::-webkit-details-marker{display:none}summary span{color:var(--gold)}details[open] summary span{transform:rotate(45deg)}details p{font-size:13px;color:var(--muted);margin:0 35px 25px 0}.closing{text-align:center;padding-top:10px;padding-bottom:95px}.closing>img{width:125px;height:125px;object-fit:cover;object-position:58% 35%;border-radius:50%;margin-bottom:30px}.closing h2{font-size:29px}.closing p:not(.eyebrow){font-size:13px}.text-link{display:inline-flex;gap:55px;padding:15px 0;border-bottom:1px solid var(--gold);margin-top:16px;font-size:13px}footer{border-top:1px solid var(--line);padding:42px 6%;display:flex;gap:35px;align-items:center;justify-content:space-between}footer .brand{display:block;font-size:18px}footer .brand small{font-size:9px}footer p{font-size:9px;color:var(--muted)}footer>small{font-size:9px;color:var(--muted)}.mobile-cta{display:none}
@media(max-width:760px){html{scroll-padding-top:20px}.header{height:78px;padding:0 22px}.brand{font-size:18px;gap:9px}.brand small{font-size:8px}.crest{width:34px;height:34px}nav>a:not(.nav-cta){display:none}nav{gap:0}.nav-cta{font-size:10px}.nav-cta span{padding-left:6px}.hero{min-height:0;padding-bottom:45px;background:var(--paper)}.hero-photo{position:relative;height:340px;z-index:0}.hero-photo img{object-position:59% 40%}.hero:after{top:200px;height:160px;background:linear-gradient(0deg,var(--paper),transparent);z-index:1;pointer-events:none}.hero-copy{position:relative;z-index:2;padding:0 28px;margin-top:-40px;max-width:none}.hero .eyebrow{font-size:9px;margin-bottom:18px}h1{font-size:34px;line-height:1.65;letter-spacing:.1em;margin-bottom:18px}.hero-intro{font-size:13px;margin-bottom:25px}.hero .button{width:100%}.micro{font-size:9px;line-height:1.9}.hero-bottom{position:relative;bottom:auto;left:auto;right:auto;margin:30px 28px 0;font-size:7px}.hero-bottom a{font-size:9px}.section{padding:60px 26px}.section-label{margin-bottom:30px;font-size:10px}.intro-grid,.heritage-grid,.free-grid{grid-template-columns:1fr;gap:30px}h2{font-size:26px}.intro .eyebrow{font-size:10px}.signature{margin-top:26px;font-size:21px}.prose p{font-size:14px;line-height:2.15}.heritage-art{min-height:275px}.heritage-art>span{font-size:20px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{font-size:12px}.methods{grid-template-columns:1fr}.methods article{padding:28px 14px}.methods article:first-child{border-right:0;border-bottom:1px solid var(--line)}.method-number{float:left;margin:0 25px 0 0;font-size:22px}.methods h3{font-size:23px}.methods h3 small{font-size:10px}.methods p{clear:both}.reading-note{text-align:left;font-size:11px}.concerns{padding-top:0}.concern-grid{grid-template-columns:1fr 1fr;column-gap:16px}.concern-grid article{padding:25px 0}.concern-grid h3{font-size:16px}.concern-grid p{font-size:11px}.concern-grid p br{display:none}.free h2{font-size:25px}.free-description{font-size:12px}.free .button{width:100%;gap:15px;padding:16px 18px;font-size:12px}.steps li{gap:20px}.steps h3{font-size:15px}.line-info{padding:17px}.line-info p{font-size:13px}.faq h2{font-size:23px}summary{font-size:13px;line-height:1.8}details p{margin-right:0}.closing{padding-top:0}.closing h2{font-size:24px}.closing p:not(.eyebrow){font-size:12px}.closing>img{width:110px;height:110px}footer{display:block;padding:32px 26px 120px}footer p{margin-top:22px}.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:10;background:#f7f3ebf5;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 18px calc(12px + env(safe-area-inset-bottom));backdrop-filter:blur(8px)}.mobile-cta>span{font-size:9px;color:var(--muted)}.mobile-cta small{display:block;font-size:12px;color:var(--wine);margin-top:3px}.mobile-cta a{font-size:12px;background:var(--wine);color:white;padding:15px 19px}}
@media(max-width:360px){.hero-copy{padding:0 22px}h1{font-size:29px}.nav-cta{font-size:9px}.brand{font-size:16px}.section{padding-left:22px;padding-right:22px}.mobile-cta a{font-size:11px;padding:15px 12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Keep the opening phrase on one line at each intended breakpoint. */
h1{font-size:clamp(36px,3.35vw,45px)}@media(max-width:760px){h1{font-size:28px}}@media(max-width:360px){h1{font-size:25px}}
.opening{white-space:nowrap}.grape-mark{transform:rotate(-9deg);flex-shrink:0}@media(max-width:760px){.hero-copy{margin-top:-5px}}@media(max-width:360px){h1{font-size:22px}}
