/* Navigation */
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.language-switch{display:flex;align-items:center;gap:6px;font-size:10px;white-space:nowrap;margin-right:8px}
.language-switch a{padding:9px 1px;color:#65765f}.language-switch a[aria-current]{color:#254c38;font-weight:700;border-bottom:1px solid #537653}.language-switch>span{color:#a9b49e}
.desktop-nav{gap:25px}.shop-navigation{position:static}.shop-navigation-trigger{display:flex;align-items:center;gap:3px}.shop-menu-toggle{display:grid;place-items:center;width:28px;height:36px;border:0;background:transparent;color:#365343;border-radius:4px}.shop-menu-toggle svg{transition:transform .25s}.shop-menu-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
.shop-menu{position:absolute;left:50%;top:calc(100% - 1px);translate:-50% 0;width:min(1160px,calc(100% - 60px));display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:36px;padding:34px;background:#f9fbf3;border:1px solid #cbd8c4;border-radius:0 0 14px 14px;box-shadow:0 22px 40px #193d2424;animation:menu-arrive .22s ease both;z-index:35}
.shop-menu-intro{padding:15px 25px 15px 5px;border-right:1px solid #d8e0d0}.shop-menu .eyebrow{font-size:8px;display:block;margin-bottom:15px}.shop-menu h2{font-size:30px;line-height:1.2;margin-bottom:17px}.shop-menu a{font-size:12px}.shop-menu a:after{display:none}.shop-menu .text-link{display:inline-flex;font-size:11px;padding:5px 0}.shop-menu-collections>div{display:grid;grid-template-columns:1fr 1fr;gap:3px 16px}.shop-menu-collections a{display:flex;justify-content:space-between;padding:9px 4px;border-bottom:1px solid #d9e1d233}.shop-menu-collections a:hover{color:#1c5d37;background:#e9efdf}.shop-menu-collections a span{color:#7b9470}.shop-menu-universes{display:flex;flex-direction:column;justify-content:center;gap:10px}.shop-menu-universes a{display:flex;gap:12px;background:#e5eddd;padding:16px;border-radius:7px}.shop-menu-universes a span{flex:1}.shop-menu-universes svg{width:17px;height:17px}.shop-menu-universes a:hover{background:#d7e5cc}
@keyframes menu-arrive{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
/* The photograph and every first-screen control fit below the actual header. */
.hero{--header-height:130px;height:calc(100svh - var(--header-height));min-height:0;max-height:none;container-type:size}
.hero-content{padding-top:clamp(22px,11cqh,100px)}
.hero h1{font-size:min(6.45vw,12.4cqh,94px);margin-bottom:min(3.6cqh,28px)}
.hero .eyebrow{margin-bottom:min(3cqh,24px)}
.hero-description{font-size:min(14px,2.2cqh);line-height:1.85;margin-bottom:0}
.hero-buttons{margin-top:min(4.2cqh,33px)}
.hero-local{margin-top:min(3.6cqh,28px)}
.hero-bottom{bottom:min(4cqh,32px)}
/* A planted, luminous background with fine water contours instead of a flat fill. */
.featured-section{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 100% 0%,#68836b66,transparent 53%),radial-gradient(ellipse at 0% 100%,#142f32ad,transparent 70%),#365d4c;border:0}
.featured-section:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(100deg,#254b3dea 5%,#315541c2 50%,#3b5e3bcc),url('../images/hero-aquarium.jpg') right 65%/cover;opacity:.57}
.featured-section:after{content:'';position:absolute;inset:-10% -2%;z-index:-1;pointer-events:none;background:repeating-radial-gradient(ellipse at 105% -15%,transparent 0 70px,#d9ecc614 71px 72px,transparent 73px 118px);mask-image:linear-gradient(100deg,transparent 20%,#000 80%)}
.featured-section .product-image{box-shadow:0 12px 28px #0b302329;border:1px solid #e6f0d326}
.featured-section .product-card{position:relative}.featured-section .product-bottom{border-color:#dfebd642}
/* Progressive catalogue navigation. All links and forms still work without JS. */
.search-field input[type=search]{padding-left:43px}
#catalog-app{position:relative}.catalog-main{transition:opacity .16s}.is-loading .catalog-main{opacity:.52}.is-loading{cursor:progress}.is-loading:before{content:'';position:absolute;top:-12px;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,#5b855d,transparent);background-size:40% 100%;animation:catalog-progress 1s linear infinite;z-index:2}
.catalog-error{padding:12px 18px;border:1px solid #c7d9bc;background:#e8efde;border-radius:6px;color:#31553a}.catalog-error button{border:0;background:transparent;text-decoration:underline;color:inherit}.catalog-results-count{scroll-margin-top:25px}
@keyframes catalog-progress{from{background-position:-100% 0}to{background-position:200% 0}}
/* Compact reviews and a real, interactive map. */
.google-reviews{padding-block:42px}.reviews-shell{display:grid;grid-template-columns:240px 1fr;gap:30px;align-items:center;border-block:1px solid #c7d6bf;padding:28px 0}.reviews-intro h2{font-size:25px;line-height:1.2;margin-bottom:9px}.google-word{font-size:12px;font-weight:600;color:#426346;display:flex;align-items:center;gap:7px;margin-bottom:12px}.google-word svg{width:16px}.reviews-summary{font-size:12px;color:#50694d;margin:0 0 10px}.reviews-summary strong{font-size:22px;margin-right:5px}.reviews-intro .text-link{font-size:10px;gap:12px}.reviews-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.review-card{margin:0;padding-left:24px;border-left:1px solid #ccdbc3}.review-stars{color:#667f38;letter-spacing:2px;font-size:11px;margin-bottom:9px}.review-card blockquote{margin:0 0 13px;font-size:12px;line-height:1.85;color:#36513d}.review-card figcaption{font-size:10px;color:#5c7256}.review-card time{display:block;font-size:9px;color:#6c7e63;margin-top:2px}.review-card a{font-size:9px;text-decoration:underline}.reviews-updated{font-size:9px;color:#6a7e61;margin:10px 0 0}
.map-panel{padding:25px;isolation:isolate}.map-frame{display:block;width:100%;height:270px;border:0;border-radius:7px;margin:20px 0;background:#d8e4cc}.map-panel .map-caption{font-size:11px}.media-dialog iframe{min-height:200px}
@media(max-width:1200px){.desktop-nav{gap:17px}.language-switch{margin-right:2px}.header-actions{gap:5px}}
@media(max-width:1000px){.shop-menu{gap:22px;padding:25px;grid-template-columns:1.3fr 1fr}.shop-menu-intro{display:none}.desktop-nav{gap:15px}.header-inner{gap:12px}.brand{min-width:135px}.desktop-nav a{font-size:10px}.reviews-shell{grid-template-columns:190px 1fr}.reviews-list{gap:16px}.review-card{padding-left:16px}}
@media(max-width:700px){
 .hero{--header-height:109px}.hero-content{padding-top:min(7.5cqh,55px)}.hero h1{font-size:min(10.5vw,10cqh);line-height:1.12;margin-bottom:min(3cqh,23px)}.hero .eyebrow{font-size:7px;margin-bottom:min(3.5cqh,24px)}.hero-description{font-size:min(13px,2.5cqh);line-height:1.8}.hero-buttons{gap:min(2.6cqh,18px);margin-top:min(3.5cqh,25px)}.hero-buttons .button{padding:13px 20px}.hero-secondary{font-size:11px}.hero-local{margin-top:min(3cqh,23px)}.hero-bottom{bottom:22px}.language-switch{font-size:10px;margin-right:5px;gap:5px}.header-actions{gap:3px}.header-inner{gap:10px}.brand{min-width:0}
 .reviews-shell{grid-template-columns:1fr;gap:22px;padding-block:22px}.reviews-intro{display:grid;grid-template-columns:1fr auto;gap:5px 15px;align-items:center}.google-word{grid-column:1/-1;margin:0}.reviews-intro h2{font-size:23px;margin:0}.reviews-summary{margin:0}.reviews-intro .text-link{grid-column:1/-1;justify-self:start}.reviews-list{gap:14px}.review-card{padding-left:13px}.review-card blockquote{font-size:11px}.google-reviews{padding-block:24px}.map-frame{height:250px}
}
@media(max-height:700px) and (max-width:700px){.hero-local{display:none}.hero-buttons{gap:13px}.hero h1{font-size:min(10vw,10cqh)}.hero-content{padding-top:5cqh}.hero-bottom{bottom:17px}}
@media(max-height:580px){.hero-description,.hero-local{display:none}.hero-content{padding-top:5cqh}.hero-buttons{margin-top:3cqh;flex-direction:row;gap:20px}.hero h1{font-size:min(6.1vw,15cqh);margin-bottom:2cqh}.hero .eyebrow{font-size:7px;margin-bottom:2cqh}.hero-buttons .button{padding:10px 15px;font-size:10px}.hero-secondary{font-size:10px}.video-teaser{padding:8px 12px;font-size:9px;gap:10px}.video-teaser small{font-size:8px}.play-circle{width:25px;height:25px}.scroll-circle{height:30px;width:25px}.hero-bottom{bottom:15px}}
@media(max-height:460px){.hero-bottom{display:none}.hero h1{font-size:min(6.1vw,17cqh)}.hero-content{padding-top:6cqh}.hero .eyebrow{margin-bottom:3cqh}}
@media(prefers-reduced-motion:reduce){.shop-menu,.is-loading:before{animation:none}.catalog-main{transition:none}}
