@import url('https://fonts.googleapis.com/css2?family=Marcellus&family=Plus+Jakarta+Sans:wght@300;400;500;600&display=swap');
:root{--bg:#f7f5f0;--paper:#fff;--ink:#252824;--muted:#696d66;--olive:#40543b;--line:#ddd8ce;--soft:#ece8df}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Plus Jakarta Sans',sans-serif;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.wrap{width:min(1240px,calc(100% - 40px));margin:auto}.header{position:sticky;top:0;z-index:20;background:rgba(247,245,240,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font:30px Marcellus;letter-spacing:.16em}.navlinks{display:flex;align-items:center;gap:30px;font-size:14px}.navlinks a:hover{color:var(--olive)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border:1px solid var(--olive);background:var(--olive);color:#fff;cursor:pointer}.btn.outline{background:transparent;color:var(--olive)}.menu{display:none;background:none;border:0;font-size:26px}.hero{min-height:680px;display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;gap:40px;padding:70px 0}.eyebrow{font-size:12px;letter-spacing:.22em;color:var(--olive);font-weight:600}.hero h1,.page-title,h2,h3{font-family:Marcellus;font-weight:400}.hero h1{font-size:clamp(48px,6vw,82px);line-height:1.02;margin:18px 0 24px}.hero p{font-size:18px;color:var(--muted);max-width:560px}.hero-media{background:var(--paper);border:1px solid var(--line);min-height:520px;display:flex;align-items:center;padding:35px;overflow:hidden}.hero-media img{width:100%;transition:.7s}.hero-media:hover img{transform:scale(1.025)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.section{padding:90px 0;border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.section h2{font-size:40px;margin:0}.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:var(--paper);border:1px solid var(--line);transition:.25s}.card:hover{border-color:var(--olive);transform:translateY(-3px)}.card-media{aspect-ratio:4/3;background:var(--soft);display:flex;align-items:center;justify-content:center;overflow:hidden;padding:24px}.card-media img{width:100%;height:100%;object-fit:contain}.placeholder{font:52px Marcellus;color:#a9aa9f}.card-body{padding:22px}.card h3{font-size:24px;margin:5px 0 8px}.meta{font-size:12px;letter-spacing:.12em;color:var(--olive);text-transform:uppercase}.link{color:var(--olive);font-weight:600;font-size:14px}.dark{background:var(--olive);color:#fff}.dark .muted{color:rgba(255,255,255,.75)}.footer{padding:42px 0;border-top:1px solid var(--line)}.footer-row{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.crumb{padding:28px 0 0;color:var(--muted);font-size:13px}.page-title{font-size:56px;margin:20px 0 16px}.toolbar{display:grid;grid-template-columns:1fr auto;gap:16px;margin:36px 0}.search,.select{height:48px;border:1px solid var(--line);background:#fff;padding:0 16px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.chip{border:1px solid var(--line);background:transparent;padding:10px 16px;cursor:pointer}.chip.active{background:var(--olive);color:#fff;border-color:var(--olive)}.product-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;padding:35px 0 80px}.product-image{background:#fff;border:1px solid var(--line);min-height:560px;padding:40px;display:flex;align-items:center;cursor:zoom-in}.product-info h1{font:52px Marcellus;margin:12px 0}.feature-list{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);margin:28px 0}.feature-list div{padding:18px 8px;border-right:1px solid var(--line);font-size:13px}.feature-list div:last-child{border:0}.specs{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.spec{background:#fff;border:1px solid var(--line);padding:22px}.spec strong{display:block;font:23px Marcellus;margin-bottom:8px}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin:38px 0 80px}.location{background:#fff;border:1px solid var(--line);padding:30px}.map{height:260px;background:var(--soft);display:grid;place-items:center;font:34px Marcellus;color:var(--olive)}.lightbox{position:fixed;inset:0;background:rgba(15,17,14,.88);z-index:100;display:none;place-items:center;padding:50px}.lightbox.open{display:grid}.lightbox img{max-height:85vh}.close{position:absolute;right:28px;top:22px;color:white;background:none;border:0;font-size:34px;cursor:pointer}.notice{padding:14px 16px;background:#ebe7dd;border-left:3px solid var(--olive);font-size:14px;margin-top:16px}.about-copy{max-width:800px;font-size:18px}.empty{text-align:center;padding:60px;border:1px solid var(--line);background:#fff;grid-column:1/-1}.hidden{display:none!important}
@media(max-width:800px){.wrap{width:min(100% - 28px,1240px)}.navlinks{position:absolute;top:78px;left:0;right:0;background:var(--bg);padding:24px;display:none;flex-direction:column;border-bottom:1px solid var(--line)}.navlinks.open{display:flex}.menu{display:block}.nav .btn{display:none}.hero{grid-template-columns:1fr;padding:45px 0}.hero-media{min-height:340px;order:-1}.section{padding:62px 0}.grid{grid-template-columns:1fr 1fr}.product-layout{grid-template-columns:1fr;gap:30px}.product-image{min-height:360px}.contact-grid,.specs{grid-template-columns:1fr}.page-title{font-size:42px}.toolbar{grid-template-columns:1fr}.feature-list{grid-template-columns:1fr}.feature-list div{border-right:0;border-bottom:1px solid var(--line)}.feature-list div:last-child{border:0}}
@media(max-width:520px){.grid{grid-template-columns:1fr}.hero h1{font-size:46px}.section-head{align-items:start;flex-direction:column}.product-info h1{font-size:40px}}

.brand-logo{width:178px;height:auto;max-height:55px;object-fit:contain}.footer-logo{width:160px;margin-bottom:12px}@media(max-width:520px){.brand-logo{width:145px}}
/* Centered Riventi identity and immersive homepage */
.nav{position:relative}.nav>.brand{position:absolute;left:50%;transform:translateX(-50%)}.nav>.navlinks{margin-right:auto}.nav>.btn{margin-left:auto}.nav>.menu{margin-right:auto}
.home-page .header{position:absolute;top:0;left:0;width:100%;background:transparent;border:0;backdrop-filter:none;color:white;transition:background .3s,color .3s}
.home-page .header .brand-logo{filter:brightness(0) invert(1)}.home-page .header .btn{background:transparent;border-color:rgba(255,255,255,.5)}.home-page .header .navlinks a:hover{color:#fff;opacity:.75}.home-page .header .nav{height:104px}.home-page .brand-logo{width:200px;max-height:65px}
.full-hero{position:relative;height:100svh;min-height:620px;overflow:hidden;color:white}.full-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;animation:gentle-arrival 1.8s ease-out}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.28),transparent 35%,rgba(0,0,0,.42))}.hero-caption{position:absolute;left:6%;bottom:15%;max-width:650px}.hero-caption .eyebrow{color:white}.hero-caption h1{font:clamp(50px,6vw,88px)/1.06 Marcellus;margin:15px 0 26px}.hero-link{display:inline-block;border-bottom:1px solid #fff;padding-bottom:8px;font-size:15px}.scroll-cue{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);text-align:center;font-size:12px;letter-spacing:.08em}.scroll-cue span{display:block;font-size:24px;margin-top:5px}.hero-product{position:absolute;right:5%;bottom:40px;font-size:12px;letter-spacing:.14em}.flow-intro{text-align:center;padding:120px 24px;max-width:900px;margin:auto}.flow-intro h2{font-size:clamp(38px,4.4vw,60px);line-height:1.18;margin:25px 0}.flow-intro p,.flow-feature-copy p{color:var(--muted);font-size:18px}.text-link{display:inline-block;border-bottom:1px solid var(--olive);padding:10px 0;color:var(--olive);font-size:14px}.flow-feature{display:grid;grid-template-columns:1.3fr .7fr;min-height:650px;background:#ece9e2}.flow-photo{overflow:hidden}.flow-photo img{height:100%;width:100%;object-fit:cover}.flow-feature-copy{align-self:center;padding:60px}.flow-feature-copy h2{font-size:72px;margin:20px 0}.flow-links{display:grid;grid-template-columns:repeat(3,1fr);padding:100px 6%;gap:50px}.flow-links>a{border-top:1px solid var(--line);padding-top:25px}.flow-links span{color:var(--muted);font-size:12px}.flow-links h3{font-size:32px;margin:20px 0 10px}.flow-links p{color:var(--muted);font-size:14px}@keyframes gentle-arrival{from{transform:scale(1.045)}to{transform:scale(1)}}
@media(max-width:1100px) and (min-width:801px){.navlinks{gap:18px;font-size:13px}.brand-logo{width:150px}}
@media(max-width:800px){.home-page .navlinks{color:var(--ink)}.home-page .header .navlinks a:hover{color:var(--olive)}.nav>.menu{color:inherit}.full-hero{min-height:620px}.hero-caption{left:7%;bottom:20%}.hero-caption h1{font-size:52px}.hero-product{bottom:95px;left:7%;right:auto}.flow-intro{padding:80px 24px}.flow-feature{grid-template-columns:1fr}.flow-photo{height:400px}.flow-feature-copy{padding:45px 28px}.flow-feature-copy h2{font-size:54px}.flow-links{grid-template-columns:1fr;padding:65px 28px;gap:30px}.home-page .brand-logo{width:165px}.home-page .header .nav{height:85px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.full-hero-img{animation:none}}
.site-footer{background:#252824;color:#f7f5f0;padding:64px 0 24px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-bottom:45px;border-bottom:1px solid #ffffff24}.footer-top .eyebrow{color:#c6d1bd}.footer-top h2{font-size:38px;line-height:1.2;margin:14px 0}.footer-cta{font-size:14px;border-bottom:1px solid #c6d1bd;padding:10px 0}.footer-columns{display:grid;grid-template-columns:1.2fr .85fr 1fr 1.2fr;gap:38px;padding:48px 0}.footer-brand img{filter:brightness(0) invert(1);width:190px;height:auto}.footer-brand p,.footer-contact p{font-size:14px;color:#c5c7bf;line-height:1.75}.social-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:23px}.social-links a{display:inline-flex;align-items:center;gap:7px;font-size:13px}.social-links svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.footer-group{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.footer-group h3{font:22px Marcellus;margin:0 0 12px}.footer-group a,.footer-group button{font-size:14px;color:#c5c7bf}.footer-group button,.footer-bottom button{padding:0;border:0;background:none;color:inherit;cursor:pointer;text-align:left;font-family:inherit}.footer-group a:hover,.footer-group button:hover,.footer-bottom a:hover,.footer-bottom button:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}.footer-contact p{margin:0}.footer-contact strong{display:block;color:#f7f5f0;font-weight:500;font-size:12px;letter-spacing:.06em;margin-bottom:5px}.footer-contact .footer-phone{color:white;font-size:18px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff24;padding-top:24px;font-size:12px;color:#b7bcb2}.footer-bottom>div{display:flex;gap:22px;flex-wrap:wrap}.cookie-banner{position:fixed;z-index:80;bottom:18px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 32px));background:#f7f5f0;color:#252824;border:1px solid #ddd8ce;box-shadow:0 10px 50px #0003;display:flex;align-items:center;gap:32px;padding:25px 28px}.cookie-banner[hidden],.cookie-feedback[hidden]{display:none}.cookie-banner h2{font:24px Marcellus;margin:0 0 8px}.cookie-banner p{font-size:13px;color:#696d66;margin:0;max-width:600px;line-height:1.6}.cookie-banner p a{text-decoration:underline}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0}.cookie-btn{border:1px solid #40543b;min-height:44px;padding:10px 14px;font-size:12px;cursor:pointer;background:#40543b;color:white}.cookie-btn.secondary{background:transparent;color:#40543b}.cookie-dialog{width:min(640px,calc(100% - 32px));max-height:85svh;overflow:auto;border:1px solid #ddd8ce;background:#f7f5f0;color:#252824;padding:32px}.cookie-dialog::backdrop{background:#10170fc0;backdrop-filter:blur(3px)}.cookie-dialog-head{display:flex;align-items:center;justify-content:space-between}.cookie-dialog-head button{background:none;border:0;font-size:30px;cursor:pointer}.cookie-dialog h2{font:34px Marcellus;margin:20px 0 12px}.cookie-dialog>p{font-size:14px;color:#696d66}.cookie-option{display:flex;justify-content:space-between;gap:18px;padding:20px 0;border-top:1px solid #ddd8ce}.cookie-option h3{font-family:inherit;font-size:15px;margin:0 0 6px}.cookie-option p{font-size:13px;color:#696d66;margin:0;max-width:360px}.cookie-status{font-size:11px;white-space:nowrap;align-self:start;background:#e5e9df;color:#40543b;padding:6px 8px}.cookie-status.off{background:#eae7e0;color:#696d66}.cookie-note{font-size:12px!important;margin-bottom:22px}.cookie-feedback{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#40543b;color:#fff;padding:14px 22px;z-index:100;font-size:14px}.policy{max-width:820px;padding-bottom:85px}.policy h2{font-size:28px;margin-top:38px}.policy p,.policy li{font-size:16px;color:#696d66}.policy .page-title{font-size:46px}.policy ul{padding-left:24px}a:focus-visible,button:focus-visible{outline:2px solid #9bb687;outline-offset:5px}
@media(max-width:1100px){.cookie-banner{align-items:flex-start;flex-direction:column;gap:18px}.cookie-banner p{max-width:none}.footer-columns{grid-template-columns:1fr 1fr;gap:38px}}
@media(max-width:600px){.footer-top{align-items:flex-start;flex-direction:column}.footer-top h2{font-size:30px}.footer-columns{grid-template-columns:1fr;gap:32px}.footer-bottom{flex-direction:column}.cookie-banner{padding:20px;bottom:10px;width:calc(100% - 20px)}.cookie-actions{width:100%}.cookie-btn{flex:1;min-width:110px}.cookie-banner h2{font-size:21px}.cookie-dialog{padding:22px}.cookie-option{flex-direction:column;gap:10px}.policy .page-title{font-size:36px}}
/* Store-first sales flow */
.trust-strip{display:flex;justify-content:center;gap:40px;flex-wrap:wrap;padding:25px 20px;border-bottom:1px solid var(--line);font-size:13px;letter-spacing:.04em}.trust-strip span+span:before{content:'·';margin-right:40px;color:var(--olive)}.home-store{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:90px 0}.home-store-aside{align-self:center}.home-store-aside h2{font-size:46px;line-height:1.2}.home-store-aside p{color:var(--muted);font-size:17px}.store-visit{background:#eeebe3;border:1px solid var(--line);padding:24px;margin:26px 0 20px}.store-visit h2{font-size:27px;line-height:1.25;margin:12px 0}.store-visit p{font-size:14px;color:var(--muted);line-height:1.65}.store-visit address{font-style:normal;font-size:14px;line-height:1.6}.store-hours{display:flex;flex-direction:column;font-size:12px;gap:4px;margin-top:15px;color:var(--muted)}.store-hours strong{font-weight:500;color:var(--ink);margin-left:10px}.store-visit .actions{gap:14px;align-items:center;margin-top:20px}.store-visit .btn{font-size:13px;padding:0 16px}.store-call{font-size:13px;border-bottom:1px solid var(--olive);color:var(--olive)}.store-visit .factory-note{font-size:12px;margin:20px 0 0}.factory-note a{text-decoration:underline;text-underline-offset:3px}.trust-badges{display:flex;flex-wrap:wrap;gap:8px}.trust-badges>*{border:1px solid var(--line);padding:7px 10px;font-size:11px;background:#f0f2eb;color:var(--olive)}.trust-badges a{text-decoration:underline;text-underline-offset:3px}.whatsapp-secondary{width:100%;font-size:14px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.coming-collection{grid-column:1/-1;padding:36px;border:1px solid var(--line);background:#fff}.coming-collection h3{font-size:31px;margin:12px 0}.coming-collection p{color:var(--muted)}.closing-store-cta{padding:45px 0 0;text-align:center}.closing-store-cta h3{font-size:30px;margin:0 0 12px}.closing-store-cta p{color:var(--muted)}.mobile-product-actions{display:none}.contact-details{display:flex;gap:22px;flex-wrap:wrap;font-size:14px;color:var(--olive);margin:28px 0}.btn{transition:transform .3s ease,background .3s ease,color .3s ease,box-shadow .3s ease}.btn:hover,.btn:focus-visible{transform:translateY(-2px)}.action-pulse{animation:action-pulse 5s ease-in-out 3}@keyframes action-pulse{0%,85%,100%{box-shadow:0 0 0 0 #40543b00}92%{box-shadow:0 0 0 5px #40543b15}}.product-image{overflow:hidden}.product-image img{transition:transform .9s ease}.product-image:hover img{transform:scale(1.035)}.lightbox.open{animation:lightbox-in .35s ease}.lightbox.open img{animation:image-in .45s ease}@keyframes lightbox-in{from{opacity:0}to{opacity:1}}@keyframes image-in{from{transform:scale(.97)}to{transform:scale(1)}}.reveal{opacity:0;transform:translateY(-14px);transition:opacity .8s ease var(--reveal-delay,0ms),transform .8s ease var(--reveal-delay,0ms)}.reveal.visible{opacity:1;transform:none}.header,.nav{transition:background .4s ease,height .4s ease,box-shadow .4s ease}.home-page .header{position:fixed}.home-page .header.is-scrolled{background:rgba(247,245,240,.97);color:var(--ink);box-shadow:0 1px 0 var(--line)}.home-page .header.is-scrolled .nav,.header.is-scrolled .nav{height:74px}.home-page .header.is-scrolled .brand-logo{filter:none}.home-page .header.is-scrolled .navlinks a:hover{color:var(--olive)}.home-page .header.is-scrolled .btn{border-color:var(--olive);color:var(--olive)}.header .nav>.btn{font-size:12px;padding:0 14px}.full-hero-img{animation:hero-drift 22s ease-out forwards}@keyframes hero-drift{from{transform:scale(1)}to{transform:scale(1.035)}}body{animation:page-enter .45s ease;transition:opacity .15s ease}body.page-leaving{opacity:0}@keyframes page-enter{from{opacity:.5}to{opacity:1}}:target{scroll-margin-top:95px}
@media(max-width:800px){.home-store{grid-template-columns:1fr;gap:10px;padding:50px 0}.home-store-aside h2{font-size:34px}.trust-strip{gap:12px;font-size:12px}.trust-strip span+span:before{margin-right:12px}.related-grid{grid-template-columns:1fr}.mobile-product-actions{position:fixed;left:0;right:0;bottom:0;z-index:45;display:flex;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#f7f5f0f5;border-top:1px solid var(--line);backdrop-filter:blur(10px)}.mobile-product-actions a{flex:1;font-size:14px}.inner-page:has(.mobile-product-actions){padding-bottom:85px}.cookie-banner{bottom:100px}.cookie-feedback{bottom:105px}.store-visit{padding:20px}.store-visit .actions{align-items:stretch;flex-direction:column}.store-call{align-self:flex-start}.nav>#primary-navigation{display:flex;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-12px);transition:opacity .3s,transform .3s,visibility .3s}.nav>#primary-navigation.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}.contact-details{flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}body.page-leaving{opacity:1}}
/* Riventi motion and digital catalogue */
:root{--motion-ease:cubic-bezier(.22,.61,.36,1);--reveal-time:900ms;--parallax-y:0px}
body{animation:page-enter .6s ease;overflow-x:hidden}.header,.home-page .header{position:fixed;width:100%;transition:transform .55s var(--motion-ease),background .4s ease;z-index:60}.inner-page{padding-top:78px}.header.header-hidden{transform:translateY(-110%)}.nav{transition:none}.menu{display:flex!important;align-items:center;gap:12px;position:relative;z-index:2;color:inherit;cursor:pointer;font-size:24px;padding:12px 0;min-width:90px}.menu-label{font-size:12px;letter-spacing:.12em}.nav>.brand,.nav>.btn{z-index:2}.nav>#primary-navigation{position:fixed;inset:0;top:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:16px;background:var(--bg);padding:110px max(7vw,28px) 45px;border:0;color:var(--ink);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-18px);transition:opacity .55s ease,transform var(--menu-time,650ms) var(--motion-ease),visibility .65s;overflow-y:auto;height:100svh;margin:0}.nav>#primary-navigation.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}.navlinks>a{font:clamp(32px,5vw,65px)/1.3 Marcellus;opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .75s var(--motion-ease)}.navlinks.open>a{opacity:1;transform:none}.navlinks>a:nth-child(2){transition-delay:70ms}.navlinks>a:nth-child(3){transition-delay:140ms}.navlinks>a:nth-child(4){transition-delay:210ms}.menu-meta{display:flex;gap:28px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:28px;margin-top:25px;font-size:14px}.menu-open .header,.home-page.menu-open .header{background:var(--bg);color:var(--ink)}.menu-open .header .brand-logo{filter:none}.menu-open .header .btn{color:var(--olive);border-color:var(--olive)}.home-page .header .navlinks a:hover{color:var(--olive)}
.scroll-progress{position:fixed;left:0;top:0;width:100%;height:2px;background:#a5b293;transform:scaleX(0);transform-origin:left;z-index:150;pointer-events:none}.page-curtain{position:fixed;inset:0;background:var(--bg);transform:translateY(100%);transition:transform var(--transition-time,280ms) ease;z-index:160;pointer-events:none}.page-curtain.closing{transform:translateY(0)}.brand-loader{position:fixed;inset:0;background:var(--bg);z-index:170;display:grid;place-items:center;transition:transform var(--menu-time,650ms) var(--motion-ease);pointer-events:none}.brand-loader img{width:clamp(180px,23vw,290px);animation:logo-arrival .8s ease both}.brand-loader.leaving{transform:translateY(-100%)}@keyframes logo-arrival{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.full-hero-img{animation:hero-ken-burns var(--hero-time,19000ms) var(--motion-ease) forwards;will-change:transform;transform:scale(1.13)}@keyframes hero-ken-burns{from{transform:translate3d(0,var(--parallax-y),0) scale(1.13)}to{transform:translate3d(0,var(--parallax-y),0) scale(1.04)}}.hero-line{display:block;overflow:hidden;padding-bottom:.05em}.hero-line>span{display:block;transform:translateY(115%);transition:transform var(--intro-time,1300ms) var(--motion-ease)}.hero-ready .hero-line>span{transform:none}.hero-ready .hero-line:nth-child(2)>span{transition-delay:160ms}.hero-caption .hero-link{opacity:0;transition:opacity 1s .5s ease,transform .4s ease}.hero-ready .hero-caption .hero-link{opacity:1}.scroll-cue span{animation:cue-float var(--cue-time,2700ms) ease-in-out infinite}@keyframes cue-float{50%{transform:translateY(8px)}}
.reveal{transition:opacity var(--reveal-time) ease var(--reveal-delay,0ms),transform var(--reveal-time) var(--motion-ease) var(--reveal-delay,0ms);transform:translateY(-22px)}.flow-photo{position:relative}.flow-photo:after{content:'';position:absolute;inset:0;background:#ece9e2;transform:translateY(0);transition:transform var(--image-time,1250ms) var(--motion-ease);pointer-events:none}.flow-photo.visible:after{transform:translateY(-101%)}.trust-badges>.reveal{transform:translateY(8px) scale(.95)}.trust-badges>.visible{transform:none}.flow-photo img{min-height:100%;object-fit:cover}.btn{position:relative;isolation:isolate;overflow:hidden;transition:transform .35s ease,color .3s ease}.btn:before{content:'';position:absolute;inset:0;background:#ffffff12;z-index:-1;transform:translateX(-101%);transition:transform .5s var(--motion-ease)}.btn:hover:before,.btn:focus-visible:before{transform:none}.action-pulse{animation:none}.action-pulse:after{content:'';position:absolute;inset:3px;border:1px solid currentColor;opacity:0;animation:gentle-pulse var(--pulse-time,5000ms) ease-in-out 3;pointer-events:none}@keyframes gentle-pulse{85%{opacity:0;transform:scale(.98)}93%{opacity:.25;transform:scale(1)}100%{opacity:0;transform:scale(1.03)}}
.horizontal-story{height:240vh;background:#eeebe4}.horizontal-sticky{height:100svh;position:sticky;top:0;overflow:hidden;padding:9vh 0 4vh}.horizontal-heading h2{font-size:clamp(28px,3.3vw,44px);margin:14px 0 26px}.horizontal-track{display:flex;gap:4vw;width:max-content;padding:0 6vw 0;will-change:transform}.story-card{width:66vw;max-width:850px;flex-shrink:0}.story-image{height:42vh;min-height:220px;overflow:hidden;background:#252824;margin-bottom:20px}.story-image img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--motion-ease)}.catalog-story .story-image img{object-fit:contain}.story-card:hover .story-image img{transform:scale(1.045)}.story-card h3{font-size:34px;margin:6px 0}.story-card p{margin:5px 0;color:var(--muted);font-size:14px}.story-card .text-link{padding:5px 0}.story-card:focus-visible{outline-offset:-3px}.catalog-teaser{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding:120px 0}.catalog-teaser h2{font-size:clamp(38px,4vw,54px);line-height:1.15}.catalog-teaser p{color:var(--muted)}.book-mockup{position:relative;display:block;transform:perspective(1200px) rotateY(-16deg) rotateZ(-3deg);box-shadow:22px 24px 30px #25282430;transition:transform var(--hover-time,900ms) var(--motion-ease)}.book-mockup img{width:100%;height:auto;aspect-ratio:1600 / 1132;object-fit:contain}.book-mockup:before{content:'';position:absolute;left:-9px;top:0;bottom:0;width:9px;background:#353d44;transform:skewY(-12deg);transform-origin:right}.book-mockup:hover{transform:perspective(1200px) rotateY(-6deg) rotateZ(0)}.inspect-cursor{position:fixed;left:-42px;top:-42px;width:84px;height:84px;border-radius:50%;display:grid;place-items:center;background:#f7f5f0e8;color:var(--olive);font-size:12px;z-index:90;pointer-events:none;opacity:0;transition:opacity .25s ease}.inspect-cursor.active{opacity:1}.product-image{position:sticky;top:100px;align-self:start;height: min(65vh,650px);min-height:400px}.product-image img{width:100%;animation:product-arrival 1.7s var(--motion-ease) both}@keyframes product-arrival{from{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.product-image:hover img{animation:none;transform:scale(1.04)}.card-media img{transition:transform var(--hover-time,900ms) var(--motion-ease)}.card:hover .card-media img{transform:scale(1.045)}.card .link{display:inline-block;transition:transform .4s ease}.card:hover .link{transform:translateX(5px)}
.catalog-main{padding-top:35px}.catalog-heading{padding-bottom:35px;text-align:center}.catalog-heading h1{font:clamp(40px,5vw,62px) Marcellus;margin:16px 0}.catalog-heading p{color:var(--muted);font-size:14px}.catalog-reader{background:#252824;color:var(--bg);padding:30px;min-height:540px;position:relative}.catalog-reader:fullscreen{width:100%;height:100%;overflow:auto;padding:25px}.catalog-cover{display:flex;flex-direction:column;align-items:center;gap:24px;padding:50px 0 20px;perspective:1600px}.cover-book{width:min(520px,85%);position:relative;transform:rotateY(-15deg) rotateZ(-3deg);transform-origin:left;box-shadow:25px 28px 35px #0007;transition:transform .8s var(--motion-ease),opacity .5s ease}.cover-book img{width:100%;height:auto}.cover-spine{position:absolute;top:0;bottom:0;left:-8px;width:8px;background:#455054;transform:skewY(-20deg)}.cover-open .cover-book{transform:rotateY(-80deg);opacity:0}.catalog-cover p{color:#c5c7bf;font-size:12px;margin:0}.catalog-cover .btn{border-color:#b9c5ac;background:#40543b;min-width:180px}.catalog-toolbar{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;align-items:center;padding:0 0 22px}.catalog-toolbar button,.catalog-toolbar>a,.zoom-toolbar button{border:1px solid #ffffff40;color:inherit;background:transparent;min-height:40px;padding:8px 12px;font-size:12px;cursor:pointer;transition:transform .25s ease,opacity .25s ease}.catalog-toolbar button:hover,.zoom-toolbar button:hover{transform:translateY(-2px)}.catalog-toolbar button:disabled{opacity:.35;cursor:default}.catalog-toolbar #catalogNext,.catalog-toolbar #catalogPrev{font-size:24px;padding:0 14px}.catalog-toolbar button[aria-pressed=true]{background:#40543b}.toolbar-divider{width:1px;height:25px;background:#ffffff40;margin:0 4px}#catalogPage{min-width:135px;text-align:center;font-size:12px}.catalog-stage{width:100%;min-height:350px;display:flex;justify-content:center;align-items:center;padding:12px 0;overflow:hidden}.catalog-stage #flipBook{margin:auto;width:100%;max-width:1240px}.catalog-page{background:#fff;overflow:hidden}.catalog-page img{width:100%;height:100%;object-fit:contain;user-select:none}.catalog-tip{font-size:12px;text-align:center;color:#c5c7bf}.catalog-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:14px;max-height:360px;overflow:auto;padding:20px 4px;border-top:1px solid #ffffff30}.thumbnail-button{background:none;color:var(--bg);border:1px solid #ffffff35;padding:5px;cursor:pointer}.thumbnail-button img{aspect-ratio:1.414;object-fit:contain;width:100%;height:auto}.thumbnail-button span{display:block;padding:6px;font-size:11px}.thumbnail-button[aria-current=page]{outline:2px solid #a5b293}.catalog-error{background:#ffffff10;padding:16px;font-size:14px}.catalog-sales{display:flex;align-items:center;justify-content:space-between;gap:45px;padding:85px 0}.catalog-sales h2{font-size:40px;margin:15px 0}.catalog-sales p{color:var(--muted)}.catalog-sales .actions{flex-shrink:0}.catalog-zoom-dialog{width:min(1500px,96vw);height:94svh;max-height:94svh;max-width:96vw;padding:16px;background:#252824;color:var(--bg);border:1px solid #ffffff30;overflow:hidden}.catalog-zoom-dialog::backdrop{background:#10170fe8}.zoom-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:12px}.zoom-toolbar h2{font:18px Marcellus;margin:0 auto 0 0}.zoom-pan{height:calc(100% - 105px);overflow:hidden;display:flex;align-items:center;justify-content:center;touch-action:none}.zoom-pan img{max-width:100%;max-height:100%;object-fit:contain;user-select:none;transform-origin:center;cursor:grab}.zoom-pan img.zoomed{cursor:move}.zoom-help{font-size:12px;text-align:center;color:#c5c7bf}
[hidden]{display:none!important}
@media(max-width:899px){.horizontal-story{height:auto;padding:55px 0}.horizontal-sticky{height:auto;position:relative;padding:0;overflow:visible}.horizontal-track{width:100%;padding:0 20px 25px;overflow-x:auto;scroll-snap-type:x proximity;gap:22px;will-change:auto}.story-card{width:82vw;max-width:550px;scroll-snap-align:center}.story-image{height:32vh;min-height:220px}.horizontal-heading h2{font-size:32px}.catalog-teaser{grid-template-columns:1fr;gap:45px;padding:65px 20px}.book-mockup{max-width:500px;margin:auto}.catalog-teaser h2{font-size:36px}.inspect-cursor{display:none}.product-image{position:relative;top:auto;min-height:320px;height:auto}.catalog-reader{padding:18px 10px;min-height:380px}.catalog-cover{padding:35px 0}.catalog-stage{min-height:230px}.catalog-toolbar{gap:6px}.catalog-toolbar button,.catalog-toolbar>a{padding:8px;font-size:11px}.catalog-sales{align-items:flex-start;flex-direction:column;gap:12px;padding:60px 0}.catalog-sales h2{font-size:34px}.catalog-sales .actions{margin-top:5px;flex-shrink:1}.zoom-toolbar h2{width:100%;margin-bottom:5px}.zoom-toolbar{gap:6px}.zoom-toolbar button{font-size:11px;padding:7px 10px}.zoom-pan{height:calc(100% - 140px)}.menu-label{font-size:11px}.hero-caption h1{font-size:clamp(44px,9vw,62px)}}
@media(prefers-reduced-motion:reduce){.brand-loader,.inspect-cursor,.page-curtain{display:none!important}.hero-line>span,.hero-caption .hero-link{transform:none;opacity:1}.flow-photo:after{display:none}.horizontal-story{height:auto;padding:55px 0}.horizontal-sticky{height:auto;position:relative;padding:0}.horizontal-track{transform:none!important;width:100%;overflow-x:auto;padding:0 20px 25px;will-change:auto}.story-card{width:min(80vw,650px)}.full-hero-img{transform:none!important;will-change:auto}.book-mockup{transform:none}.product-image img{transform:none!important}}

/* A missing script or observer must never conceal the product image. */
.flow-photo:not(.reveal):after{display:none}
/* Catalogue-derived collections, using Riventi's established card language. */
.home-collections{padding-block:95px}.home-collections .section-head h2{font-size:clamp(34px,4vw,48px);margin-top:16px}.home-collections .card-media{background:#fff}.home-collections .grid{row-gap:30px}.collection-category-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px;margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}.collection-category-links a{font-size:14px;color:var(--olive);padding:8px 0;border-bottom:1px solid transparent}.collection-category-links a:hover,.collection-category-links a:focus-visible{border-bottom-color:var(--olive)}.card-media{background:#fff}.card-body .meta{font-size:12px}.product-image img{max-height:100%;object-fit:contain}.product-info .feature-list div{overflow-wrap:anywhere}#productCount{font-size:14px;margin-bottom:24px}.filters .chip{min-height:44px}.home-collections .card h3{font-size:25px}@media(max-width:800px){.home-collections{padding-block:60px}.collection-category-links{justify-content:flex-start;gap:8px 18px}.home-collections .section-head h2{font-size:34px}}
/* Riventi centred navigation and site search */
.header .nav{width:calc(100% - 72px);max-width:none;height:96px;position:relative;gap:24px}.header .desktop-navigation{display:flex;align-items:center;gap:26px;font-size:14px}.header-link{border:0;background:none;color:inherit;cursor:pointer;padding:12px 0;font-size:14px}.desktop-navigation a,.header-tools>a{padding-block:12px}.header .nav>.brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0}.header .brand-logo{width:185px;max-width:none;height:auto}.header-tools{display:flex;align-items:center;gap:24px;margin-left:auto;position:relative;z-index:2;font-size:14px}.header-tools .menu{min-width:36px;padding:8px 0}.header-tools .menu-label{display:none}.search-toggle{display:grid;place-items:center;width:40px;height:44px;padding:8px;border:0;background:none;color:inherit;cursor:pointer}.search-toggle svg,.search-input-line svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6}.header .collection-navigation{position:absolute;top:100%;left:0;right:0;background:var(--bg);color:var(--ink);border-bottom:1px solid var(--line);padding:34px 0 42px;animation:page-enter .3s ease}.collection-navigation[hidden]{display:none}.mega-layout{display:grid;grid-template-columns:190px 1fr;gap:38px}.mega-all{border-right:1px solid var(--line);padding:12px 25px 12px 0;font-size:14px}.mega-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 26px;font-size:14px}.mega-categories a:hover,.desktop-navigation a:hover,.header-link:hover{color:var(--olive)}.home-page .header:has(.collection-navigation:not([hidden])){background:var(--ink);color:#fff}.home-page .header:has(.collection-navigation:not([hidden])) .brand-logo{filter:brightness(0) invert(1)}.home-page .header .collection-navigation{background:var(--ink);color:#fff;border-color:#ffffff22}.home-page .mega-all{border-color:#ffffff35}.home-page .mega-categories a:hover{color:#fff;text-decoration:underline}.menu-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 32px;margin-top:15px;font-size:14px;max-width:650px}.menu-categories a{padding:4px 0}.menu-open .header-tools,.menu-open .desktop-navigation{z-index:2;color:var(--ink)}.inner-page{padding-top:96px}.site-search{position:fixed;inset:0;width:100%;max-width:none;height:100svh;max-height:none;margin:0;padding:0;border:0;background:var(--bg);color:var(--ink);z-index:110}.site-search::backdrop{background:#25282499}.site-search[open]{animation:page-enter .35s ease}.search-shell{width:min(1040px,calc(100% - 56px));margin:70px auto 90px}.search-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:35px}.search-heading h2{font:clamp(32px,5vw,54px) Marcellus;margin:0}.search-close{border:0;background:none;font-size:36px;cursor:pointer;color:inherit;min-width:44px;min-height:44px}.search-shell label{font-size:14px}.search-input-line{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--ink);padding:12px 0;margin-top:10px}.search-input-line input{width:100%;font-size:clamp(18px,3vw,28px);border:0;background:none;padding:12px 0;color:inherit;outline-offset:5px}.search-status{color:var(--muted);font-size:14px;margin:26px 0}.site-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 25px}.search-result{display:flex;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);min-width:0}.search-result img{width:110px;height:80px;object-fit:contain;background:#fff}.search-result strong{display:block;font:22px Marcellus}.search-result small{color:var(--muted);font-size:14px}.search-result:hover strong{text-decoration:underline}.search-result:focus-visible{outline:2px solid var(--olive);outline-offset:5px}.header.is-scrolled .nav{height:78px}.header-tools .language-switch{min-width:32px;text-align:center}
@media(max-width:1150px){.header .desktop-navigation{gap:16px}.header-tools{gap:14px}.header .nav{width:calc(100% - 40px)}.header .brand-logo{width:155px}}
@media(max-width:950px){.header .desktop-navigation,.header-contact{display:none}.header .nav{height:78px;justify-content:flex-end}.header .brand-logo{width:145px}.header-tools{gap:12px}.inner-page{padding-top:78px}.menu-categories{gap:10px 24px}.mega-categories{grid-template-columns:repeat(2,1fr)}.search-shell{margin-top:30px}.site-search-results{grid-template-columns:1fr}.search-result img{width:90px;height:70px}}
@media(max-width:430px){.header .brand-logo{width:115px}.header .nav>.brand{left:18px;transform:translateY(-50%)}.header .nav{width:100%;padding-inline:18px}.header-tools{gap:9px}.search-shell{width:calc(100% - 36px)}.nav>#primary-navigation{padding-top:95px;justify-content:flex-start}.navlinks>a{font-size:32px}.menu-categories{font-size:14px}.search-result strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){.site-search[open],.header .collection-navigation{animation:none}}
@media(max-width:430px){.header .nav>.brand{left:50%;transform:translate(-50%,-50%)}.header .brand-logo{width:clamp(95px,26vw,115px)}.header-tools .language-switch{position:fixed;left:18px;top:17px;min-width:32px;min-height:44px;padding-block:12px}.header-tools{gap:9px}.header-tools .menu{min-width:30px}.search-toggle{width:36px}.header .nav{padding-inline:18px}}
/* Catalogue photography rotates without moving the hero layout. */
.full-hero .hero-slide{opacity:0;animation:hero-ken-burns var(--hero-slide-time,6500ms) var(--motion-ease) forwards;animation-play-state:paused;transition:opacity var(--hero-fade-time,1200ms) ease;pointer-events:none}.full-hero .hero-slide.is-active{opacity:1;animation-play-state:running}.hero-controls{position:absolute;left:6%;bottom:32px;display:flex;align-items:center;gap:18px}.hero-dots{display:flex;gap:2px}.hero-dots button{width:32px;height:44px;padding:10px;border:0;background:none;cursor:pointer;display:grid;place-items:center}.hero-dots button:after{content:'';width:7px;height:7px;border-radius:50%;background:#ffffff77;transition:transform .35s,background .35s}.hero-dots button.active:after{background:#fff;transform:scale(1.3)}.hero-play{width:44px;height:44px;display:grid;place-items:center;background:none;color:#fff;border:1px solid #ffffff65;border-radius:50%;cursor:pointer;font-size:18px}.hero-controls button:focus-visible{outline:2px solid #fff;outline-offset:3px}.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}.hero-product{max-width:40%;text-align:right;line-height:1.5;font-size:14px}.hero-link{position:relative}.hero-controls,.hero-product{z-index:1}@media(max-width:800px){.hero-controls{left:7%;bottom:28px;gap:10px}.hero-product{max-width:86%;text-align:left;bottom:92px}.full-hero .scroll-cue{left:auto;right:7%;bottom:33px;transform:none;font-size:0}.full-hero .scroll-cue span{font-size:24px}.hero-dots button{width:29px}.hero-caption{bottom:22%}}@media(prefers-reduced-motion:reduce){.full-hero .hero-slide{transition:none;animation:none!important}.full-hero .hero-slide.is-active{animation:none!important}.hero-dots button:after{transition:none}}

.hero-play[hidden]{display:none}

/* Editorial product discovery: shared Riventi palette and type, real catalogue imagery. */
.home-editorial{display:grid;grid-template-columns:1.35fr .65fr;gap:8%;align-items:center;padding-block:100px 75px}.home-editorial-copy{max-width:740px}.home-editorial h2{font-size:clamp(36px,4.2vw,60px);line-height:1.12;margin:22px 0}.home-editorial p{font-size:16px;line-height:1.8;color:var(--muted);margin:18px 0}.editorial-image{display:block;overflow:hidden;max-width:370px;justify-self:end}.editorial-image img{width:100%;height:auto;display:block;transition:transform var(--hover-time,900ms) var(--motion-ease)}.editorial-image:hover img{transform:scale(1.035)}.category-showcase{padding:0 0 72px}.category-rail{display:flex;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 4vw 12px;scroll-padding-inline:4vw}.category-rail::-webkit-scrollbar{display:none}.category-tile{flex:0 0 clamp(240px,24vw,390px);scroll-snap-align:start;text-align:center;display:block}.category-photo{aspect-ratio:4/3;overflow:hidden;background:#ece9e2;display:grid;place-items:center}.category-photo img{width:100%;height:100%;object-fit:contain;transition:transform var(--hover-time,900ms) var(--motion-ease)}.category-tile:hover img,.category-tile:focus-visible img{transform:scale(1.025)}.category-tile h3{font:20px/1.3 Marcellus;margin:18px 8px 7px}.category-tile>span{font-size:14px;color:var(--olive)}.rail-toolbar{display:flex;align-items:center;justify-content:space-between;margin:14px 4vw 0}.rail-count{font-size:14px;color:var(--muted)}.rail-buttons{display:flex;gap:9px}.rail-buttons button{background:transparent;border:1px solid var(--line);width:44px;height:44px;font-size:25px;color:var(--olive);cursor:pointer;transition:background .3s,color .3s}.rail-buttons button:hover{background:var(--olive);color:#fff}.rail-buttons button:disabled{opacity:.35;cursor:default;background:transparent;color:var(--olive)}.home-curated{padding-block:55px 100px}.home-curated .section-head{align-items:end;margin-bottom:38px;gap:24px}.home-curated h2{font-size:clamp(34px,3.7vw,52px);line-height:1.15;margin:16px 0 0}.curated-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 36px}.collection-feature-photo{display:block;aspect-ratio:16/10;background:#ece9e2;overflow:hidden}.collection-feature-photo img{width:100%;height:100%;object-fit:contain;transition:transform var(--hover-time,900ms) var(--motion-ease)}.collection-feature-photo:hover img{transform:scale(1.025)}.collection-feature-copy{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0 0}.collection-feature-copy .eyebrow{font-size:12px}.collection-feature h3{font:clamp(24px,2.1vw,32px)/1.2 Marcellus;margin:9px 0 0}.collection-feature-copy .text-link{flex-shrink:0}.category-tile:focus-visible,.editorial-image:focus-visible,.collection-feature-photo:focus-visible{outline:2px solid var(--olive);outline-offset:4px}.category-rail:focus-visible{outline:2px solid var(--olive);outline-offset:-2px}
@media(max-width:800px){.home-editorial{grid-template-columns:1fr;gap:30px;padding-block:65px 45px}.home-editorial-copy{max-width:none}.editorial-image{justify-self:stretch;max-width:none;height:280px}.editorial-image img{height:100%;object-fit:contain;background:#ece9e2}.category-showcase{padding-bottom:35px}.category-rail{padding-inline:6%;scroll-padding-inline:6%;gap:16px}.category-tile{flex-basis:78vw;max-width:360px}.category-tile h3{font-size:22px}.rail-toolbar{margin-inline:6%}.home-curated{padding-block:40px 65px}.home-curated .section-head{align-items:start;flex-direction:column;gap:16px}.curated-grid{grid-template-columns:1fr;gap:36px}.collection-feature-copy{padding-top:18px}.collection-feature h3{font-size:26px}.collection-feature-copy .eyebrow{font-size:12px}}
@media(prefers-reduced-motion:reduce){.category-rail{scroll-behavior:auto}.category-photo img,.editorial-image img,.collection-feature-photo img{transition:none!important;transform:none!important}}

/* Home-only Instagram invitation; own collection images, no third-party embed. */
.home-social{background:#ece9e2;padding:100px 0}.home-social-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:8%;align-items:center}.social-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px;position:relative}.social-gallery-main{grid-column:1/-1;position:relative;aspect-ratio:16/10;overflow:hidden}.social-gallery-main img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--motion-ease)}.social-gallery-label{position:absolute;left:20px;bottom:18px;background:#f7f5f0ed;padding:10px 14px;font-size:14px;color:var(--ink)}.social-gallery-small{aspect-ratio:4/3;overflow:hidden;background:var(--bg,#f7f5f0)}.social-gallery-small img{width:100%;height:100%;object-fit:contain;display:block;transition:transform 1.2s var(--motion-ease)}.social-gallery:hover img{transform:scale(1.025)}.social-copy h2{font-size:clamp(36px,3.8vw,54px);line-height:1.15;margin:22px 0}.social-copy>p{color:var(--muted);font-size:16px;line-height:1.85;max-width:470px}.social-invitation{border-left:2px solid var(--olive);padding-left:20px;margin:30px 0}.social-invitation>span{font:23px/1.3 Marcellus;color:var(--ink)}.social-invitation p{font-size:14px;line-height:1.7;color:var(--muted);margin:10px 0 0}.social-follow{margin-top:4px;text-align:center;white-space:normal}.social-handle{display:block;width:fit-content;font-size:16px;letter-spacing:.04em;color:var(--olive);margin-top:18px;padding:4px 0;border-bottom:1px solid transparent}.social-handle:hover{border-bottom-color:var(--olive)}.social-gallery:focus-visible{outline:2px solid var(--olive);outline-offset:5px}
@media(max-width:800px){.home-social{padding:60px 0}.home-social-inner{grid-template-columns:1fr;gap:36px}.social-copy{grid-row:1}.social-copy h2{font-size:clamp(34px,8vw,44px)}.social-copy>p{max-width:none}.social-gallery{gap:10px}.social-gallery-label{left:12px;bottom:12px;font-size:12px;padding:8px 10px}.social-follow{width:100%;font-size:14px}.social-invitation{margin:24px 0}.social-invitation>span{font-size:22px}}
@media(prefers-reduced-motion:reduce){.social-gallery img{transform:none!important;transition:none!important}}

/* Keep the last product row clear of the footer. */
.product-listing{padding-bottom:96px}@media(max-width:800px){.product-listing{padding-bottom:64px}}
/* Full-screen catalogue uses the available viewport instead of its inline 1240px cap. */
.catalog-reader:fullscreen{width:100%;max-width:none;height:100%;min-height:0;margin:0;overflow:hidden;padding:24px;box-sizing:border-box}.catalog-reader:fullscreen #catalogContent:not([hidden]){height:100%;display:flex;flex-direction:column}.catalog-reader:fullscreen .catalog-toolbar{flex:0 0 auto;padding-bottom:14px}.catalog-reader:fullscreen .catalog-stage{flex:1 1 0;min-height:0;padding:8px 0}.catalog-reader:fullscreen #flipBook{height:100%!important;width:100%!important;max-width:none!important;min-height:0!important;min-width:0!important}.catalog-reader:fullscreen .stf__wrapper{height:100%!important;padding-bottom:0!important}.catalog-reader:fullscreen .catalog-tip{flex:0 0 auto;margin:12px 0 0}.catalog-reader:fullscreen .catalog-thumbnails:not([hidden]){flex:0 0 auto;max-height:140px;padding-block:12px}.catalog-reader:fullscreen .catalog-error:not([hidden]){flex:0 0 auto}
@media(max-width:800px){.catalog-reader:fullscreen{padding:12px}.catalog-reader:fullscreen .catalog-toolbar{gap:5px;padding-bottom:8px}.catalog-reader:fullscreen .catalog-tip{font-size:11px;margin-top:8px}.catalog-reader:fullscreen .catalog-thumbnails:not([hidden]){max-height:110px}}

/* Official Instagram profile preview, scoped to the home page. */
.home-social-inner{grid-template-columns:1fr 1fr;gap:8%}.social-preview{width:100%;max-width:428px;justify-self:center;background:#fff;border:1px solid var(--line);padding:14px;border-radius:12px;box-shadow:0 18px 50px #2528240c;overflow:hidden}.social-preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 6px 20px;font-size:14px;color:var(--olive)}.social-preview-header>span{letter-spacing:.1em;font-size:12px}.social-profile-frame{display:block;width:100%;height:560px;border:0;border-radius:8px;background:#fff}.social-preview-fallback{font-size:14px;line-height:1.6;text-align:center;color:var(--muted);margin:16px 0 4px}.social-preview-fallback a{color:var(--olive);text-decoration:underline;text-underline-offset:3px}@media(max-width:800px){.home-social-inner{grid-template-columns:1fr;gap:32px}.social-preview{padding:10px;max-width:420px}.social-profile-frame{height:500px}}@media(max-width:380px){.social-profile-frame{height:480px}.social-preview-header{font-size:13px}}

/* Consistent editorial rhythm for product descriptions and specifications. */
.product-info h1{font-size:clamp(32px,3.5vw,46px);line-height:1.18;margin-bottom:22px;text-wrap:balance}.product-info>p.muted:first-of-type{font-size:17px;line-height:1.85;max-width:60ch;margin:0 0 26px;text-wrap:pretty}.feature-list{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-list div{display:flex;flex-direction:column;gap:9px;padding:18px 12px;min-width:0}.feature-list span{font-size:12px;line-height:1.4;color:var(--muted)}.feature-list strong{font-size:14px;font-weight:500;line-height:1.55;overflow-wrap:break-word}.product-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px}.product-story-grid article:only-child{grid-column:1/-1;max-width:760px}.product-story-grid h3{font-size:27px;line-height:1.3;margin:0 0 18px}.product-story-grid p,.product-story-grid li{font-size:16px;line-height:1.85;color:var(--muted)}.product-story-grid p{margin:0;max-width:65ch}.product-story-grid ul{list-style:none;padding:0;margin:0}.product-story-grid li{border-bottom:1px solid var(--line);padding:9px 0}.product-story-grid li:first-child{padding-top:0}.spec{line-height:1.75;overflow-wrap:break-word}.spec strong{font-size:21px;line-height:1.35;margin-bottom:12px}.card{display:flex;flex-direction:column}.card-media{flex:0 0 auto}.card-body{display:flex;flex-direction:column;align-items:start;flex:1}.card-body h3{line-height:1.3;margin-top:10px}.card-body p{font-size:15px;line-height:1.75;margin:8px 0 20px}.card-body .link{margin-top:auto;padding-block:4px}.product-story .section-head h2{font-size:clamp(30px,3.2vw,42px)}
@media(max-width:800px){.product-info>p.muted:first-of-type{font-size:16px;line-height:1.8}.feature-list{grid-template-columns:1fr}.feature-list div{display:grid;grid-template-columns:minmax(90px,.8fr) minmax(0,1.2fr);gap:16px;padding:15px 8px;align-items:start}.feature-list span{font-size:13px}.feature-list strong{font-size:14px}.product-story-grid{grid-template-columns:1fr;gap:32px}.product-story-grid h3{font-size:25px}.product-info h1{font-size:36px}}

/* Two address-based Google Maps previews on the contact page. */
.location-map{height:320px;background:var(--soft);overflow:hidden}.location-map iframe{display:block;width:100%;height:100%;border:0}.location h2{font-size:30px;line-height:1.25;margin:25px 0 14px}.location>p{font-size:16px;line-height:1.75}.location .actions{margin-top:22px}.location .actions .btn{font-size:14px}@media(max-width:800px){.location-map{height:280px}.location{padding:22px}.location h2{font-size:28px}}@media(max-width:380px){.location .actions{gap:10px}.location .actions .btn{padding-inline:16px}}

/* Collection landing: editorial imagery, open product layouts and compact browsing. */
.collection-page{width:min(1600px,calc(100% - 80px));padding-bottom:90px}.collection-intro{padding:20px 0 52px}.collection-intro .crumb{padding-top:12px}.collection-title-row{display:grid;grid-template-columns:1.1fr .9fr;gap:8%;align-items:end;padding-top:36px}.collection-title-row h1{font:clamp(58px,6.8vw,104px)/1.04 Marcellus;margin:20px 0 0;letter-spacing:-.025em}.collection-intro-copy{max-width:460px;justify-self:end}.collection-intro-copy p{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 12px}.collection-covers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;align-items:start;margin-bottom:96px}.collection-cover{display:block;overflow:hidden}.collection-cover:nth-child(2){margin-top:74px}.collection-cover-media{position:relative;overflow:hidden;background:#e6e3dc}.collection-cover-media img{width:100%;height:auto;display:block;transition:transform 1.3s var(--motion-ease)}.collection-cover-media:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,#11180ee3);pointer-events:none}.collection-cover-caption{position:absolute;bottom:30px;left:32px;right:32px;color:white;z-index:1}.collection-cover-caption>span:first-child{font-size:14px;letter-spacing:.1em}.collection-cover-caption h2{font:clamp(40px,4.5vw,72px)/1.12 Marcellus;margin:10px 0 18px}.collection-cover-link{display:inline-block;font-size:14px;padding-bottom:6px;border-bottom:1px solid #ffffffb3}.collection-cover:hover img{transform:scale(1.025)}.collection-cover:focus-visible{outline:2px solid var(--olive);outline-offset:5px}.collection-browser{scroll-margin-top:110px}.collection-browser-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:32px}.collection-browser-heading h2{font:clamp(30px,3vw,44px)/1.2 Marcellus;margin:16px 0 0;max-width:750px}.collection-browser #productCount{margin:0;font-size:14px;white-space:nowrap}.collection-controls{border-top:1px solid var(--line);margin-bottom:46px}.collection-controls .toolbar{margin:24px 0 16px;grid-template-columns:minmax(200px,1fr) 230px;gap:32px}.collection-controls label{display:flex;flex-direction:column;gap:10px}.collection-controls label>span{font-size:14px;color:var(--muted)}.collection-controls .search,.collection-controls .select{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);padding-left:0;font-size:16px;border-radius:0}.collection-controls .search:focus,.collection-controls .select:focus{outline:2px solid var(--olive);outline-offset:4px}.collection-controls .filters{flex-wrap:nowrap;overflow-x:auto;gap:24px;padding-bottom:10px;margin:20px 0 0;scrollbar-width:thin}.collection-controls .chip{flex:0 0 auto;border:0;border-bottom:2px solid transparent;padding:12px 0;background:none;color:var(--muted);font-size:14px;white-space:nowrap}.collection-controls .chip.active{color:var(--olive);background:none;border-bottom-color:var(--olive);font-weight:600}.collection-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 36px}.collection-product-grid .card{border:0;background:transparent}.collection-product-grid .card:hover{transform:none}.collection-product-grid .card-media{padding:0;aspect-ratio:16/10;background:#eeebe5}.collection-product-grid .card-media img{object-fit:contain}.collection-product-grid .card-body{padding:24px 0 0}.collection-product-grid .meta{font-size:13px;letter-spacing:.09em}.collection-product-grid .card h3{font-size:clamp(25px,2.5vw,36px);margin:12px 0 8px}.collection-product-grid .card-body p{font-size:16px;line-height:1.8;max-width:62ch;margin:0 0 18px}.collection-product-grid .link{font-size:14px;font-weight:500;border-bottom:1px solid var(--olive);padding:4px 0 7px}.collection-product-grid .card:hover .link{transform:none}.collection-closing{margin-top:110px;padding:65px 0 0;border-top:1px solid var(--line);display:flex;gap:35px;justify-content:space-between;align-items:center}.collection-closing h2{font:clamp(32px,3.4vw,48px)/1.2 Marcellus;margin:18px 0}.collection-closing p{font-size:16px;color:var(--muted)}.collection-closing .btn{flex-shrink:0}.collection-page[data-filtered=true] .collection-covers{display:none}.collection-page[data-filtered=true] .collection-intro{padding-bottom:44px}.collection-page[data-filtered=true] .collection-title-row h1{font-size:clamp(48px,5vw,76px)}
@media(max-width:1000px){.collection-page{width:calc(100% - 40px)}.collection-title-row{gap:35px;grid-template-columns:1fr 1fr}.collection-title-row h1{font-size:62px}.collection-cover-caption{left:24px;right:24px;bottom:24px}.collection-covers{gap:22px}.collection-cover-caption h2{font-size:48px}.collection-product-grid{gap:45px 26px}}
@media(max-width:720px){.collection-page{width:calc(100% - 32px);padding-bottom:64px}.collection-intro{padding-bottom:32px}.collection-title-row{grid-template-columns:1fr;padding-top:24px;gap:24px}.collection-title-row h1{font-size:clamp(46px,11vw,66px);margin-top:14px}.collection-intro-copy{justify-self:start;max-width:540px}.collection-intro-copy p{font-size:16px;line-height:1.75}.collection-covers{grid-template-columns:1fr;gap:22px;margin-bottom:56px}.collection-cover:nth-child(2){margin-top:0}.collection-cover-caption{left:22px;bottom:22px}.collection-cover-caption h2{font-size:44px;margin:8px 0 12px}.collection-cover-caption>span:first-child{font-size:13px}.collection-browser-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:26px}.collection-browser-heading h2{font-size:32px}.collection-controls .toolbar{grid-template-columns:1fr;gap:18px;margin-top:20px}.collection-controls .filters{gap:22px;margin-top:16px}.collection-product-grid{grid-template-columns:1fr;gap:42px}.collection-product-grid .card h3{font-size:29px}.collection-product-grid .card-body{padding-top:20px}.collection-closing{margin-top:65px;padding-top:42px;align-items:start;flex-direction:column;gap:18px}.collection-closing h2{font-size:34px}.collection-page[data-filtered=true] .collection-title-row h1{font-size:clamp(46px,11vw,66px)}}
@media(prefers-reduced-motion:reduce){.collection-cover img{transform:none!important;transition:none!important}}

/* Photo-led collection gallery. No article excerpts in the listing. */
.collection-controls{position:relative;display:flex;align-items:start;gap:28px;padding-top:15px;margin-bottom:34px}
.collection-controls .filters{flex:1;min-width:0;margin:0;gap:25px}
.collection-tools{flex:0 0 auto;order:2}
.collection-tools summary{cursor:pointer;list-style:none;font-size:14px;padding:12px 0;border-bottom:1px solid var(--olive);color:var(--olive);white-space:nowrap}
.collection-tools summary::-webkit-details-marker{display:none}.collection-tools summary>span{display:inline-block;margin-left:14px;transition:transform .3s}.collection-tools[open] summary>span{transform:rotate(45deg)}
.collection-tools .toolbar{position:absolute;right:0;top:72px;width:min(650px,100%);z-index:5;background:var(--bg);padding:26px;border:1px solid var(--line);box-shadow:0 20px 40px #25282415;margin:0;grid-template-columns:1fr 190px;gap:24px}
.collection-product-grid{gap:30px;align-items:start}
.collection-product-grid .gallery-card{position:relative;display:block;isolation:isolate;overflow:hidden;background:#e7e4de}
.collection-product-grid .gallery-card:nth-child(5n+3){grid-column:1/-1}
.collection-product-grid .gallery-card .card-media{display:block;aspect-ratio:4/3;background:#e7e4de}
.collection-product-grid .gallery-card:nth-child(5n+3) .card-media{aspect-ratio:2/1}
.collection-product-grid .gallery-card .card-media img{display:block;width:100%;height:100%;object-fit:contain;transition:transform 1.2s var(--motion-ease)}
.collection-product-grid .gallery-card:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 46%,#121a10b8 85%,#121a10ed);z-index:1}
.collection-product-grid .gallery-card .card-body{position:absolute;left:32px;right:32px;bottom:28px;padding:0;display:grid;grid-template-columns:1fr auto;gap:6px 24px;align-items:end;color:white;z-index:2;pointer-events:none}
.collection-product-grid .gallery-card .meta{grid-column:1/-1;color:#fff;font-size:12px;letter-spacing:.1em}
.collection-product-grid .gallery-card h3{font:clamp(28px,3vw,46px)/1.14 Marcellus;margin:4px 0 0;text-wrap:balance}
.collection-product-grid .gallery-card:nth-child(5n+3) h3{font-size:clamp(36px,4vw,64px)}
.collection-product-grid .gallery-card .link{pointer-events:auto;color:#fff;border-color:#ffffffa6;font-size:14px;white-space:nowrap;margin:0;padding-bottom:6px;align-self:end}
.collection-product-grid .gallery-card .link span{display:inline-block;transition:transform .4s}
.collection-product-grid .gallery-card:hover .card-media img{transform:scale(1.025)}
.collection-product-grid .gallery-card:hover .link span{transform:translate(3px,-3px)}
.collection-product-grid .gallery-card:focus-within{outline:2px solid var(--olive);outline-offset:5px}
.collection-product-grid .gallery-card .link:focus-visible{outline:2px solid #fff;outline-offset:5px}
@media(max-width:1000px){.collection-product-grid{gap:22px}.collection-product-grid .gallery-card .card-body{left:22px;right:22px;bottom:22px;gap:8px 16px}.collection-product-grid .gallery-card h3{font-size:30px}}
@media(max-width:720px){.collection-controls{flex-direction:column;gap:4px;padding-top:10px}.collection-tools{order:0;align-self:end}.collection-controls .filters{width:100%}.collection-tools .toolbar{top:62px;grid-template-columns:1fr;padding:22px}.collection-product-grid{gap:22px}.collection-product-grid .gallery-card:nth-child(5n+3){grid-column:auto}.collection-product-grid .gallery-card:nth-child(5n+3) .card-media{aspect-ratio:4/3}.collection-product-grid .gallery-card .card-body{left:20px;right:20px;bottom:20px;grid-template-columns:1fr;gap:7px}.collection-product-grid .gallery-card h3,.collection-product-grid .gallery-card:nth-child(5n+3) h3{font-size:clamp(27px,7vw,38px)}.collection-product-grid .gallery-card .link{justify-self:start;font-size:13px}.collection-product-grid .gallery-card .meta{font-size:11px}.collection-product-grid .gallery-card:after{background:linear-gradient(180deg,transparent 38%,#121a10b8 80%,#121a10ed)}}
@media(prefers-reduced-motion:reduce){.collection-product-grid .gallery-card .card-media img,.collection-product-grid .gallery-card .link span,.collection-tools summary>span{transition:none!important;transform:none!important}}

/* Contact destinations: stacked, spacious map and Street View previews. */
.contact-page .contact-grid{grid-template-columns:minmax(0,1fr);gap:52px;margin-top:46px}
.contact-page .location{padding:0;overflow:hidden;background:transparent;border:0}
.contact-page .location-map{height:clamp(400px,42vw,560px);width:100%;border:1px solid var(--line);background:var(--soft)}
.contact-page .location-map iframe{width:100%;height:100%;display:block;border:0}
.contact-page .location-info{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:48px;row-gap:14px;padding:28px 0 0}
.contact-page .location-info h2{font-size:clamp(30px,3vw,42px);margin:0;line-height:1.2}
.contact-page .location-info>p{grid-column:1;max-width:630px;color:var(--muted);margin:0;font-size:16px;line-height:1.8}
.contact-page .location-info .actions{grid-column:2;grid-row:1/3;align-self:center;margin:0;gap:12px;justify-content:end}
@media(max-width:800px){.contact-page .contact-grid{gap:40px;margin-top:34px}.contact-page .location-map{height:420px}.contact-page .location-info{grid-template-columns:1fr;gap:14px;padding-top:24px}.contact-page .location-info .actions{grid-column:1;grid-row:auto;justify-content:start;margin-top:6px}}
@media(max-width:520px){.contact-page .location-map{height:370px}.contact-page .contact-grid{gap:38px}.contact-page .location-info h2{font-size:30px}.contact-page .location-info .actions .btn{min-height:48px;padding-inline:20px}}

/* Separate destination panels, generous rhythm and a map pin for production. */
.contact-page .contact-grid{gap:96px;margin-top:56px;margin-bottom:100px}
.contact-page .location{padding:24px;background:#fff;border:1px solid var(--line)}
.contact-page .location-map{height:clamp(400px,38vw,500px);border:0}
.contact-page .location-info{padding:36px 16px 18px;column-gap:64px;row-gap:20px;grid-template-columns:minmax(0,1fr) auto}
.contact-page .location-info>p{max-width:560px;line-height:1.85}
.contact-page .location-info .actions{gap:14px;align-self:end;padding-bottom:4px}
.contact-page .location-info .actions .btn{min-height:50px;padding-inline:24px}
@media(max-width:1000px){.contact-page .location-info{grid-template-columns:1fr;padding:30px 8px 12px;row-gap:18px}.contact-page .location-info .actions{grid-column:1;grid-row:auto;justify-content:start;margin-top:6px}.contact-page .contact-grid{gap:76px}}
@media(max-width:600px){.contact-page .contact-grid{gap:60px;margin-top:36px;margin-bottom:64px}.contact-page .location{padding:12px}.contact-page .location-map{height:360px}.contact-page .location-info{padding:26px 8px 16px;gap:16px}.contact-page .location-info .actions{gap:12px;margin-top:10px}.contact-page .location-info .actions .btn{padding-inline:18px;flex:1 1 140px}}

/* Brand story and compact Google business-profile invitation. */
.about-page{padding-bottom:90px}.about-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:64px;align-items:center;padding:54px 0 80px}.about-intro h1{font:clamp(40px,4.6vw,68px)/1.12 Marcellus;margin:22px 0 28px;text-wrap:balance}.about-page p{font-size:16px;line-height:1.9;color:var(--muted);margin:0 0 20px}.about-photo{margin:0;background:var(--soft)}.about-photo img{width:100%;height:auto;display:block}.about-story{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;border-top:1px solid var(--line);padding:75px 0}.about-page h2{font:clamp(30px,3vw,44px)/1.22 Marcellus;margin:16px 0 24px;text-wrap:balance}.about-material{max-width:820px;padding:40px 0 75px}.about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;border-top:1px solid var(--line);padding:55px 0 75px}.about-values h2{font-size:28px;min-height:68px}.about-values p{font-size:16px}.about-visit{padding:48px;background:var(--soft);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center}.about-visit p{max-width:650px;margin-bottom:0}.about-visit .actions{flex-direction:column;margin:0}.home-reviews{display:flex;align-items:center;justify-content:space-between;gap:30px;border-block:1px solid var(--line);padding-block:28px}.home-reviews h2{font:clamp(23px,2.3vw,32px)/1.3 Marcellus;margin:8px 0 0}.home-reviews .text-link{font-size:14px;flex-shrink:0}
@media(max-width:850px){.about-intro{grid-template-columns:1fr;gap:32px;padding:38px 0 56px}.about-intro h1{font-size:clamp(38px,7vw,54px)}.about-story{grid-template-columns:1fr;gap:16px;padding:48px 0}.about-material{padding:20px 0 48px}.about-values{grid-template-columns:1fr;gap:24px;padding:32px 0 48px}.about-values h2{min-height:0;margin-bottom:14px}.about-visit{grid-template-columns:1fr;padding:30px;gap:24px}.about-visit .actions{align-items:start}.home-reviews{align-items:start;flex-direction:column;gap:18px;padding-block:24px}.about-page{padding-bottom:64px}}
/* Avoid min-content overflow on narrow screens and enlarged text. */
.product-info,.home-store>*,.contact-page .location-info>*{min-width:0}.product-info h1,.contact-page a,.about-page a,.footer a{overflow-wrap:anywhere}.actions .btn{max-width:100%;white-space:normal;text-align:center}.home-reviews>div{min-width:0}.home-reviews .text-link{max-width:100%;white-space:normal}
@media(max-width:600px){.contact-page>.section.dark{padding-inline:24px!important}.contact-page>.section.dark h2{font-size:32px;line-height:1.25}.about-visit{padding:26px 22px}.about-visit .actions{align-items:stretch;width:100%}.about-visit .btn{width:100%}}

/* Manual, screenshot-grounded Google review excerpts. */
.home-reviews{display:block;padding-block:34px 38px}.home-reviews-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:24px}.home-reviews-heading>div{min-width:0}.home-reviews-heading .text-link{flex:0 0 auto}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.review-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:24px;background:#fff;border:1px solid var(--line)}.review-card-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 14px}.review-card figcaption{font-size:15px;font-weight:600;overflow-wrap:anywhere}.review-stars{color:#856321;font-size:17px;letter-spacing:2px;line-height:1.3}.review-card blockquote{font-size:15px;line-height:1.8;margin:20px 0 22px;color:var(--ink);overflow-wrap:anywhere}.review-source{margin-top:auto;font-size:12px;letter-spacing:.02em;color:var(--muted)}.review-grid:focus-visible{outline:2px solid var(--olive);outline-offset:5px}
@media(max-width:850px){.home-reviews-heading{align-items:start;flex-direction:column;gap:16px}.review-grid{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:14px;scrollbar-width:thin;overscroll-behavior-x:contain}.review-card{flex:0 0 min(340px,88%);scroll-snap-align:start;padding:22px}.home-reviews{padding-block:28px}.review-card blockquote{font-size:15px}}

/* Familiar Google review hierarchy within Riventi's light palette. */
.review-card{padding:26px;border:1px solid #dadce0;border-radius:12px;background:#fff;box-shadow:0 3px 12px #25282406}
.review-card-top{display:flex;flex-wrap:nowrap;justify-content:start;align-items:center;gap:13px}
.review-avatar{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;font-size:20px;color:#fff;font-weight:500;font-family:Arial,sans-serif}
.review-avatar-0{background:#16778d}.review-avatar-1{background:#a747b8}.review-avatar-2{background:#699c2f}
.review-identity{min-width:0}.review-card figcaption{font-size:15px;font-weight:500;line-height:1.4;margin-bottom:4px;color:#202124}
.review-google-link{display:inline-flex;align-items:baseline;gap:5px;font:13px/1.4 Arial,sans-serif;color:#5f6368;flex-wrap:wrap}
.review-google-word{font-size:15px;font-weight:600;letter-spacing:-.5px}.review-google-word span:nth-child(1),.review-google-word span:nth-child(4){color:#4285f4}.review-google-word span:nth-child(2),.review-google-word span:nth-child(6){color:#ea4335}.review-google-word span:nth-child(3){color:#fbbc05}.review-google-word span:nth-child(5){color:#34a853}
.review-google-link:hover>span:last-child{text-decoration:underline;text-underline-offset:3px}.review-google-link:focus-visible{outline:2px solid var(--olive);outline-offset:4px}
.review-rating{display:flex;gap:10px;align-items:center;margin-top:20px}.review-stars{color:#986b0c;font-size:19px;letter-spacing:1px;line-height:1}.review-rating-number{color:#5f6368;font-size:12px;line-height:1}
.review-card blockquote{font-size:15px;line-height:1.75;margin:16px 0 24px;color:#303134}.review-source{border-top:1px solid #eceff1;padding-top:15px;color:#5f6368;font-size:12px}
@media(max-width:850px){.review-card{padding:22px}.review-avatar{width:40px;height:40px;flex-basis:40px}.review-card-top{gap:12px}}

/* Larger catalogue at normal page size, preserving the fullscreen layout. */
.catalog-reader:not(:fullscreen){width:min(1680px,calc(100% - 64px));padding:32px;min-height:600px}
.catalog-reader:not(:fullscreen) .catalog-stage #flipBook{max-width:1680px}
.catalog-reader:not(:fullscreen) .cover-book{width:min(680px,85%)}
.catalog-reader:not(:fullscreen) .catalog-cover{padding-top:34px}
@media(max-width:899px){.catalog-reader:not(:fullscreen){width:calc(100% - 24px);padding:20px 12px;min-height:380px}.catalog-reader:not(:fullscreen) .cover-book{width:min(620px,85%)}.catalog-reader:not(:fullscreen) .catalog-cover{padding-top:30px}}
