/* Warm editorial direction, with progressive motion enhancement. */
:root{--paper:#f8f5ed;--ink:#18382d;--muted:#657164;--soft:#ecebdf;--line:#dddccd;--accent:#e2bc62;--ease:cubic-bezier(.22,1,.36,1)}
body{font-family:Arial,Helvetica,sans-serif;background:radial-gradient(ellipse at 100% 25%,#eee5d344,transparent 45%),var(--paper)}
h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em;line-height:1.09}
header{background:#f8f5edeb;transition:box-shadow .35s,background .35s;border-bottom-color:#dddccd88}
header.is-scrolled{background:#f8f5edf5;box-shadow:0 8px 35px #142e2510}
.desktop-nav a{position:relative;box-shadow:none!important}.desktop-nav a:after{content:'';position:absolute;left:0;right:0;bottom:2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}
.hero{margin:18px 2% 0;border-radius:8px 8px 80px 8px;min-height:650px;isolation:isolate}
.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(4rem,7.8vw,8rem);max-width:1000px;line-height:1.02;font-weight:400;text-shadow:0 3px 30px #071b1640}
.hero-photo{transform:scale(1.035);object-position:center 60%}
.hero-shade{background:linear-gradient(90deg,#071b1699,#071b1610 85%),linear-gradient(0deg,#071b16ed,transparent 95%)}
.hero-top{padding-bottom:20px;border-bottom:1px solid #ffffff45;letter-spacing:.14em}
.hero-content{left:5%;right:5%;bottom:55px}.hero-bottom p{font-size:1.08rem;color:#f5f0df}.hero-bottom .button{min-width:230px}
.button{min-height:54px;position:relative;overflow:hidden;transition:background .3s,box-shadow .4s,transform .4s var(--ease)}
.button>span,.circle-arrow,.gallery-item>span{transition:transform .45s var(--ease),background .3s}
.button:hover{box-shadow:0 9px 22px #142e2518;transform:translateY(-3px)}.button:hover>span{transform:translate(3px,-3px)}
.format-strip{gap:16px;border:0;padding:28px 0 0;margin:0 5%}.format-card{padding:22px!important;border:1px solid var(--line)!important;border-radius:16px;background:#fffcf6;transition:transform .4s var(--ease),box-shadow .4s,border-color .3s}
.format-size{font-family:Georgia,serif;font-size:2.2rem}.format-card:hover{transform:translateY(-5px);border-color:#b29b65!important;box-shadow:0 14px 35px #18382d0d}.format-card:hover .circle-arrow{transform:rotate(45deg)}
.section{padding-top:100px;padding-bottom:100px}.section-label,.eyebrow{letter-spacing:.16em;font-size:.7rem}.section-label{border-top:1px solid var(--line);padding-top:24px}
.story-grid{gap:10%;grid-template-columns:1.15fr 1fr}.story-copy{font-size:1.03rem;line-height:1.85}.story-grid h2{font-size:clamp(2.6rem,4.3vw,4.8rem)}
.origin-section{padding-top:25px}.origin-photo>img{border-radius:160px 160px 12px 12px}.origin-photo:after{content:'';position:absolute;inset:14px;border:1px solid #ffffff55;border-radius:150px 150px 7px 7px;pointer-events:none}.image-label{z-index:1}
.origin-copy .eyebrow:before,.product-info>.eyebrow:before{content:'';display:inline-block;width:26px;height:1px;background:#aa873d;vertical-align:middle;margin-right:12px}
.analysis-teaser{margin-top:20px;margin-bottom:100px;padding:60px;background:#e9ecdf;border:1px solid #d9decb;border-radius:12px 60px 12px 12px}.analysis-year{font-family:Georgia,serif;color:#d6dec8;font-weight:400;font-size:15rem;bottom:-55px}.analysis-teaser h2{font-family:Georgia,serif}
.product-main,.contact-photo img,.rucher-cover>img{border-radius:10px 65px 10px 10px}.product-detail-photo{box-shadow:0 8px 30px #071b1633;transform:rotate(5deg)}
.weight-option>span{transition:background .25s,border-color .25s,box-shadow .25s}.weight-option input:checked+span{background:#eee6d2;border-color:#8c7137;box-shadow:0 4px 18px #8c71370c}
.weight-option b span{display:inline;padding:0;border:0;border-radius:0;background:none;font:inherit;box-shadow:none;white-space:nowrap}
.gallery-item img{transition:transform .8s var(--ease)}.gallery-item:hover img{transform:scale(1.07)}.gallery-item:hover>span{transform:rotate(45deg)}
.pdf-card{background:linear-gradient(135deg,#eee8d6,#e8eddf);transition:transform .4s var(--ease),box-shadow .4s}.pdf-card:hover{transform:translateY(-5px);box-shadow:0 16px 45px #18382d12}
.nature-closing h2{font-style:italic}.text-link{transition:gap .3s}.text-link:hover{gap:52px}footer{background:#16392d;padding-top:70px}.footer-top{padding-bottom:60px}
.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:var(--accent);z-index:40;transform:scaleX(0);transform-origin:left;pointer-events:none}
.reveal-pending{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform 1s var(--ease);transition-delay:var(--reveal-delay,0ms)}.reveal-pending.is-visible{opacity:1;transform:none}
@keyframes hero-enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes photo-enter{from{transform:scale(1.10)}to{transform:scale(1.035)}}
@media(prefers-reduced-motion:no-preference){.hero-content h1{animation:hero-enter 1s var(--ease) both}.hero-bottom{animation:hero-enter 1s .15s var(--ease) both}.hero-photo{animation:photo-enter 1.8s var(--ease) both}.mobile-nav:not([hidden]){animation:hero-enter .25s var(--ease)}dialog[open]{animation:hero-enter .25s var(--ease)}}
@media(max-width:850px){.section{padding-top:65px;padding-bottom:65px}.story-grid{grid-template-columns:1fr;gap:20px}.format-card{padding:18px!important}.analysis-teaser{padding:35px;margin-bottom:65px}.hero{border-bottom-right-radius:55px}}
@media(max-width:580px){.hero{margin:10px 10px 0;min-height:550px;border-radius:8px 8px 42px 8px}.hero-content{left:24px;right:24px;bottom:30px}.hero h1{font-size:clamp(3.1rem,12vw,4.5rem)}.hero-top{letter-spacing:.06em;left:24px;right:24px}.hero-bottom p{font-size:.95rem}.format-strip{gap:8px}.format-card{padding:14px 10px!important;border-radius:12px;gap:5px}.format-size{font-size:1.4rem}.format-card .circle-arrow{width:24px;height:24px}.section{padding-top:48px;padding-bottom:48px}.origin-section{padding-top:5px}.origin-photo>img{border-radius:120px 120px 10px 10px}.origin-photo:after{border-radius:110px 110px 5px 5px}.analysis-teaser{padding:30px 24px;border-radius:10px 40px 10px 10px;margin-bottom:50px}.analysis-year{font-size:11rem}.product-main,.contact-photo img,.rucher-cover>img{border-top-right-radius:45px}.story-copy{font-size:1rem}.hero-bottom .button{min-width:0}footer{padding-top:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-pending{opacity:1;transform:none}.hero-photo{transform:none}.scroll-progress{display:none}}
