/* Touch-first layout and deliberate automatic motion. */
.hero-year{position:relative}.year-window{overflow:visible}.year-numeral{animation:year-unveil 1.7s cubic-bezier(.16,1,.3,1) .15s both,year-light 7s ease-in-out 2s infinite,year-breathe 7s ease-in-out 2s infinite;transform-origin:left center}
@keyframes year-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.year-label i{position:relative;overflow:hidden}.year-label i:after{content:'';position:absolute;inset:0;background:#fff6dd;transform:translateX(-100%);animation:line-pass 5s ease-in-out 2s infinite}
@keyframes line-pass{0%,15%{transform:translateX(-105%)}70%,100%{transform:translateX(105%)}}
.button{position:relative;overflow:hidden}.hero-v3-actions .button:after{content:'';position:absolute;inset:-50%;width:35%;background:linear-gradient(90deg,transparent,#fff5,transparent);transform:translateX(-220%) rotate(25deg);animation:button-light 7s ease-in-out 3s infinite;pointer-events:none}
@keyframes button-light{0%,55%{left:-60%;opacity:0}65%{opacity:1}85%,100%{left:160%;opacity:0}}
.button .arrow,.text-link .arrow,.header-book .arrow{transition:transform .45s cubic-bezier(.2,.8,.2,1)}
@media(hover:hover){.button:hover .arrow,.text-link:hover .arrow,.header-book:hover .arrow{transform:translate(3px,-3px)}.text-link{background:linear-gradient(#a8753c,#a8753c) left bottom/0 1px no-repeat;transition:background-size .5s,color .3s}.text-link:hover{background-size:100% 1px}.treatment-nav button:hover .arrow{transform:translateX(4px) rotate(45deg)}.menu-group:hover h3{color:#986432}.signature-details h2 em:hover{color:#704626}.journal-card:hover .circle-link{transform:rotate(45deg);background:#ebc390}}
.signature-visual>img{animation:signature-drift 18s ease-in-out infinite alternate;will-change:transform}.signature-visual:hover>img{animation-play-state:paused}
@keyframes signature-drift{from{transform:scale(1.02) translateX(-.5%)}to{transform:scale(1.09) translateX(.5%)}}
.motion-ready .motion-reveal{opacity:0;transform:translateY(25px);transition:opacity .9s ease,transform 1s cubic-bezier(.2,.75,.2,1);transition-delay:var(--reveal-delay,0ms)}.motion-ready .motion-reveal.in-view{opacity:1;transform:translateY(0)}
.signature-sequence{position:relative}.signature-sequence:before{content:'';position:absolute;left:0;right:0;top:-1px;height:1px;background:#996c3d;transform:scaleX(0);transform-origin:left;transition:transform 1.5s .3s}.signature-sequence.in-view:before{transform:scaleX(1)}
.customer-review:not([hidden]){animation:review-arrive .7s ease both}@keyframes review-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.review-controls button.review-auto{width:auto;min-width:65px;border-radius:24px;padding:0 13px;font:11px var(--sans)}.review-paper{position:relative;overflow:hidden}.review-timer{height:2px;background:#e5d4ba;margin-top:20px;overflow:hidden}.review-timer>i{display:block;height:100%;width:100%;background:#b57d3e;transform:scaleX(0);transform-origin:left;animation:review-clock 14s linear infinite}.reviews-paused .review-timer>i{animation-play-state:paused}@keyframes review-clock{to{transform:scaleX(1)}}
.explorer-photo.changing img{animation:treatment-arrive .65s cubic-bezier(.2,.75,.2,1) both}@keyframes treatment-arrive{from{opacity:.2;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}
body.motion-paused *,body.motion-paused *:before,body.motion-paused *:after{animation-play-state:paused!important}.motion-control{white-space:nowrap}.hero-switch .motion-control{min-width:88px;border-radius:22px}
@media(max-width:760px){
 html{scroll-padding-top:86px}body{padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}.site-header,.site-header.scrolled,.inner-page .site-header{height:76px}.site-header nav{top:76px}.heritage-hero{margin-top:76px;min-height:690px;min-height:max(690px,calc(100svh - 76px));height:auto;display:block}.heritage-hero-copy{padding:92px 7% 150px;position:relative}.hero-year{display:block;margin:0 0 26px}.year-label{display:flex;align-items:center;font:italic 23px/1.2 var(--serif);gap:16px;margin-bottom:18px}.year-numeral{font-size:clamp(116px,35vw,162px);line-height:.86;letter-spacing:-.035em;display:block}.year-window{padding:0 0 12px}.year-caption{display:none!important}.hero-since{margin-bottom:22px}.heritage-hero h1{font-size:clamp(32px,8.9vw,41px);line-height:1.17;margin-bottom:27px}.hero-v3-actions{gap:22px}.hero-v3-actions .button{min-height:52px;font-size:12px}.heritage-hero .hero-bottom{left:7%;right:7%;bottom:24px;align-items:center;gap:10px;flex-wrap:wrap}.heritage-hero .scroll-invitation{max-width:104px;font-size:7px}.hero-switch{gap:5px}.hero-switch button{min-width:23px;font-size:10px}.hero-switch .motion-control{min-width:77px;font-size:9px;min-height:34px;padding:0 9px}.hero-topline{font-size:8px}.mobile-actions{min-height:56px;align-items:stretch;padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-actions a{display:flex;align-items:center;justify-content:center;min-height:56px;padding:15px 8px;font-size:12px}
 .signature-editorial{display:grid;grid-template-columns:minmax(0,1fr)}.signature-visual{height:320px;min-height:320px;position:relative}.signature-photo-note{position:absolute;left:7%;right:7%;bottom:27px}.signature-details{padding:38px 7% 44px;min-width:0}.signature-details h2{font-size:clamp(35px,9.7vw,43px);line-height:1.12}.signature-intro{margin:22px 0 27px;line-height:1.85}.signature-sequence{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:12px;padding:24px 0}.signature-sequence strong{margin:12px 0 6px;line-height:1.2}.signature-sequence p{font-size:17px;line-height:1.4}.signature-booking{display:grid;grid-template-columns:1fr;gap:18px;margin-top:25px}.signature-booking>div{display:flex;justify-content:space-between;align-items:center;gap:18px}.signature-booking>div>span{font-size:9px;line-height:1.8;max-width:145px}.signature-booking strong{font-size:45px;white-space:nowrap}.signature-booking .button{width:100%;padding:16px 20px;font-size:12px}.signature-options{font-size:12px;margin-top:23px}.review-controls{gap:7px}.review-controls button{width:38px;height:38px}.review-bottom>span{font-size:9px}.review-photo{min-height:310px}.review-paper{padding:27px 22px}.review-paper-top{font-size:8px;gap:15px}.customer-review blockquote{font-size:23px}.footer-contact-grid{column-gap:16px}.footer-contact-grid>div>a.footer-tel{font-size:20px}.footer-contact-grid>div>a.footer-email{font-size:10px}.heritage-footer .footer-bottom{padding-bottom:24px}.section{overflow-x:clip}
}
@media(max-width:350px){.hero-switch .motion-control{min-width:69px;font-size:8px}.heritage-hero .scroll-invitation{max-width:90px}.signature-details h2{font-size:34px}.review-bottom{align-items:flex-start;flex-direction:column;gap:18px}.year-numeral{font-size:112px}}
@media(prefers-reduced-motion:reduce){.motion-ready .motion-reveal{opacity:1;transform:none;transition:none}.year-numeral,.signature-visual>img,.customer-review:not([hidden]),.review-timer>i{animation:none!important}.review-timer{display:none}.year-label i:after,.hero-v3-actions .button:after{display:none}}
@media(max-width:760px){.heritage-hero .hero-bottom{bottom:80px}.heritage-hero-copy{padding-bottom:160px}}
.customer-review blockquote{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7;overflow:hidden;min-height:245px;font-size:22px;line-height:1.6}.customer-review.expanded blockquote{display:block;overflow:visible}.review-read{display:inline-block;font:11px var(--sans);color:#8a5d30;border:0;border-bottom:1px solid #ccb595;background:none;margin-top:16px;padding:0 0 5px;cursor:pointer}.review-stage{min-height:410px}.customer-review .review-person{margin-top:20px}.review-read:hover{color:#4e301a}
@media(max-width:760px){.customer-review blockquote{font-size:20px;line-height:1.55;min-height:248px;-webkit-line-clamp:8}.customer-review{padding-left:0}.review-stage{min-height:400px}.review-read{font-size:12px;min-height:35px}.review-paper{padding:26px 21px}.review-bottom{gap:15px}.customer-review.expanded blockquote{min-height:0}}
