/* SAYURI: light, space, and a continuous reading rhythm. */
:root{--ink:#503b37;--muted:#806c63;--rose:#9b6a58;--paper:#fdf8f3;--hairline:#dcc8bb;--gutter:clamp(24px,6vw,96px);--serif:"Zen Old Mincho","Yu Mincho",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.9 "DM Sans","Yu Gothic",sans-serif}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:clamp(1.9rem,3.05vw,3rem);line-height:1.65;letter-spacing:.04em}h3{font-size:clamp(1.5rem,2vw,2rem);line-height:1.6;letter-spacing:.025em}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--rose);outline-offset:6px}section[id]{scroll-margin-top:32px}.wrap{width:min(1180px,calc(100% - var(--gutter)*2));margin-inline:auto}.eyebrow{font-size:.8125rem;letter-spacing:.2em;font-weight:500;line-height:1.6;color:var(--rose);margin-bottom:25px}.minor{font-size:.8125rem;line-height:1.9;color:var(--muted)}.skip-link{position:fixed;top:12px;left:12px;z-index:20;background:var(--paper);padding:12px 20px;transform:translateY(-180%)}.skip-link:focus{transform:none}.wordmark{font:400 1.5rem/1 var(--serif);letter-spacing:.28em}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;min-height:52px;padding:14px 26px;border:1px solid var(--rose);border-radius:999px;font-size:.875rem;letter-spacing:.06em;background:transparent;transition:background .25s,color .25s}.pill span{font-size:1.2rem}
/* Keep the photographic film and its accessible playback controls. */
.hero{position:relative;overflow:hidden;isolation:isolate;min-height:max(760px,100svh);background:#eedbce;color:var(--ink)}.hero::after{content:"";position:absolute;z-index:1;inset:auto 0 0;height:125px;background:linear-gradient(transparent,var(--paper));pointer-events:none}.site-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-inline:var(--gutter);height:98px;z-index:3;border-bottom:0;background:transparent}.site-header nav{display:flex;gap:35px;letter-spacing:.15em}.site-header nav a,.menu-link{font-size:.8125rem}.menu-link{letter-spacing:.13em}.film-shade{background:linear-gradient(90deg,rgba(253,248,243,.55),transparent 70%)}.hero-copy{color:var(--ink);padding:clamp(140px,21vh,230px) 0 180px var(--gutter);width:59%;max-width:800px}.hero-copy h1{font-size:clamp(2.5rem,3.55vw,4rem);line-height:1.6;letter-spacing:.05em}.hero-copy .intro{margin:25px 0 35px;font-size:1rem;line-height:2.1}.hero-copy .eyebrow{font-size:.8125rem}.hero-cta{display:inline-flex;align-items:center;gap:38px;padding:14px 26px;min-height:52px;border:1px solid var(--rose);border-radius:999px;font-size:.875rem}.film-caption{color:var(--ink);text-shadow:0 1px 18px var(--paper)}.film-caption-text{font-size:clamp(1.9rem,3vw,3rem)}.film-caption .eyebrow{color:var(--rose)}.film-chapter{color:var(--ink)}.film-chapter-track{background:#d0b3a4}.film-chapter-track i{background:var(--ink)}.film-button{color:var(--ink);background:rgba(253,248,243,.65);border-color:#b69b8e;backdrop-filter:blur(8px)}.hero a:focus-visible,.film-button:focus-visible{outline-color:var(--ink)}.vertical-note{position:absolute;right:var(--gutter);writing-mode:vertical-rl;letter-spacing:.17em}.film-footer{z-index:4}
/* Quiet connective passages, with a single continuous contour. */
.bridge{position:relative;isolation:isolate;text-align:center;padding:160px var(--gutter);overflow:hidden}.bridge--opening{padding-top:175px;padding-bottom:175px}.bridge h2{font-size:clamp(1.6rem,2.6vw,2.5rem);line-height:1.85}.bridge .body-copy{margin-top:32px;line-height:2.3}.thread{position:absolute;width:105%;height:150px;left:-3%;top:35px;fill:none;stroke:#dab69e;stroke-width:1;opacity:.7;pointer-events:none;z-index:-1}.bridge--opening .thread{top:40px}.bridge--answer{padding:130px var(--gutter) 90px}.bridge--answer .thread{top:0;height:250px}.bridge--small{padding:110px var(--gutter);min-height:290px;display:flex;align-items:center;justify-content:center}.bridge--small p{font:400 clamp(1.1rem,1.65vw,1.55rem)/2 var(--serif);letter-spacing:.05em}.bridge--small .thread{top:30px}.quiet-mark{font:italic 1.1rem var(--serif);color:var(--rose);letter-spacing:.1em;margin-bottom:40px}.body-copy{font-size:1rem;line-height:2.2}
.concerns{padding:50px 0 30px}.concern-list{list-style:none;padding:0;margin:70px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}.concern-list li{text-align:center}.line-art{width:100%;aspect-ratio:1/1;background-image:url('assets/ritual-lineart-trio.png');background-size:300% 100%;background-position:0 50%;background-repeat:no-repeat;mix-blend-mode:multiply}.line-art--palm{background-position:50% 50%}.line-art--face{background-position:100% 50%}.concern-list p{margin-top:20px;font-size:1rem;line-height:1.95}.concern-list li:nth-child(2){padding-top:45px}
.answer{padding:0 0 80px;position:relative}.answer-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(40px,7vw,110px)}.answer-image{height:650px;position:relative;margin-left:calc(-1 * var(--gutter));overflow:hidden;mask-image:linear-gradient(0deg,transparent,#000 12%,#000 87%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 12%,#000 87%,transparent)}.answer-image img{height:100%;width:100%;object-fit:cover;object-position:71% center}.answer-copy{padding-block:50px}.answer-copy h2{font-size:clamp(2rem,3vw,3rem)}.latin-product{font:400 clamp(1.5rem,2.4vw,2.3rem)/1.5 var(--serif);margin-top:24px}.answer-copy .body-copy{margin-top:30px}.answer-copy .minor{margin-top:28px}
.moments{padding:120px 0 0}.section-heading{text-align:center}.moment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(25px,4vw,60px);margin-top:70px}.moment-visual{aspect-ratio:4/5;overflow:hidden}.moment-visual img{width:100%;height:100%;object-fit:cover}.moment:nth-child(2){padding-top:55px}.moment:nth-child(3){padding-top:110px}.moment-visual--bottle img{object-position:70% center}.ordinal{display:block;font:italic 2.7rem/1.2 var(--serif);color:var(--rose);margin:28px 0 14px}.moment p{margin-top:18px;line-height:2;color:var(--muted)}
.voices{position:relative;padding:70px 0 80px;background:radial-gradient(ellipse at 95% 50%,#f5e6df80,transparent 57%)}.voice-heading{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.sample-label{font-size:.8125rem;color:var(--muted);border-bottom:1px solid var(--hairline);padding-bottom:3px}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,8vw,120px);margin:60px 0 35px}.quote{position:relative;padding:20px 0 20px 42px}.quote::before{content:'“';position:absolute;left:0;top:-8px;font:5rem/1 var(--serif);color:#d4b4a4}.quote p{font:400 clamp(1.15rem,1.7vw,1.6rem)/2 var(--serif);letter-spacing:.035em}.review-note{text-align:center;font-size:.8125rem;color:var(--muted);line-height:2}.ritual{padding:65px 0 80px}.steps{list-style:none;padding:0;margin:65px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(25px,4vw,60px)}.step-visual{aspect-ratio:1.15;overflow:hidden}.step-visual img{width:100%;height:100%;object-fit:cover}.step-visual .line-art{width:100%;height:100%;aspect-ratio:auto;background-size:300% 100%}.step-label{display:flex;align-items:baseline;gap:20px;margin-top:25px}.step-label .ordinal{font-size:2.2rem;margin:0}.step-label h3{font:400 1rem/1.9 "DM Sans","Yu Gothic",sans-serif;letter-spacing:.02em}.ritual-note{text-align:center;margin-top:65px}.ritual-note .minor{margin-top:15px}
.closing{position:relative;isolation:isolate;min-height:800px;display:flex;align-items:center;margin-top:60px;overflow:hidden}.closing-scene{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:65% center}.closing::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--paper),transparent 18%,transparent 78%,var(--paper)),linear-gradient(90deg,rgba(253,248,243,.9),rgba(253,248,243,.4) 40%,transparent 68%)}.closing-copy{padding:100px 0;max-width:55%}.closing h2{font-size:clamp(2rem,3.6vw,3.7rem);line-height:1.8}.closing-brand{font:400 clamp(2.2rem,4.8vw,4.7rem)/1.3 var(--serif);letter-spacing:.18em;margin-top:36px}.closing-name{font:400 clamp(1.4rem,2.5vw,2.4rem)/1.4 var(--serif);margin-top:8px}.closing-jp{font-size:.875rem;letter-spacing:.1em;margin-top:12px}.closing .pill{margin-top:32px}.product-info{padding:40px 0 70px}.product-info details{max-width:760px;margin:auto;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:25px 0}.product-info summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:44px;font-size:1rem}.product-info summary::-webkit-details-marker{display:none}.product-info summary::after{content:'＋';font-size:1.3rem}.product-info details[open] summary::after{content:'−'}.product-info .details-body{padding:25px 0 12px}.product-info dl{display:grid;grid-template-columns:110px 1fr;gap:18px 25px;font-size:.875rem;line-height:1.9;margin:30px 0}.product-info dt{color:var(--muted)}.product-info dd{margin:0}.product-info .details-body p{font-size:.875rem;line-height:2}.site-footer{padding:70px var(--gutter) 40px;text-align:center}.site-footer .wordmark{display:inline-block;margin-bottom:28px}.footer-note{font-size:.8125rem;color:var(--muted);line-height:2}.footer-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:70px;font-size:.75rem;color:var(--muted);letter-spacing:.08em}.footer-bottom a{font-size:.875rem;min-height:44px;display:flex;align-items:center}
.skip-link:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap;padding:0}
@media(hover:hover){.pill:hover,.hero-cta:hover{background:#503b37;color:var(--paper);border-color:#503b37}.film-button:hover{background:var(--paper);color:var(--ink)}.site-header a:hover{color:var(--rose)}}
@media(min-width:1700px){.hero-copy{padding-left:max(var(--gutter),calc((100vw - 1440px)/2))}.hero-copy h1{font-size:4rem}}
@media(max-width:900px){.site-header nav{gap:20px}.answer-grid{gap:40px}.answer-image{height:520px}.concern-list{gap:20px}.moment-grid,.steps{gap:25px}.step-label{gap:12px}.closing{min-height:700px}}
@media(max-width:760px){:root{--gutter:24px}h2{font-size:1.85rem;line-height:1.8}.site-header{height:78px}.wordmark{font-size:1.25rem}.site-header nav{display:none}.menu-link{font-size:.75rem}.hero{min-height:max(870px,100svh)}.hero-copy{width:100%;max-width:none;padding:47vh 24px 170px}.hero-copy h1{font-size:clamp(2rem,7vw,2.7rem);line-height:1.55}.hero-copy .intro{max-width:320px;margin:20px 0 25px;font-size:1rem}.film-shade{background:linear-gradient(0deg,rgba(253,248,243,.98),rgba(253,248,243,.8) 30%,transparent 69%)}.film-poster{object-position:67% center}.hero::after{height:80px}.film-caption{bottom:190px;max-width:calc(100% - 48px);left:24px}.film-caption-text{font-size:1.8rem}.film-footer{left:24px;right:24px}.film-chapter span{font-size:.75rem;letter-spacing:.1em}.film-button{font-size:.8125rem}.bridge{padding:100px 24px}.bridge--opening{padding-top:125px;padding-bottom:115px}.bridge h2{font-size:1.55rem;line-height:1.95}.bridge .body-copy{font-size:.9375rem}.bridge--small{min-height:240px;padding:95px 30px}.bridge--small p{font-size:1.2rem}.thread{width:140%;left:-20%;opacity:.5}.concerns{padding-top:20px}.concern-list{grid-template-columns:1fr;gap:45px;margin-top:45px}.concern-list li{display:grid;grid-template-columns:130px 1fr;gap:23px;align-items:center;text-align:left}.concern-list .line-art{width:130px;height:150px}.concern-list li:nth-child(2){padding-top:0}.concern-list p{margin:0;font-size:.9375rem}.bridge--answer{padding-bottom:50px}.answer{padding-bottom:30px}.answer-grid{grid-template-columns:1fr;gap:0}.answer-image{height:450px;margin-right:calc(-1 * var(--gutter));mask-image:linear-gradient(0deg,transparent,#000 17%,#000 84%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 17%,#000 84%,transparent)}.answer-copy{padding:35px 10px 20px}.answer-copy h2{font-size:1.85rem}.latin-product{font-size:1.65rem}.moments{padding-top:95px}.section-heading{text-align:left}.moment-grid{grid-template-columns:1fr;gap:65px;margin-top:45px}.moment{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:25px;align-items:center}.moment:nth-child(2),.moment:nth-child(3){padding-top:0}.moment:nth-child(2) .moment-visual{order:2}.moment:nth-child(2) .moment-content{order:1}.ordinal{font-size:2rem;margin:0 0 16px}.moment h3{font-size:1.35rem}.moment p{font-size:.875rem;margin-top:13px}.voices{padding:30px 0 45px}.quote-grid{grid-template-columns:1fr;gap:40px;margin-top:35px}.quote{padding-left:34px}.quote p{font-size:1.25rem}.quote::before{font-size:4.5rem}.review-note{text-align:left}.ritual{padding-top:25px}.steps{grid-template-columns:1fr;gap:50px;margin-top:40px}.steps li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:25px;align-items:center}.step-label{display:block;margin-top:0}.step-label .ordinal{margin-bottom:15px}.step-label h3{font-size:.9375rem}.ritual-note{margin-top:50px;text-align:left}.closing{min-height:850px;margin-top:0;align-items:flex-end}.closing-scene{object-position:68% top}.closing::before{background:linear-gradient(180deg,var(--paper),transparent 18%,transparent 35%,rgba(253,248,243,.9) 61%,var(--paper) 100%)}.closing-copy{max-width:100%;padding:400px 0 65px}.closing h2{font-size:1.85rem}.closing-brand{font-size:2.65rem;margin-top:24px}.closing-name{font-size:1.6rem}.product-info{padding-top:15px}.product-info dl{grid-template-columns:80px 1fr;gap:16px}.site-footer{padding-top:35px}.footer-bottom{margin-top:45px;align-items:center}.footer-bottom small{font-size:.75rem}.eyebrow{font-size:.75rem}.hero .vertical-note{display:none}}
@media(max-width:760px){.concerns h2,.answer-copy h2{font-size:clamp(1.35rem,6.1vw,1.6rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
