:root{--ink:#30252b;--muted:#71626b;--paper:#f5f1eb;--main:#785956;--dark:#21191e;--gold:#dac39b;--line:#988278;--rule:#d6cbc1;--serif:'Yu Mincho','Hiragino Mincho ProN',Georgia,serif;color:var(--ink);background:var(--paper);font-size:100%;font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif}
*{box-sizing:border-box}body{margin:0;font-size:1.0625rem;line-height:1.95;letter-spacing:.035em}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.6;overflow-wrap:anywhere}h1{font-size:clamp(2rem,3.8vw,3.5rem)}h2{font-size:clamp(1.8rem,3vw,3rem)}h3{font-size:clamp(1.25rem,1.8vw,1.6rem)}a{color:inherit;text-underline-offset:.35em}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;height:auto}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--main);outline-offset:6px}#main:focus{outline:none}.wrap{width:min(100% - 8rem,1320px);margin-inline:auto}.quiet{color:var(--muted);font-size:.9375rem}.eyebrow{font-size:.75rem;letter-spacing:.21em;font-weight:500;line-height:1.7;margin-bottom:1.6rem;overflow-wrap:anywhere}
/* Solid satin surfaces; the light moves over the button without moving its label. */
.button{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:.7rem;background:linear-gradient(115deg,#32252c,#514039 55%,#32252c);color:#fff7e9;min-height:3.6rem;padding:1.1rem 2.1rem;border:0;border-radius:3px;text-decoration:none;font-size:.9375rem;letter-spacing:.09em;line-height:1.7;box-shadow:0 9px 25px #21191e16,inset 0 1px #ffffff21;transition:box-shadow .35s,transform .35s}
.button::after{content:'';position:absolute;inset:-100% -60%;background:linear-gradient(110deg,transparent 40%,#ffffff40 49%,transparent 58%);transform:translateX(-70%);pointer-events:none}.button:hover,.button:focus-visible{box-shadow:0 12px 28px #21191e30,inset 0 1px #fff6}.button.full{width:100%}.button.light,body[data-view=home] .header .button{background:linear-gradient(110deg,#bfa277,#eddbb4 48%,#c6aa81);color:#2e231f}.button.compact{padding:.85rem 1.65rem;min-height:3rem}
.text-link{display:inline-flex;align-items:center;min-height:48px;padding:.6rem 0;font-size:.9375rem;border:0;background:none;text-decoration:none;position:relative}.text-link::after{content:'';position:absolute;left:0;right:0;bottom:.4rem;height:1px;background:currentColor;opacity:.6;transform:scaleX(.26);transform-origin:left;transition:transform .45s}.text-link:hover::after,.text-link:focus-visible::after{transform:scaleX(1)}
.skip{position:absolute;top:-10rem;left:1rem;z-index:100;padding:1rem;background:var(--paper)}.skip:focus{top:1rem}.reading-progress{position:fixed;top:0;left:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;z-index:50;pointer-events:none}.demo-note{background:#171317;color:#dbcfbf;text-align:center;padding:.4rem 1rem;font-size:.6875rem;letter-spacing:.1em}.demo-note span{margin-left:1rem;letter-spacing:.03em}
.header{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-block:1.7rem}.brand{display:flex;align-items:center;gap:1rem;text-decoration:none;min-width:0;max-width:100%;line-height:1}.brand-mark{width:4.7rem;height:auto}.brand>div{width:15.8rem;max-width:100%;min-width:0}.brand-name{width:100%;height:auto}.brand small{display:block;font:500 .625rem/1.7 Georgia,serif;letter-spacing:.2em;text-align:center;margin-top:.8rem;color:inherit}nav{display:flex;align-items:center;gap:2.2rem;flex-wrap:wrap}nav>a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:.875rem}nav>a:not(.button):hover{text-decoration:underline}body[data-view=home] .header{position:absolute;left:0;right:0;z-index:5;color:var(--paper)}body[data-view=home] .header :focus-visible{outline-color:var(--gold)}
.hero{position:relative;isolation:isolate;background:var(--dark);color:var(--paper);min-height:min(900px,100svh);display:flex;align-items:center;overflow:hidden}.hero-photo,.hero-shade,.light-wash{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hero-photo{object-fit:cover;object-position:58% 50%;z-index:-3}.tone{filter:sepia(.13) saturate(.8) contrast(1.06) brightness(.96)}.hero-shade{z-index:-2;background:linear-gradient(90deg,#181318eb 0%,#21191eb3 38%,#271e1f22 78%),linear-gradient(0deg,#181318ae,transparent 25%,transparent 75%,#181318b3)}.light-wash{z-index:-1;background:radial-gradient(ellipse at 75% 15%,#e9c78426,transparent 65%);mix-blend-mode:screen}.hero-copy{padding-top:14rem;padding-bottom:10rem}.hero-copy .eyebrow{color:#e3d1ae;margin-bottom:2rem}.hero h1{font-size:clamp(2.75rem,4.6vw,4.7rem);letter-spacing:.13em;line-height:1.75}.hero-description{margin:1.8rem 0 2.8rem;line-height:2.2;font-size:1rem}.hero-actions{display:flex;align-items:center;gap:2.3rem;flex-wrap:wrap}.hero-bottom{position:absolute;bottom:2rem;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;font-size:.625rem;letter-spacing:.17em}.scroll-cue{display:inline-flex;align-items:center;gap:1rem;min-height:44px;text-decoration:none}.scroll-line{width:1px;height:2rem;background:#dbc9ae;transform-origin:top}
.intro{text-align:center;padding-block:8rem 7rem;position:relative}.intro .eyebrow{color:var(--main)}.intro-title{font-family:var(--serif);font-size:clamp(1.7rem,2.6vw,2.7rem);line-height:2;letter-spacing:.1em;margin-bottom:2.2rem}.intro>p:last-of-type{font-size:1rem;color:var(--muted);line-height:2.4}.intro-mark{width:3.5rem;margin:2.5rem auto 0;filter:brightness(.62)}.mobile-break{display:none}
.concept{display:grid;grid-template-columns:1.15fr 1fr;gap:11%;align-items:center;padding-block:1rem 8rem;scroll-margin-top:2rem}.concept-visual{position:relative;margin-right:3rem;padding-bottom:4rem}.portrait img{aspect-ratio:.78;object-fit:cover}.portrait figcaption{font: .625rem/1.8 Georgia,serif;letter-spacing:.15em;margin-top:1rem;color:var(--muted)}.ritual-inset{position:absolute;width:49%;right:-16%;bottom:0;box-shadow:0 25px 65px #21191e25}.ritual-inset img{aspect-ratio:.76;object-fit:cover}.concept-copy .eyebrow{color:var(--main)}.concept-copy h2{letter-spacing:.065em}.english-script{font-family:Georgia,serif;font-size:clamp(2.1rem,3.8vw,3.8rem);font-style:italic;color:var(--main);line-height:1.25;margin-block:1.5rem 2.2rem}.concept-copy>p:not(.eyebrow):not(.english-script){line-height:2.4}.concept-copy .text-link{margin-top:2rem}
.menu-section{padding-block:4rem 7rem;scroll-margin-top:2rem}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:4rem}.section-heading h2{font-family:Georgia,serif;font-size:clamp(3.3rem,6.2vw,6rem);line-height:1.05;letter-spacing:-.05em}.section-heading em{font-weight:400;color:var(--main)}.section-jp{font-family:var(--serif);font-size:1.3rem;margin-bottom:1rem}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3.5%}.menu-card:nth-child(2){padding-top:4rem}.menu-card:nth-child(3){padding-top:8rem}.menu-photo-link{display:block;position:relative;overflow:hidden}.menu-art{position:relative;overflow:hidden;background:var(--dark)}.menu-art img{aspect-ratio:.78;object-fit:cover;filter:sepia(.06) saturate(.82)}.photo-label{position:absolute;inset:auto 0 0;padding:2rem 1rem 1rem;background:linear-gradient(transparent,#21191ebf);font-size:.625rem;letter-spacing:.18em;color:#fff5e7;opacity:0;transition:opacity .4s}.menu-photo-link:hover .photo-label,.menu-photo-link:focus-visible .photo-label{opacity:1}.menu-heading{display:flex;align-items:start;gap:.9rem;margin-top:1.8rem}.menu-number{font-family:Georgia,serif;font-style:italic;color:var(--main);font-size:1.5rem;line-height:1.3}.menu-en{font-size:.625rem;letter-spacing:.1em;color:var(--muted);margin-bottom:.7rem}.menu-heading>div{min-width:0}.menu-meta{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:1.4rem 0 .5rem;font-size:.875rem}.menu-meta strong{font:400 1.75rem/1.5 Georgia,serif}.menu-footnote{margin-top:3rem;color:var(--muted);font-size:.8125rem}
.interlude{position:relative;isolation:isolate;min-height:580px;display:grid;place-items:center;text-align:center;color:var(--paper);overflow:hidden}.interlude>img,.interlude-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%;z-index:-2}.interlude-shade{background:linear-gradient(90deg,#21191ea6,#21191e92);z-index:-1}.interlude-copy{padding:5rem 1.5rem}.interlude h2{font-size:clamp(1.9rem,3.5vw,3.6rem);letter-spacing:.1em}.interlude-copy>p:last-child{margin-top:2rem}.visit{display:flex;justify-content:space-between;align-items:center;gap:4rem;padding-block:8rem}.visit h2{font-size:clamp(2.1rem,3.8vw,3.8rem)}.visit em{font-style:normal;color:var(--main)}.visit-info{font-size:.875rem;color:var(--muted);margin-top:2rem}.visit-action{text-align:center;max-width:100%}.reservation-button{display:flex;flex-direction:column;min-width:20rem;max-width:100%;padding:1.8rem 2rem;gap:.8rem}.button-caption{font: .6875rem Georgia,serif;letter-spacing:.2em;color:#e4ceb0}.reservation-button strong{font-family:var(--serif);font-size:1.3rem;font-weight:400}.visit-action>.quiet{margin-top:1.6rem;font-size:.8125rem}
.footer{color:#dfd2c2;background:radial-gradient(ellipse at 50% 100%,#403031 0%,#21191e 60%);padding:4rem 0 2rem;overflow:hidden}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:2rem}.footer-top>p{font-family:var(--serif);font-size:1.2rem;line-height:2}.footer .text-link{font-size:.8125rem}.footer :focus-visible{outline-color:var(--gold)}.footer-lockup{display:flex;align-items:center;justify-content:center;gap:4%;margin-block:5rem 6rem;text-decoration:none;position:relative}.logo-piece{position:relative;display:block;min-width:0}.logo-symbol{width:27%;--logo:url('images/sanare-mark.png')}.logo-lettering{width:69%;--logo:url('images/sanare-wordmark.png')}.logo-piece::after{content:'';position:absolute;inset:0;mask:var(--logo) center/100% 100% no-repeat;-webkit-mask:var(--logo) center/100% 100% no-repeat;background:linear-gradient(110deg,transparent 30%,#ffeed78c 40%,#fff 47%,#fff5d3 49%,transparent 60%);background-size:400% 100%;background-position:100% 0;opacity:0;pointer-events:none}.footer-bottom{border-top:1px solid #685553;display:flex;justify-content:space-between;gap:2rem;padding-top:1.5rem}.footer-bottom p{font-size:.6875rem;line-height:1.9;letter-spacing:.08em}
.inner-page{padding-block:1.5rem 7rem}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;margin-bottom:3rem;font-size:.8125rem;color:var(--muted)}.breadcrumb a{display:inline-flex;align-items:center;min-height:44px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.detail-art .menu-art img{aspect-ratio:.8}.detail-art figcaption{margin-top:1rem;font-size:.6875rem;color:var(--muted);letter-spacing:.1em}.detail-info{padding-top:1.5rem}.detail-info h1{margin-bottom:1.5rem;font-size:clamp(1.8rem,2.7vw,2.7rem)}.detail-info .eyebrow{color:var(--main)}#detail-description{font-size:1rem;line-height:2.2}.price-block{display:flex;align-items:baseline;gap:1.2rem;justify-content:space-between;flex-wrap:wrap;padding-top:2rem;margin-top:1rem}.price-block strong{font:400 2.8rem/1.4 Georgia,serif;overflow-wrap:anywhere}.price-block span{font-size:1rem}.plain-list{margin-block:2rem}.plain-list>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem 1rem;padding-block:.8rem;border-bottom:1px solid var(--rule)}dt{color:var(--muted);font-size:.875rem}dd{margin:0;overflow-wrap:anywhere;font-size:.9375rem}.detail-note{margin-top:2.5rem}.detail-note h2{font-size:1.2rem}.detail-note p{font-size:.875rem;line-height:2;margin-top:.8rem;color:var(--muted)}.detail-info>.text-link{margin-top:1.5rem}.concept>*,.detail-grid>*{min-width:0}
@media(prefers-reduced-motion:no-preference){.hero-photo{animation:hero-settle 2.4s ease-out both}.hero-copy{animation:copy-enter 1.2s .15s ease-out both}.light-wash{animation:light-drift 12s ease-in-out 2 alternate}.button:hover,.button:focus-visible{transform:translateY(-3px)}.button:active{transform:translateY(0)}.button:hover::after,.button:focus-visible::after{animation:satin-pass .85s ease-out}.menu-art img{transition:transform 1.2s cubic-bezier(.2,.65,.3,1)}.menu-photo-link:hover img{transform:scale(1.045)}.reveal{transition:opacity .9s ease,transform .9s cubic-bezier(.2,.65,.3,1)}.reveal.waiting{opacity:.01;transform:translateY(24px)}.reveal:focus-within{opacity:1;transform:none}.footer-lockup.illuminated .logo-piece::after{animation:logo-light 2.8s .3s ease-in-out both}.footer-lockup.illuminated{animation:logo-glow 3s .2s ease-out both}.footer-lockup:hover .logo-piece::after{animation:logo-light-hover 2s ease-in-out}.scroll-line{animation:scroll-pulse 2s ease-in-out 3}@keyframes hero-settle{from{transform:scale(1.035)}to{transform:scale(1)}}@keyframes copy-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes satin-pass{to{transform:translateX(70%)}}@keyframes light-drift{to{transform:translateX(-15%);opacity:.4}}@keyframes logo-light{0%{opacity:0;background-position:100% 0}20%{opacity:.9}85%{opacity:.8}100%{opacity:0;background-position:0 0}}@keyframes logo-light-hover{0%{opacity:0;background-position:100% 0}20%,80%{opacity:1}100%{opacity:0;background-position:0 0}}@keyframes logo-glow{70%{filter:drop-shadow(0 0 16px #e7c98055)}100%{filter:drop-shadow(0 0 5px #e7c98028)}}@keyframes scroll-pulse{50%{transform:scaleY(.4);opacity:.5}}}
@media(max-width:1100px){.wrap{width:calc(100% - 4rem)}nav{gap:1.5rem}.brand-mark{width:3.9rem}.brand>div{width:13rem}.concept{gap:6%}.concept-visual{margin-right:2rem}.hero-copy{padding-top:12rem}.menu-grid{gap:3%}}
@media(max-width:800px){.wrap{width:calc(100% - 3rem)}.header{gap:1rem;padding-block:1.25rem}nav>a:not(.button){display:none}.hero{min-height:780px}.hero h1{font-size:clamp(2.5rem,6vw,3.4rem)}.hero-photo{object-position:52% center}.hero-shade{background:linear-gradient(90deg,#181318d4,#21191e40),linear-gradient(0deg,#181318a6,transparent 50%,#18131880)}.hero-copy{padding-top:11rem;padding-bottom:9rem}.concept{grid-template-columns:1fr;gap:4rem;padding-bottom:4rem}.concept-visual{max-width:520px;margin-inline:1rem 16%}.concept-copy{padding-inline:.5rem}.section-heading{align-items:start;flex-direction:column;gap:2rem}.menu-grid{grid-template-columns:1fr 1fr;gap:3.5rem 6%}.menu-card:nth-child(2){padding-top:3.5rem}.menu-card:nth-child(3){padding-top:0}.visit{padding-block:5rem;flex-direction:column;align-items:start;gap:3rem}.visit-action{align-self:center}.detail-grid{grid-template-columns:1fr}.detail-info{grid-row:1}.detail-art{margin-top:3rem;max-width:600px}.footer-lockup{margin-block:4rem}.hero-bottom{font-size:.56rem}.reservation-button{min-width:18rem}}
@media(max-width:480px){.wrap{width:calc(100% - 2.5rem)}.demo-note{font-size:.6rem;letter-spacing:0}.demo-note span{margin-left:.5rem}.header{gap:.7rem;flex-wrap:wrap}.brand{gap:.55rem}.brand-mark{width:2.8rem}.brand>div{width:10.3rem}.brand small{font-size:.48rem;margin-top:.5rem}.button.compact{padding:.75rem 1rem;font-size:.8125rem}.hero{min-height:760px}.hero h1{font-size:2.4rem;letter-spacing:.075em}.hero-copy{padding-top:11rem;padding-bottom:8rem}.hero-description{font-size:.9375rem}.hero-actions{gap:1rem}.hero-actions .text-link{font-size:.875rem}.hero-bottom{flex-wrap:wrap;gap:.2rem;bottom:1.3rem}.hero-bottom>span{display:none}.intro{padding-block:5rem}.intro-title{font-size:1.7rem}.intro>p:last-of-type{font-size:.9375rem}.mobile-break{display:block}.concept-copy h2{font-size:1.9rem}.concept-copy>p:not(.eyebrow):not(.english-script){font-size:.9375rem}.menu-section{padding-block:3rem 5rem}.menu-grid{grid-template-columns:1fr;gap:3.5rem}.menu-card:nth-child(2){padding-top:0}.menu-art img{aspect-ratio:1.05}.menu-heading h3{font-size:1.4rem}.section-heading h2{font-size:3.8rem}.interlude{min-height:450px}.interlude h2{font-size:1.9rem}.interlude-copy p{font-size:.875rem}.visit h2{font-size:2rem}.reservation-button{min-width:0;width:100%}.visit-action{width:100%}.footer-top{align-items:start;gap:1.5rem}.footer-top>p{font-size:1rem}.footer-lockup{gap:5%;margin-block:3.5rem}.logo-symbol{width:28%}.logo-lettering{width:67%}.footer-bottom{flex-direction:column;gap:1rem}.detail-info h1{font-size:1.8rem}.breadcrumb{margin-bottom:1.8rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}}
/* Keep long English names and large type inside narrow columns. */
.menu-card{min-width:0}.menu-en,.photo-label,.footer-bottom p{overflow-wrap:anywhere}.menu-grid{grid-auto-columns:minmax(0,1fr)}.hero-actions .button{max-width:100%;text-align:center;overflow-wrap:anywhere}.section-heading>*{min-width:0}.english-script{overflow-wrap:anywhere}.footer-top>*{min-width:0}.footer-top .text-link{overflow-wrap:anywhere}
@media(max-width:480px){.menu-grid{grid-template-columns:minmax(0,1fr)}.section-heading h2{font-size:clamp(2.5rem,14vw,3.8rem)}.footer-top{flex-wrap:wrap}.hero-copy{padding-top:13rem}}

/* DESIGN 04: a persistent, compact brand signature and a real menu index. */
:root{--header-height:136px}
.header.wrap,body[data-view=home] .header{position:sticky;top:0;left:auto;right:auto;z-index:40;width:100%;padding:1.15rem max(clamp(1.25rem,5vw,4rem),calc((100vw - 1320px)/2));background:#21191efa;color:#f5f1eb;transition:background .45s,box-shadow .45s}
body[data-view=home] .header:not(.scrolled){background:transparent}
.header.scrolled{box-shadow:0 8px 35px #100c111f;backdrop-filter:blur(18px)}
body[data-view=home] .hero{margin-top:calc(-1*var(--header-height))}
.header .brand{display:grid;grid-template-columns:4.7rem 15.8rem;grid-template-rows:auto auto;align-items:center;gap:.15rem .75rem;max-width:100%}
.header-symbol{grid-column:1;grid-row:1;width:100%;--logo:url('images/sanare-mark.png')}
.header-lettering{grid-column:2;grid-row:1;width:100%;--logo:url('images/sanare-wordmark.png')}
.header .brand-mark,.header .brand-name{width:100%;height:auto}
.header .brand small{grid-column:1/-1;grid-row:2;margin:.15rem 0 0;font-size:.625rem;letter-spacing:.13em;line-height:1.4;text-align:center}
.header .logo-piece::after{opacity:0}
.header nav{gap:1.8rem}.header nav>a:not(.button){display:inline-flex}.header nav a{white-space:normal;text-align:center}
.hero{border-radius:0}.hero-copy{padding-top:calc(var(--header-height) + 5rem)}
#concept,#home-care,#journal{scroll-margin-top:calc(var(--header-height) + 2rem)}
.inner-page{scroll-margin-top:var(--header-height)}
.brand:focus-visible{outline-color:var(--gold)}
.concept-visual{margin-right:3rem;padding-bottom:2.5rem}
.portrait img{aspect-ratio:.87;border-radius:4px;object-position:50% 53%}
.ritual-inset{width:31%;right:-8%;bottom:0;box-shadow:0 14px 40px #21191e1f;border-radius:4px;overflow:hidden;transform:none}
.ritual-inset img{aspect-ratio:.82;border-radius:3px;object-fit:cover;object-position:50% 65%}
.menu-card:first-child .menu-photo-link{border-radius:4px}
.menu-card:nth-child(2) .menu-photo-link{border-radius:4px}
.menu-card:nth-child(3) .menu-photo-link{border-radius:4px}
.all-menus-link{margin-top:3.5rem;text-align:center}
.interlude{width:calc(100% - 5rem);max-width:1520px;margin:0 auto;border-radius:4px;min-height:590px}
.interlude>img{object-position:50% 47%}
.interlude-shade{background:linear-gradient(90deg,#21191eaa,#21191e66)}
.catalog-title{padding:1.2rem 0 4.5rem}.catalog-title .eyebrow{color:var(--main)}.catalog-title h1{font-size:clamp(2.4rem,5vw,4rem);margin-bottom:1.3rem}.catalog-title>p:last-child{color:var(--muted);font-size:1rem;line-height:2.1}
.catalog-cards{display:grid;gap:5.5rem}.catalog-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:7%;align-items:center}.catalog-photo{display:block;overflow:hidden;border-radius:4px}.catalog-photo .menu-art img{aspect-ratio:1;object-fit:cover}.catalog-card:nth-child(2) .catalog-photo{border-radius:4px}.catalog-card:nth-child(3) .catalog-photo{border-radius:4px}.catalog-copy{min-width:0}.catalog-copy .eyebrow{color:var(--main);margin-bottom:1rem}.catalog-copy h2{font-size:clamp(1.55rem,2.3vw,2.3rem);margin-bottom:1.2rem}.catalog-copy h2 a{text-decoration:none}.catalog-copy>p:not(.eyebrow){font-size:.9375rem;line-height:2.2;color:var(--muted)}.catalog-price{display:flex;gap:1.6rem;align-items:baseline;margin:1.4rem 0;flex-wrap:wrap}.catalog-price strong{font:400 2.4rem/1.4 Georgia,serif}.catalog-price span{font-size:.9375rem}.catalog-actions{display:flex;align-items:center;gap:1rem 2rem;flex-wrap:wrap}.catalog-actions .button{max-width:100%;text-align:center}.catalog-actions .text-link{font-size:.875rem}
/* A moving photo album, with full comparison images and deliberate pause controls. */
.journal{padding-block:8rem 2rem;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.2fr);gap:9%;align-items:center}.journal-copy h2{font-size:clamp(1.8rem,2.7vw,2.8rem)}.journal-copy .eyebrow{color:var(--main)}.journal-copy .english-script{font-size:clamp(1.7rem,3vw,3rem)}.journal-note{font-size:.75rem;color:var(--muted);line-height:2;margin:1.5rem 0 .5rem}.journal-book{min-width:0;position:relative;padding:1.6rem;background:#eae2d7;border-radius:4px;box-shadow:12px 13px 0 -4px #ded3c4,18px 23px 36px #30252b12}.journal-window{overflow:hidden;background:#f7f4ee;border-radius:4px;outline-offset:5px}.journal-track{display:flex;transition:transform 1s cubic-bezier(.22,.7,.2,1);will-change:transform}.journal-page{flex:0 0 100%;min-width:0;padding:1rem;display:flex;flex-direction:column;justify-content:center;align-items:center}.journal-page img{height:clamp(300px,34vw,470px);width:100%;object-fit:contain;filter:none;border-radius:2px}.journal-page figcaption{font: .625rem/1.7 Georgia,serif;letter-spacing:.15em;margin-top:1.1rem;color:var(--muted)}.journal-controls{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:.6rem}.journal-controls .text-link{font-size:.8125rem}.journal-controls span{font: .75rem Georgia,serif;letter-spacing:.1em}.journal-copy button{font-size:.8125rem}.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}
@media(prefers-reduced-motion:no-preference){.header .logo-piece::after{animation:brand-light-pass 3.8s ease-in-out infinite}@keyframes brand-light-pass{0%,8%{opacity:0;background-position:100% 0}14%{opacity:.95}46%{opacity:.95}54%,100%{opacity:0;background-position:0 0}}}
@media(max-width:1100px){.header .brand{grid-template-columns:3.9rem 13rem}.header nav{gap:1.2rem}.catalog-actions{gap:.6rem 1.2rem}.journal{gap:6%}}
@media(max-width:800px){.header.wrap,body[data-view=home] .header{padding:1rem 1.5rem;flex-wrap:wrap;justify-content:center;gap:.65rem}.header .brand{grid-template-columns:3.2rem 12.5rem;gap:.15rem .65rem}.header nav{justify-content:center;gap:1.7rem;flex:1 0 100%}.header nav a{font-size:.875rem;min-height:44px}.header nav .button{min-height:44px;padding:.65rem 1.3rem}.hero-copy{padding-top:calc(var(--header-height) + 4rem)}.concept-visual{margin-right:12%}.interlude{width:calc(100% - 2.5rem);border-radius:4px;min-height:460px}.catalog-card{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:6%;align-items:start}.catalog-photo{border-radius:4px}.catalog-photo .menu-art img{aspect-ratio:.72}.catalog-copy h2{font-size:1.5rem}.catalog-actions .button{font-size:.875rem;padding:1rem 1.1rem}.journal{grid-template-columns:1fr;gap:2.5rem;padding-top:5rem}.journal-book{width:min(100%,600px);justify-self:center}.journal-copy{max-width:34rem}.journal-page img{height:450px}.journal-copy .english-script{margin-block:1rem 1.5rem}}
@media(max-width:480px){.header.wrap,body[data-view=home] .header{padding:.7rem 1.25rem;gap:.45rem}.header .brand{grid-template-columns:2.8rem 11.8rem;gap:.1rem .55rem}.header .brand small{font-size:.55rem;letter-spacing:.09em;margin-top:.1rem}.header nav{gap:1.25rem;flex-wrap:nowrap}.header nav>a{font-size:.75rem;line-height:1.6}.header nav .compact{padding:.6rem 1rem;font-size:.8125rem}.hero-copy{padding-top:calc(var(--header-height) + 3rem)}.hero{border-bottom-right-radius:0}.hero h1{font-size:2.25rem}.hero-description{font-size:.9rem}.concept-visual{margin-inline:0 10%}.concept-copy{padding-inline:0}.ritual-inset{width:29%;right:-10%}.interlude{border-radius:4px;min-height:450px}.interlude>img{object-position:58% center}.interlude h2{font-size:1.7rem}.catalog-title{padding-bottom:3rem}.catalog-card{grid-template-columns:minmax(0,1fr);gap:1.7rem}.catalog-cards{gap:4rem}.catalog-photo .menu-art img{aspect-ratio:1.15}.catalog-copy h2{font-size:1.6rem}.catalog-price strong{font-size:2.1rem}.journal-book{padding:.85rem;border-radius:4px;box-shadow:8px 10px 0 -4px #ded3c4,12px 16px 25px #30252b12}.journal-page{padding:.6rem}.journal-page img{height:330px}.journal-note{font-size:.75rem}.journal-controls{gap:.5rem}.journal-controls .text-link{font-size:.75rem}.journal-controls span{font-size:.6875rem}.journal-copy h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){.header .logo-piece::after{animation:none!important}.journal-track{transition:none!important;will-change:auto}}
/* Keep the full brand and navigation readable at 200% text and narrow widths. */
.header .brand{width:min(100%,21.25rem);grid-template-columns:minmax(0,4.7fr) minmax(0,15.8fr)}
@media(max-width:1100px){.header .brand{width:min(100%,17.65rem)}}
@media(max-width:800px){.header .brand{width:min(100%,16.35rem);grid-template-columns:minmax(0,3.2fr) minmax(0,12.5fr)}}
@media(max-width:480px){.header .brand{width:min(100%,15.15rem);grid-template-columns:minmax(0,2.8fr) minmax(0,11.8fr)}.header nav{flex-wrap:wrap;gap:.35rem 1.25rem}.journal-controls{flex-wrap:wrap}}
.header .button{background:linear-gradient(110deg,#bfa277,#eddbb4 48%,#c6aa81);color:#2e231f}
.catalog-copy h2{text-wrap:balance}
/* Guest voices: an editorial section; no invented reviews or ratings. */
#voices{scroll-margin-top:var(--header-height)}
.guest-voices{margin-top:7rem;padding-block:6rem;background:radial-gradient(ellipse at 10% 60%,#4e373a 0%,#30242b 58%,#251d23 100%);color:#f5f1eb;position:relative;overflow:hidden}
.voices-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:11%;align-items:start}
.voices-intro .eyebrow,.voice-service{color:#d7bd93}.voices-intro h2{font-size:clamp(2rem,3.4vw,3.3rem)}
.voices-script{font:italic 400 clamp(2.4rem,4.5vw,4.6rem)/1.15 Georgia,serif;letter-spacing:-.035em;color:#dfc8a4;margin:1.5rem 0 2.3rem;overflow-wrap:anywhere}
.voices-description{font-family:var(--serif);font-size:1.1rem;line-height:2.2}.voices-status{font-size:.8125rem;line-height:2.2;color:#d2c3c6;margin-top:1.5rem}
.voices-collection{min-width:0}.voice-entry{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:1.5rem;padding:2rem 0;border-top:1px solid #796366}.voice-entry:first-child{padding-top:1.5rem}.voice-index{font:italic 1.25rem/1.7 Georgia,serif;color:#d7bd93}.voice-service{font-size:.625rem;letter-spacing:.18em;overflow-wrap:anywhere}.voice-entry h3{font-size:clamp(1.15rem,1.5vw,1.45rem);line-height:1.8;margin-top:.7rem}.voice-pending{color:#d2c3c6;font-size:.8125rem;margin:.8rem 0 .4rem}.voice-entry .text-link{font-size:.8125rem}.guest-voices :focus-visible{outline-color:#dac39b}
@media(max-width:1100px){.header nav{gap:.85rem}.voices-layout{gap:7%}}
@media(max-width:800px){.guest-voices{margin-top:5rem;padding-block:4rem}.voices-layout{grid-template-columns:minmax(0,1fr);gap:3rem}.voices-script{font-size:clamp(2.4rem,8vw,4rem)}.voices-collection{width:100%}.header nav{gap:.4rem 1.4rem;flex-wrap:wrap}}
@media(max-width:480px){.voice-entry{grid-template-columns:1.4rem minmax(0,1fr);gap:1rem}.voice-entry h3{font-size:1.2rem}.header nav{gap:.25rem 1rem}.voices-description{font-size:1rem}}
.voice-quote{margin:1.25rem 0 1rem;padding:0;color:#f0e7e5;font-size:.9375rem;line-height:2.25;letter-spacing:.045em;overflow-wrap:anywhere}
@media(max-width:800px){.voices-intro{max-width:38rem}.voice-entry{padding-block:2.3rem}.voice-quote{font-size:1rem}}
@media(min-width:801px){.voices-intro{position:sticky;top:calc(var(--header-height) + 3rem)}}
/* Salon address, live location map and official social entrances. */
#access,#connect{scroll-margin-top:calc(var(--header-height) + 2rem)}
.salon-access{padding-block:7rem 4rem}.access-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:3.5rem}.access-heading .eyebrow{color:var(--main)}.access-heading h2{font-size:clamp(2rem,3.6vw,3.4rem)}.access-script{font:italic clamp(1.7rem,2.8vw,2.8rem)/1.3 Georgia,serif;color:var(--main);letter-spacing:-.03em}.access-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);gap:8%;align-items:start}.access-name{font:400 2rem/1.4 Georgia,serif;overflow-wrap:anywhere}.access-subtitle{color:var(--muted);font-size:.8125rem;margin-top:.5rem}.access-information address{font-style:normal;font-size:1.0625rem;line-height:2.1;margin:1.7rem 0}.access-stations{margin:1.8rem 0;font-size:.875rem}.access-stations p{margin-top:.8rem;line-height:2}.access-stations span{font: .6875rem/1.7 Georgia,serif;color:var(--main);margin-right:.7rem;letter-spacing:.08em}.access-stations strong{display:block;font-weight:500}.access-details{margin:1.7rem 0 2rem}.access-details>div{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:1rem;padding-block:.65rem;border-bottom:1px solid var(--rule)}.access-details small{font-size:.75rem;color:var(--muted)}.access-information .button{max-width:100%;text-align:center}.access-map-column{min-width:0}.access-map{height:580px;overflow:hidden;border-radius:4px;background:#e7dfd5}.access-map iframe{width:100%;height:100%;border:0;display:block}.map-caption{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1rem}.map-caption p{font:.625rem Georgia,serif;letter-spacing:.12em;color:var(--muted)}.map-caption .text-link{font-size:.8125rem}
.salon-connect{padding-block:3rem 1rem}.connect-heading{text-align:center;margin-bottom:3rem}.connect-heading .eyebrow{color:var(--main)}.connect-heading h2{font-size:clamp(1.7rem,3vw,2.7rem);margin-bottom:1rem}.social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.social-card{padding:2.5rem 3rem;border-radius:4rem .5rem .5rem .5rem;background:linear-gradient(130deg,#e9ded6,#f1e9e1);display:flex;align-items:start;flex-direction:column;gap:1.5rem;min-width:0}.social-line{border-radius:.5rem .5rem 4rem .5rem;background:linear-gradient(130deg,#e2e4da,#eeede4)}.social-wordmark{font:italic 2.7rem/1.2 Georgia,serif;letter-spacing:-.04em;color:var(--main)}.social-line .social-wordmark{font-style:normal;letter-spacing:.1em;color:#465446}.social-card h3{font-size:1.35rem}.social-card>div p{font-size:.875rem;color:var(--muted);margin-top:.8rem}.social-action{max-width:100%;margin-top:auto}.social-action[aria-disabled=true]{cursor:default;transform:none;box-shadow:none;background:#d0c1b7;color:#423632}.social-action[aria-disabled=true]::after{display:none}.social-status{font-size:.75rem;color:var(--muted);line-height:1.8}.footer-access{display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem;flex-wrap:wrap;margin-bottom:1.8rem}.footer-access address{font-style:normal;font-size:.8125rem;line-height:2;overflow-wrap:anywhere}.footer-access .text-link{font-size:.8125rem}
@media(max-width:1100px){.header{gap:1.2rem}.header nav{gap:.6rem 1rem}.access-layout{gap:5%}.social-card{padding:2rem}.access-map{height:560px}}
@media(max-width:800px){.salon-access{padding-top:5rem}.access-heading{align-items:start;flex-direction:column;gap:1.5rem}.access-layout{grid-template-columns:minmax(0,1fr);gap:3rem}.access-map{height:450px;border-top-left-radius:4px}.social-grid{gap:1.5rem}.social-card{padding:2rem 1.5rem}.social-wordmark{font-size:2.1rem}.social-card h3{font-size:1.15rem}}
@media(max-width:600px){.social-grid{grid-template-columns:minmax(0,1fr)}.social-card{padding:2.5rem 2rem}.social-wordmark{font-size:2.5rem}.social-card h3{font-size:1.3rem}.access-map{height:380px}.access-details>div{grid-template-columns:minmax(0,.6fr) minmax(0,1fr);gap:.7rem}.access-script{font-size:1.8rem}.footer-access{align-items:start;flex-direction:column;gap:.5rem}.social-action{padding-inline:1.4rem}}
.social-wordmark{font-size:min(2.7rem,9vw);max-width:100%;overflow-wrap:anywhere}
.social-card{padding-inline:clamp(1rem,5vw,3rem)}
/* A readable station guide remains beneath the map if an embedded frame is blank. */
.access-map{position:relative}.access-map iframe{position:absolute;inset:0;z-index:1;background:transparent}.map-fallback{height:100%;padding:4rem 2rem 2rem;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:radial-gradient(ellipse at top,#f3ece2,#e7ddd0);color:var(--ink)}.map-fallback .eyebrow{color:var(--main);margin-bottom:1.2rem}.map-salon{font:italic clamp(1.6rem,2.5vw,2.7rem)/1.4 Georgia,serif;overflow-wrap:anywhere}.map-building{font-size:.875rem;margin-top:.8rem;color:var(--muted)}.station-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;width:100%;margin:2.5rem 0 1.5rem;padding-top:2rem;border-top:1px solid #bfae9e}.station-guide strong{font:400 1.3rem var(--serif)}.station-guide span{display:block;font-size:.75rem;margin-top:.7rem}.station-guide p{font-size:.9375rem;color:var(--main);margin-top:.6rem}.map-fallback-note{font-size:.75rem;line-height:1.9;color:var(--muted)}
@media(max-width:600px){.map-fallback{padding:2rem 1rem}.map-salon{font-size:1.5rem}.station-guide{gap:1rem;margin:1.5rem 0 1rem;padding-top:1rem}.station-guide strong{font-size:1.1rem}.map-fallback-note{font-size:.6875rem}.access-map{height:auto;min-height:440px}.map-fallback{min-height:440px}.map-fallback .eyebrow{font-size:.625rem}}

/* DESIGN 07 — a single champagne-edged photographic mount throughout. */
:root{--photo-radius:4px;--photo-edge:#c4ab80;--photo-mat:clamp(6px,.8vw,11px);--photo-shadow:0 18px 38px -20px #33251d55}
.photo-frame{position:relative;isolation:isolate;padding:var(--photo-mat);border:1px solid var(--photo-edge);border-radius:var(--photo-radius);background:linear-gradient(125deg,#f6efe2,#e3d3ba 45%,#f9f3e9 76%,#d6bd95);box-shadow:var(--photo-shadow);overflow:hidden}
.photo-frame>img,.photo-frame>.menu-art,.portrait img{border-radius:2px}
.portrait .photo-frame img{aspect-ratio:.87}
.ritual-inset.photo-frame{position:absolute;width:32%;transform:none;right:-8%;border-radius:var(--photo-radius)}
.ritual-inset.photo-frame img{border-radius:2px}
.menu-card .menu-photo-link,.catalog-card .catalog-photo{border-radius:var(--photo-radius)}
.menu-card:nth-child(2),.menu-card:nth-child(3){padding-top:0}
.menu-grid .menu-art img{aspect-ratio:.82}
.interlude.photo-frame{padding:0;border:1px solid var(--photo-edge);border-radius:var(--photo-radius)}
.interlude.photo-frame::after{content:'';position:absolute;inset:var(--photo-mat);border:1px solid #ebd5ac70;border-radius:2px;pointer-events:none}
.journal-book.photo-frame{padding:clamp(.8rem,2vw,1.6rem);border-radius:var(--photo-radius);box-shadow:var(--photo-shadow)}
.journal-window{border-radius:2px}.journal-page{background:#f7f3ec}
.access-map{height:580px;border:1px solid var(--photo-edge);border-radius:var(--photo-radius);box-shadow:var(--photo-shadow)}
.access-map iframe{background:transparent}.map-fallback{padding:2rem}.map-fallback-note{margin-top:2rem}
.social-card,.social-line{border-radius:var(--photo-radius);border:1px solid #ccb99b}
.access-stations strong{font-family:var(--serif);font-size:1.3rem;margin-top:.4rem;color:var(--ink)}
.access-stations strong small{font:400 .8125rem/1.8 'Yu Gothic',sans-serif;color:var(--muted)}
.station-note{display:block;font-size:.75rem;color:var(--muted);margin-block:.4rem}
.station-source{display:inline-block;font-size:.75rem;min-height:32px;padding-block:.2rem}
.salon-faq{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:8%;padding-block:7rem 3rem;scroll-margin-top:calc(var(--header-height) + 2rem)}
.faq-intro .eyebrow{color:var(--main)}.faq-intro h2{font-size:clamp(1.9rem,3vw,2.8rem)}
.faq-intro .english-script{font-size:clamp(1.7rem,2.6vw,2.8rem);margin-block:1.2rem 2rem}
.faq-intro .text-link{margin-top:1.6rem}.faq-list{min-width:0;border-top:1px solid #b7a58e}
.faq-list details{border-bottom:1px solid #cfc0ad}
.faq-list summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:2rem minmax(0,1fr) 1rem;gap:1rem;align-items:center;padding:1.6rem .2rem;font-family:var(--serif);font-size:1.0625rem;line-height:1.9}
.faq-list summary::-webkit-details-marker{display:none}.faq-number{font:italic 1rem Georgia,serif;color:var(--main)}
.faq-toggle{position:relative;width:.875rem;height:.875rem;color:var(--main)}
.faq-toggle::before,.faq-toggle::after{content:'';position:absolute;inset:50% 0 auto;height:1px;background:currentColor}
.faq-toggle::after{transform:rotate(90deg);transition:transform .25s}
.faq-list details[open] .faq-toggle::after{transform:rotate(0)}
.faq-list details[open] summary{color:var(--main)}
.faq-answer{padding:0 2rem 1.8rem 3.2rem;font-size:.9375rem;line-height:2.2;color:var(--muted);overflow-wrap:anywhere}
.faq-answer .text-link{margin-top:.6rem}.faq-answer .faq-demo{font-size:.8125rem;margin-top:1rem}
@media(prefers-reduced-motion:no-preference){.faq-list details[open] .faq-answer{animation:faq-appear .3s ease-out}@keyframes faq-appear{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}}
@media(max-width:1000px){.header nav{gap:.5rem 1.1rem}}
@media(max-width:800px){.salon-faq{grid-template-columns:minmax(0,1fr);gap:2rem;padding-block:5rem 1rem}.access-map{height:450px;min-height:450px}.faq-intro .english-script{margin-block:1rem}.faq-intro .text-link{margin-top:.8rem}}
@media(max-width:480px){.header nav{gap:.15rem .85rem}.header nav>a:not(.button){font-size:.6875rem}.faq-list summary{grid-template-columns:1.4rem minmax(0,1fr) .875rem;gap:.6rem;font-size:1rem;padding-block:1.4rem}.faq-answer{padding:0 .2rem 1.5rem 2.2rem}.access-map{height:420px;min-height:420px}.ritual-inset.photo-frame{width:31%;right:-8%}}
@media(prefers-reduced-motion:reduce){.faq-toggle::after{transition:none}}

/* DESIGN 08 — visible location guide below the live Google Maps iframe. */
.map-fallback{position:relative;padding:0;overflow:hidden;background:#eee8df}
.access-map-drawing{display:block;width:100%;height:100%;font-family:var(--serif)}
.map-station circle{fill:#24242b;stroke:#d7bd8c;stroke-width:4}
.map-station>text:not(.map-station-name){fill:#fff;text-anchor:middle;font:700 22px Georgia,serif}
.map-station-name{fill:#3d3437;font-size:19px;font-weight:600;text-anchor:middle;paint-order:stroke;stroke:#f5f0e8;stroke-width:7px}
.map-pin path{fill:#7b4b48;filter:drop-shadow(0 8px 9px #2f22243f)}
.map-pin circle{fill:#f4e6cf}
.map-label rect{fill:#21191eea;stroke:#cfb17e;stroke-width:2}
.map-label text{fill:#fff8ed;text-anchor:middle;font:italic 22px Georgia,serif}
.map-label .map-address{fill:#d9c7aa;font:12px 'Yu Gothic',sans-serif;letter-spacing:.08em}
.map-road-name{fill:#84756f;font:12px 'Yu Gothic',sans-serif;letter-spacing:.14em;paint-order:stroke;stroke:#f8f5ee;stroke-width:5px}
.map-fallback-message{position:absolute;left:1rem;right:1rem;bottom:1rem;padding:.75rem 1rem;background:#f8f4edeb;border:1px solid #c9b48f;text-align:left;box-shadow:0 8px 25px #392b251c}
.map-fallback-message .eyebrow{margin:0;color:var(--main)}
.map-fallback-message p:last-child{margin-top:.25rem;font-size:.6875rem;line-height:1.7;color:var(--muted)}
@media(max-width:600px){.map-fallback{padding:0;min-height:420px}.access-map-drawing{min-height:420px}.map-fallback-message{left:.7rem;right:.7rem;bottom:.7rem}.map-station-name{font-size:21px}}

/* DESIGN 10 — a deeper left edge that fades out around the hero headline. */
.hero-photo.tone{filter:sepia(.07) saturate(.72) contrast(.92) brightness(1.12)}
.hero-shade{background:linear-gradient(90deg,#0d0a0dfd 0%,#130e12fa 15%,#1c1419ec 31%,#25191fc2 46%,#291c2266 57%,transparent 68%),linear-gradient(180deg,#17121759 0%,transparent 27%,transparent 72%,#17121778 100%)}
.hero-copy{text-shadow:0 2px 18px #130e12a8}
@media(max-width:800px){.hero-shade{background:linear-gradient(90deg,#171115ed 0%,#21171dce 44%,#281c2170 76%,#281c211a 100%),linear-gradient(180deg,#17121750 0%,transparent 35%,#17121769 100%)}}

/* DESIGN 11 — brighter header/footer logo light on one shared timeline. */
@media(prefers-reduced-motion:no-preference){
 .header .brand,.footer-lockup{animation:sanare-logo-glow 3.8s ease-in-out infinite}
 .header .logo-piece::after,.footer-lockup .logo-piece::after,.footer-lockup.illuminated .logo-piece::after,.footer-lockup:hover .logo-piece::after{background:linear-gradient(110deg,transparent 24%,#ffe9b83d 35%,#fff0bdcf 42%,#fff 48%,#fffbe9 52%,#f5cf8eb8 59%,transparent 72%);background-size:360% 100%;mix-blend-mode:screen;animation:sanare-logo-light 3.8s ease-in-out infinite}
 @keyframes sanare-logo-light{0%,8%{opacity:0;background-position:110% 0;filter:drop-shadow(0 0 0 transparent)}16%{opacity:1}34%{opacity:1;filter:drop-shadow(0 0 9px #fff5d9e6) drop-shadow(0 0 22px #e7b96f99)}54%{opacity:0;background-position:-10% 0;filter:drop-shadow(0 0 2px #fff0c633)}100%{opacity:0;background-position:-10% 0}}
 @keyframes sanare-logo-glow{0%,10%,60%,100%{filter:drop-shadow(0 0 0 transparent)}30%{filter:drop-shadow(0 0 8px #fff0c77a) drop-shadow(0 0 20px #d9a85b52)}46%{filter:drop-shadow(0 0 13px #fff1c78f) drop-shadow(0 0 28px #d9a85b5c)}}
}
@media(prefers-reduced-motion:reduce){.header .brand,.footer-lockup{animation:none!important}.header .logo-piece::after,.footer-lockup .logo-piece::after{animation:none!important;opacity:0!important}}

/* DESIGN 12 — a persistent, device-independent way back to the page top. */
.back-to-top{position:fixed;right:clamp(12px,2vw,30px);bottom:clamp(12px,2vw,30px);z-index:60;width:58px;height:58px;padding:0;border:1px solid #e3c992;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#4b3937e8,#21191ef2 62%,#171216f5);color:#f4dfb5;box-shadow:0 10px 28px #100b0f66,inset 0 1px #fff7db52;backdrop-filter:blur(12px);transition:transform .3s,box-shadow .3s,color .3s;background .3s}
.back-to-top::before{content:'';position:absolute;top:11px;width:1px;height:10px;background:linear-gradient(#fff2c8,#b99455);box-shadow:0 0 8px #ffe1a5a8}
.back-to-top span{padding-top:11px;font:600 10px/1 Georgia,serif;letter-spacing:.16em}
.back-to-top:hover,.back-to-top:focus-visible{transform:translateY(-4px);color:#fff6dc;background:linear-gradient(145deg,#624943f2,#2a1e24f5 62%,#171216fa);box-shadow:0 13px 34px #100b0f80,0 0 18px #deb97352,inset 0 1px #fff9e873}
.back-to-top:active{transform:translateY(-1px)}
@media(max-width:480px){.back-to-top{right:12px;bottom:12px;width:54px;height:54px}.back-to-top::before{top:9px}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}}
