@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--ink:#283c31;--green:#344c3e;--cream:#f4e5ce;--muted:#665e50;--line:#d7bfa1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:var(--cream);font:15px 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b78a42;outline-offset:4px}.notice{text-align:center;background:var(--green);color:#fff;padding:10px;font-size:11px;letter-spacing:.1em}header{max-width:1400px;margin:auto;padding:27px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{font-family:'Playfair Display',Georgia,serif;font-size:40px;letter-spacing:-2px;line-height:1}.brand span{display:block;letter-spacing:2px;font:8px 'DM Sans',sans-serif;margin-top:10px}nav{display:flex;gap:33px;font-size:13px}.selection{background:transparent;border:1px solid var(--line);border-radius:4px;padding:12px 16px;font-size:12px;color:var(--ink)}.selection #count{display:inline-grid;place-items:center;background:var(--green);color:white;width:22px;height:22px;border-radius:50%;margin-left:10px}.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1400px;margin:auto;min-height:570px}.hero-copy{padding:75px 10%}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;text-transform:uppercase}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1{font-size:clamp(48px,5.3vw,78px);line-height:1.12;letter-spacing:-2px;margin:23px 0}h2{font-size:42px;line-height:1.2;margin:10px 0 22px}.hero-copy>p:not(.eyebrow){max-width:370px;color:var(--muted);line-height:1.8}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--green);color:white;border:0;padding:17px 24px;font-size:13px;border-radius:3px}.hero-copy .button{margin-top:17px}.hero-copy .hero-note{font-size:10px;margin-top:22px}.hero-art{position:relative;overflow:hidden;min-height:520px;background:#e8dfcf;background-image:radial-gradient(ellipse at 20% 10%,#f6efdf,transparent 70%)}.sun{position:absolute;width:210px;height:210px;border-radius:50%;background:#d7bb8d;top:11%;right:-40px;opacity:.5}.arch{position:absolute;left:18%;top:13%;width:55%;height:75%;background:#d7c8b1;border-radius:200px 200px 0 0;box-shadow:inset 15px 4px 30px #af9b7b33}.pedestal{position:absolute;bottom:-30px;left:10%;height:160px;width:85%;background:linear-gradient(105deg,#c3b59e,#ded4c1);transform:skewY(-4deg);box-shadow:0 -15px 50px #69543c22}.vase{position:absolute;z-index:2;box-shadow:inset -20px 0 35px #654a3438,15px 15px 25px #75604433}.large{width:150px;height:210px;border-radius:40% 40% 36% 36%;background:#b88c6d;left:28%;bottom:125px}.large:before{content:'';position:absolute;top:-47px;left:46px;width:59px;height:65px;background:#bd9475;border-radius:5px 5px 0 0;border-top:7px solid #795a43}.small{width:100px;height:125px;background:#e9dfc6;border-radius:20% 20% 42% 42%;left:59%;bottom:106px;border-top:10px solid #b4a78b}.stem{position:absolute;z-index:3;height:170px;width:70px;left:42%;bottom:367px;border-left:3px solid #7b805d;transform:rotate(16deg)}.stem:after,.stem:before{content:'';position:absolute;background:#788260;width:48px;height:20px;border-radius:90% 0;left:-45px;top:40px;transform:rotate(25deg)}.stem:after{left:0;top:5px;transform:rotate(-25deg)}.art-label{position:absolute;top:35px;left:30px;font-size:9px;letter-spacing:2px}.art-caption{position:absolute;bottom:25px;right:25px;font:italic 18px Georgia;z-index:4}.benefits{display:flex;justify-content:space-around;gap:20px;border-block:1px solid var(--line);padding:25px 5%;font-size:12px}.catalog{padding:75px 5%;max-width:1400px;margin:auto}.section-top{display:flex;justify-content:space-between;align-items:center}.section-top>p{font-size:13px;line-height:1.8;color:var(--muted)}.demo-note{font-size:11px;color:#746a54;border-left:2px solid #b5a27e;padding:8px 12px;margin:8px 0 27px}.toolbar{display:flex;justify-content:space-between;gap:20px;margin-bottom:28px;align-items:center}#filters{display:flex;gap:8px;flex-wrap:wrap}.filter{border:1px solid var(--line);color:var(--ink);background:transparent;padding:9px 18px;border-radius:30px;font-size:12px}.filter.active{background:var(--green);border-color:var(--green);color:white}.search{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:10px}.search input{border:0;background:transparent;min-width:0;width:175px;font-size:12px;outline-offset:8px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 25px}.product-art{height:290px;position:relative;display:grid;place-items:center;overflow:hidden}.sample{position:absolute;top:17px;left:18px;font-size:8px;letter-spacing:1.4px;color:#706c60}.object{background:var(--object);position:relative;box-shadow:inset -20px 0 30px #00000018,14px 20px 25px #53422c20}.object.vase{width:105px;height:145px;border-radius:40% 40% 33% 33%}.object.vase:before{content:'';position:absolute;left:31px;top:-25px;width:43px;height:40px;background:var(--object);border-top:5px solid #0003}.cup{height:95px;width:110px;border-radius:5px 5px 40px 40px;border-top:8px solid #0002}.cup:after{content:'';position:absolute;right:-37px;top:5px;width:42px;height:53px;border:12px solid var(--object);border-radius:50%;z-index:0}.bag{width:135px;height:145px;border-radius:4px 4px 14px 14px;transform:rotate(-7deg)}.bag:before{content:'';position:absolute;width:65px;height:65px;left:25px;top:-44px;border:10px solid var(--object);border-bottom:0;border-radius:45px 45px 0 0}.candle{width:97px;height:120px;border-radius:8px 8px 22px 22px;border-top:10px solid #e8deca}.candle:before{content:'';width:3px;height:12px;background:#6a5842;position:absolute;top:-16px;left:46px}.bowl{width:160px;height:80px;border-radius:10% 10% 50% 50%;border-top:12px solid #8c715d}.box{width:145px;height:115px;border-radius:3px;border-top:20px solid #0001}.box:before{content:'';position:absolute;background:#eee7d0;width:18px;height:115px;top:-20px;left:61px}.box:after{content:'∞';position:absolute;left:49px;top:-60px;color:#9d997e;font:60px Georgia}.product-info{padding:19px 0}.product-info .eyebrow{font-size:9px;color:var(--muted);margin:0 0 10px}.product-title{display:flex;justify-content:space-between;gap:10px;align-items:center}.product-title h3{font:23px 'Playfair Display',Georgia,serif;margin:0}.product-title strong{font-size:14px;font-weight:500}.product-info>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.8;min-height:44px}.add{background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--line);padding:13px 0;width:100%;display:flex;justify-content:space-between;font-size:12px}.add span{font-size:18px}.how{background:#eef0e9;padding:65px max(5%,calc((100vw - 1260px)/2));display:grid;grid-template-columns:1fr 1fr;gap:80px}.how>div>p:last-child{color:var(--muted);max-width:320px;line-height:1.8;font-size:13px}.how ol{padding:0;margin:0;list-style:none}.how li{display:flex;gap:23px;padding:23px 0;border-bottom:1px solid #d3d8ca}.how li>span{font:24px Georgia;color:#859079}.how h3{font-size:15px;margin:0 0 8px}.how li p{font-size:12px;color:var(--muted);line-height:1.8;margin:0}.contact{text-align:center;padding:80px 5%}.contact p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.9}.pending{display:inline-block;border:1px solid var(--line);padding:13px 18px;font-size:12px;margin-top:15px}footer{border-top:1px solid var(--line);margin:0 5%;padding:30px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}footer p,footer>a:last-child{font-size:10px;color:var(--muted)}footer .brand{font-size:30px}dialog{border:0;border-radius:8px;padding:32px;max-width:590px;width:calc(100% - 28px);max-height:90dvh;color:var(--ink);background:var(--cream)}dialog::backdrop{background:#18271b80;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start}.dialog-head h2{font-size:32px;margin-bottom:10px}.dialog-head button{background:none;border:0;font-size:30px;color:var(--ink)}dialog>p{font-size:13px;color:var(--muted);line-height:1.7}.item{display:flex;gap:12px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.item>div:first-child{flex:1}.item strong{font-size:13px}.item p{font-size:12px;margin:7px 0 0}.qty{display:flex;gap:12px;align-items:center}.qty button{border:1px solid var(--line);background:transparent;width:30px;height:32px;color:var(--ink)}.remove{background:transparent;border:0;color:var(--muted);font-size:22px}.total{display:flex;justify-content:space-between;font-size:13px;padding:25px 0 5px}.dialog-note{font-size:1rem;line-height:1.7;margin:12px 0 20px;overflow-wrap:anywhere}.message{display:block;font-size:12px;margin:20px 0}textarea{width:100%;border:1px solid var(--line);padding:12px;resize:vertical;background:white;border-radius:3px;margin-top:9px;color:var(--ink)}dialog .button{width:100%}button:disabled{opacity:.45;cursor:default}details{font-size:12px;margin-top:20px}summary{cursor:pointer}.empty-cart{padding:30px 0;font-size:13px;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--green);color:white;padding:14px 24px;border-radius:4px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:10}#toast.show{opacity:1}@media(max-width:850px){header{flex-wrap:wrap;padding:20px 5%}nav{order:3;width:100%;justify-content:center;gap:25px;padding-top:12px}.brand{font-size:34px}.hero-copy{padding:50px 9%}.hero-art{min-height:480px}.hero{min-height:0}.large{left:20%}.stem{left:43%}.small{left:64%}.benefits{font-size:10px;padding:20px 4%}.grid{grid-template-columns:repeat(2,1fr)}.how{gap:35px}.section-top>p{max-width:230px}.product-art{height:260px}}@media(max-width:560px){.notice{font-size:9px}.brand span{font-size:7px}.selection{padding:8px 10px;font-size:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 6% 35px}h1{font-size:55px}.hero-art{min-height:360px}.arch{height:90%;top:7%}.large{bottom:65px;left:30%;height:160px;width:120px}.large:before{left:36px;width:48px;height:50px;top:-35px}.stem{bottom:255px;left:44%;height:100px}.small{bottom:55px;left:63%;width:80px;height:95px}.pedestal{height:110px}.art-label{top:22px;left:20px}.art-caption{font-size:15px;bottom:16px}.benefits{flex-direction:column;gap:13px;padding:23px 6%;font-size:11px}.catalog{padding:45px 6%}.section-top{display:block}.section-top>p{max-width:none;font-size:12px}h2{font-size:34px}.toolbar{align-items:stretch;flex-direction:column}.filter{font-size:10px;padding:9px 13px}.search input{width:100%}.grid{gap:24px 15px}.product-art{height:200px}.object{transform:scale(.75)}.object.bag{transform:scale(.75) rotate(-7deg)}.sample{font-size:6px;left:10px;top:12px;letter-spacing:.8px}.product-title{display:block}.product-title h3{font-size:20px;margin-bottom:8px}.product-title strong{font-size:12px}.product-info>p:not(.eyebrow){font-size:11px;min-height:78px}.add{font-size:10px;gap:5px}.how{grid-template-columns:1fr;padding:45px 6%;gap:15px}.contact{padding:50px 6%}footer{flex-wrap:wrap}footer p{order:3;width:100%;margin:0}dialog{padding:23px}.item{gap:7px}.qty{gap:7px}.item strong{font-size:12px}#toast{width:max-content;max-width:90vw}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.language-switch{display:flex;gap:4px;align-items:center}.language-switch button{background:transparent;border:1px solid transparent;border-radius:3px;color:var(--ink);font-size:11px;font-weight:600;padding:8px;min-height:36px;min-width:36px}.language-switch button.active{background:var(--green);color:white}.language-switch button:hover{border-color:var(--green)}.brand span[data-i18n]{display:contents}.brand>span{display:block}.brand>span>span[data-i18n]{display:contents}.product-info>p:not(.eyebrow){min-height:64px}.sample{max-width:calc(100% - 30px)}@media(max-width:850px){header{gap:15px}nav{order:4}.language-switch{margin-left:auto}}@media(max-width:560px){header{column-gap:10px}.language-switch{order:3;margin-left:0;width:100%;justify-content:center}nav{padding-top:0}.product-info>p:not(.eyebrow){min-height:115px}.product-title h3{min-height:48px}.add{min-height:55px;text-align:left}.sample{line-height:1.6}.brand>span{max-width:160px;line-height:1.5}}

.selection{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex-shrink:0}.selection>span[data-i18n]{white-space:nowrap}.selection #count{margin-left:0;flex-shrink:0}

.contact-email{max-width:100%;overflow-wrap:anywhere}.contact-email:hover{text-decoration:underline}

/* A single product, with an illustrative olive oil bottle. */
[hidden]{display:none!important}.grid{grid-template-columns:minmax(0,1fr)}.product{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,70px);align-items:center}.product-art{height:390px}.product-info{max-width:470px}.product-title{align-items:flex-start;flex-direction:column;gap:18px}.product-title h3{font-size:36px;min-height:0}.product-title strong{font-size:14px;color:var(--muted)}.product-info>p:not(.eyebrow){font-size:15px;min-height:0;line-height:1.9}.add{font-size:14px;margin-top:20px;padding:18px 0}.olive-bottle{position:relative;width:112px;height:205px;border-radius:25px 25px 14px 14px;background:linear-gradient(90deg,#253b28,#677344 32%,#3e5534 65%,#223925);box-shadow:inset 5px 0 12px #ffffff20,18px 22px 24px #53422c25}.olive-bottle:before{content:'';position:absolute;width:42px;height:68px;top:-59px;left:35px;background:linear-gradient(#a68a4e 0 27%,#344c32 28% 100%);border-radius:5px 5px 0 0}.olive-bottle:after{content:'BOTTEGA';position:absolute;inset:64px 7px 42px;background:#f2ebd8;border:1px solid #d6c99e;display:grid;place-items:center;font:11px Georgia,serif;letter-spacing:2px;color:#344c3e}.hero-bottle{position:absolute;z-index:3;left:calc(50% - 67px);bottom:135px;transform:scale(1.2)}.hero-art .stem{left:68%;bottom:175px;transform:rotate(35deg);height:130px}.total strong{text-align:right}@media(max-width:560px){.product{grid-template-columns:1fr;gap:10px}.product-art{height:330px}.product-info{padding-top:15px}.product-title h3{font-size:30px}.hero-bottle{bottom:85px;transform:scale(.9)}.hero-art .stem{bottom:115px;left:74%}.object.olive-bottle{transform:scale(1)}}

.brand{letter-spacing:-1px}.brand>.brand-name[data-i18n]{display:block;font:inherit;letter-spacing:inherit;margin:0;max-width:none;line-height:1.1}header .brand{font-size:clamp(24px,2.5vw,36px)}footer .brand{font-size:26px}@media(max-width:560px){header .brand{font-size:26px}footer .brand{font-size:24px}}

.hero-photo{isolation:isolate;min-height:570px}.hero-photo>img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 46%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#14231650,transparent 35%,transparent 65%,#14231690);pointer-events:none}.hero-photo .art-label,.hero-photo .art-caption{z-index:1;color:#fff;text-shadow:0 1px 8px #0008}.photo-story{max-width:1400px;margin:auto;padding:0 5% 80px}.photo-story .section-top>p{max-width:350px}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:25px}.photo-grid figure{margin:0;min-width:0}.photo-grid img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;display:block;border-radius:3px}.photo-grid figcaption{display:flex;gap:15px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);font-size:14px}.photo-number{font:italic 22px Georgia,serif;color:var(--muted)}@media(max-width:850px){.hero-photo{min-height:480px}.photo-grid{gap:16px}}@media(max-width:560px){.hero-photo{min-height:430px}.photo-story{padding:0 6% 45px}.photo-grid{grid-template-columns:1fr;gap:28px}.photo-grid img{max-height:none}.photo-grid figcaption{font-size:15px}.photo-story .section-top>p{max-width:none}}

/* Shipping sizes */
.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.product{display:block;min-width:0}.product-art{height:390px;padding:22px;background:var(--cream)}.product-art img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.product-info{max-width:none}.product-title h3{font-size:27px}.product-info>p:not(.eyebrow){font-size:13px;min-height:75px}.product-title{gap:12px}.format-badge{position:absolute;top:15px;right:15px;padding:8px 12px;background:var(--green);color:white;font-size:13px;border-radius:3px}.add{gap:10px;font-size:12px}@media(max-width:850px){.grid{gap:18px}.product-art{height:310px;padding:15px}.product-title h3{font-size:23px}}@media(max-width:560px){.grid{grid-template-columns:1fr;gap:30px}.product-art{height:380px}.product-info>p:not(.eyebrow){min-height:0}.product-title h3{font-size:28px}.add{font-size:14px}}

/* Keep each entire tin inside a fixed, shrinkable image box. */
.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.product-art{display:block;height:350px;padding:22px;position:relative;overflow:hidden}.product-art>img{position:absolute;inset:22px;width:calc(100% - 44px);height:calc(100% - 44px);min-width:0;min-height:0;max-width:calc(100% - 44px);max-height:calc(100% - 44px);object-fit:contain;object-position:center;display:block}.product-title h3{font-size:24px}.product-info>p:not(.eyebrow){min-height:100px}.format-badge{z-index:1;top:10px;right:10px}@media(max-width:1000px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-art{height:370px}.product-info>p:not(.eyebrow){min-height:65px}}@media(max-width:560px){.grid{grid-template-columns:1fr}.product-art{height:400px}.product-info>p:not(.eyebrow){min-height:0}}

/* Warm Sicilian stone, honey and pale terracotta. */
:root{--sand:#f4e5ce;--honey:#ecdbbc;--terracotta:#ead1b9}
.hero-copy{background:#f7ead5}.benefits{background:var(--honey)}.how{background:var(--terracotta)}.how li{border-bottom-color:#cdb296}.how li>span{color:#746249}.contact{background:#f0ddc2}.product-art{background:var(--sand)}.demo-note{color:#66533c;border-left-color:#a66d3f}.search input,textarea{color:var(--ink)}textarea{background:#fff8ec}.pending{border-color:#bda17f}

/* Arabic layout and mixed-direction brand/contact details. */
header{flex-wrap:wrap}.brand-name,.contact-email,.format-badge,.qty{direction:ltr;unicode-bidi:isolate}
[dir="rtl"] body{font-family:Tahoma,Arial,sans-serif;line-height:1.7}
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3{font-family:Tahoma,Arial,sans-serif;letter-spacing:normal}
[dir="rtl"] .eyebrow,[dir="rtl"] .notice{letter-spacing:normal}
[dir="rtl"] .demo-note{border-left:0;border-right:2px solid #a66d3f}
[dir="rtl"] .add{text-align:right}
[dir="rtl"] .total strong{text-align:left}
[dir="rtl"] .language-switch{margin-left:0;margin-inline-start:auto}
@media(max-width:560px){[dir="rtl"] .language-switch{margin-inline-start:0}}

footer{flex-wrap:wrap}footer .site-credit{flex-basis:100%;order:4;margin:0;padding-top:16px;border-top:1px solid var(--line);text-align:center;font-size:12px;line-height:1.7}footer .site-credit bdi{font-weight:600}

footer .site-copyright{flex-basis:100%;order:6;margin:0;text-align:center;font-size:12px;line-height:1.7}

footer .designer-contact{flex-basis:100%;order:5;text-align:center;min-width:0}footer .designer-contact h2{font:600 14px/1.5 "DM Sans",Arial,sans-serif;margin:0 0 8px}footer .designer-contact a{display:inline-block;max-width:100%;padding:10px 4px;font-size:13px;line-height:1.7;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}

/* Longer introduction: readable type and balanced spacing at every viewport. */
.hero-copy{min-width:0;padding:clamp(32px,4.5vw,72px) clamp(24px,4.8vw,76px)}
.hero-copy h1{font-size:clamp(30px,3vw,48px);font-weight:700;line-height:1.16;letter-spacing:-.025em;margin:0 0 26px;overflow-wrap:break-word}
.hero-intro{max-width:600px;margin-bottom:28px}.hero-intro p{font-size:clamp(15px,1.12vw,18px);line-height:1.75;color:var(--muted);margin:0 0 16px}.hero-intro strong{font-weight:700;color:var(--ink)}
@media(max-width:850px){.hero-copy{padding:36px 7%}.hero-copy h1{font-size:32px}.hero-intro p{font-size:15px}}
@media(max-width:560px){.hero-copy{padding:38px 6% 30px}.hero-copy h1{font-size:32px}.hero-intro p{font-size:16px;line-height:1.7}.hero-photo>img{object-position:center}.hero-photo{min-height:0;aspect-ratio:3/4}}

footer .site-credit{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 12px}footer .designer-brand{display:inline-flex;align-items:center;gap:10px;direction:ltr;white-space:nowrap}footer .designer-brand img{display:block;width:42px;height:36px;object-fit:contain;flex-shrink:0}

/* Hero slideshow: one photograph every four seconds. */
.hero-photo>.hero-slide{opacity:0;transition:opacity .45s ease;object-position:center}
.hero-photo>.hero-slide.is-active{opacity:1}
.slideshow-toggle{position:absolute;inset-block-start:20px;inset-inline-end:20px;z-index:3;border:1px solid #ffffff90;border-radius:4px;background:#203829dd;color:#fff;padding:10px 16px;min-height:44px;font-size:13px}
@media(prefers-reduced-motion:reduce){.hero-photo>.hero-slide{transition:none}}

/* One continuous olive tree behind the page, without tiled or section copies. */
body{background:var(--cream);isolation:isolate}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:url('images/ulivo-sfondo.png') center / min(1400px,100vw) auto no-repeat;opacity:.25}
.hero-copy{background:#f7ead526}
.how{background:#ead1b926}
.contact{background:#f0ddc226}

/* Shared product artwork with true alpha, letting the olive tree show through. */
.product-art{background:transparent}
.product-art>img{mix-blend-mode:normal}

/* Compare capacities using the same artwork, scaled in all dimensions by volume. */
.product-art[data-format="1 L"]{--tin-scale:.585}
.product-art[data-format="2 L"]{--tin-scale:.737}
.product-art[data-format="3 L"]{--tin-scale:.843}
.product-art[data-format="5 L"]{--tin-scale:1}
.product-art>img{transform:scale(var(--tin-scale,1));transform-origin:50% 92.5%}

/* Center the introduction and show the slideshow in the photo-story section. */
.hero{display:block;min-height:0}
.hero-copy{text-align:center;width:100%;padding:clamp(40px,6vw,80px) 6%}
.hero-copy h1{max-width:950px;margin-inline:auto}
.hero-intro{max-width:800px;margin:0 auto 28px}
.hero-copy>p:not(.eyebrow){max-width:800px;margin-inline:auto}
.gallery-slideshow{width:100%;max-width:1040px;margin:28px auto 0;min-height:0;height:clamp(360px,65vw,680px);aspect-ratio:auto;border-radius:4px;background:transparent}
.gallery-slideshow>.hero-slide{object-fit:contain;object-position:center}
.gallery-slideshow:after{content:none}
.gallery-slideshow .art-caption{display:none}

/* Readability: subtle olive-tree background and scalable type in every language. */
:root{--ink:#23382b;--muted:#403c30;--green:#2c4535}
body{font-size:18px;line-height:1.65}
body::before{opacity:.08}
header,.catalog,.photo-story,footer{background:transparent}
.hero-copy{background:#f7ead530}
.how{background:#ead1b930}
.contact{background:#f0ddc230}
.hero-intro p{font-size:1.125rem;line-height:1.8}
.hero-copy .hero-note{font-size:1rem;line-height:1.75;margin-top:24px;color:var(--ink)}
nav{font-size:1.125rem;gap:12px 24px;flex-wrap:wrap}
nav a{display:inline-flex;align-items:center;min-height:44px;padding:6px 4px;text-decoration:underline;text-underline-offset:5px}
.notice,.brand>span:not(.brand-name),.eyebrow,.product-info .eyebrow{font-size:.875rem;line-height:1.65}
.brand>span:not(.brand-name){letter-spacing:.08em}
.notice{letter-spacing:.04em}
.button,.selection,.filter,.search input,.add,.pending,.language-switch button,.slideshow-toggle{font-size:1rem;line-height:1.5;min-height:44px}
.language-switch button{min-width:44px}
.benefits,.section-top>p,.demo-note,.product-info>p:not(.eyebrow),.product-title strong,.format-badge,.how>div>p:last-child,.how li p,.contact p:not(.eyebrow),.photo-grid figcaption{font-size:1rem;line-height:1.75}
.product-info>p:not(.eyebrow){min-height:0}
.how>div>p:last-child{max-width:38ch}
.how h3{font-size:1.125rem;line-height:1.5}
.demo-note{border-left-color:var(--muted);color:var(--muted)}
.how li>span{color:var(--muted)}
footer p,footer>a:last-child,footer .site-credit,footer .site-copyright,footer .designer-contact a,footer .designer-contact h2{font-size:1rem;line-height:1.7}
dialog>p,.item strong,.item p,.total,.message,details,.empty-cart,#toast{font-size:1rem;line-height:1.7}
.small{font-size:1rem!important;line-height:1.75}
.qty button,.remove,.dialog-head button{min-width:44px;min-height:44px;flex-shrink:0}
.qty{flex-wrap:wrap;justify-content:center}
.item>div:first-child{min-width:0;overflow-wrap:anywhere}
.item strong{display:block}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #23382b;outline-offset:4px;box-shadow:0 0 0 3px #fff8ec}
@media(max-width:850px){nav{justify-content:center}.benefits{flex-wrap:wrap}.section-top{gap:24px}}
@media(max-width:560px){header{gap:16px}.selection{max-width:100%}.selection>span[data-i18n]{white-space:normal}nav{gap:8px 16px}.brand>span:not(.brand-name){max-width:none}.section-top>p{max-width:none}.item{flex-wrap:wrap}.item>div:first-child{flex-basis:100%}.hero-copy h1{font-size:2rem}}

/* Photo and video gallery: full frames, readable captions, manual playback. */
.media-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px;margin-top:28px}
.media-gallery figure{margin:0;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#f7ead5}
.media-gallery img,.media-gallery video{display:block;width:100%;height:340px;object-fit:contain;background:#23382b}
.media-gallery figcaption{padding:16px 18px;font-size:1rem;line-height:1.65;color:var(--ink)}
.gallery .section-top>p{max-width:420px}
@media(max-width:1000px){.media-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.media-gallery{grid-template-columns:minmax(0,1fr);gap:24px}.media-gallery img,.media-gallery video{height:auto;max-height:75vh;min-height:220px}.gallery .section-top>p{max-width:none}}

/* Keep enquiry text in normal flow, independent of decorative objects. */
#list .message{display:flex;flex-direction:column;gap:9px;margin:20px 0}
#list .message textarea{display:block;margin-top:0;min-height:110px}
#list .total{gap:16px;flex-wrap:wrap}
#list .total strong{overflow-wrap:anywhere}
#list{overflow-y:auto}
