/* ---- living-lab-v27 (index.html line 1015) ---- */
/* Centered destinations independent of the brand's width. */
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body header .top-ranges{display:grid!important;grid-template-columns:1fr auto 1fr!important;max-width:none!important;gap:22px!important;padding:18px 3vw!important;direction:rtl}
html body header .top-ranges>.brand{grid-column:1;grid-row:1;justify-self:start;width:auto!important}
html body header .nav-destinations26{grid-column:2;grid-row:1;justify-self:center;gap:26px}
/* Photograph and colour become one scene. */
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro.hero{--hero-base:#102b47;--hero-glow:#26789c;background:var(--hero-base)!important;min-height:800px!important;height:max(800px,calc(100svh - var(--rp-header)))!important;transition:background 1.4s ease!important;isolation:isolate}
html body #intro:before{content:'';position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse at 24% 45%,var(--hero-glow),transparent 74%),linear-gradient(115deg,transparent,var(--hero-base));opacity:.9;pointer-events:none}
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro .hero-scene{inset:0 40% 0 0!important;background:transparent!important;mask-image:linear-gradient(90deg,transparent,#000 13%,#000 70%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 13%,#000 70%,transparent)}
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro .hero-scene>img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;mask-image:linear-gradient(0deg,transparent,#000 12%,#000 92%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 12%,#000 92%,transparent);mix-blend-mode:normal}
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro .scene-shade{background:linear-gradient(90deg,transparent 48%,var(--hero-base) 100%)!important;opacity:.75}
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro .hero-editorial{width:48%!important;position:relative;z-index:4}
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro :is(h1,h1 span,p,.editorial-link){color:#fff!important;text-shadow:0 2px 20px #0003}
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro :is(h1 em,h1 em span){color:#f5d9ac!important}
/* Filling highlights with keyboard and touch equivalents. */
html body :is(.nav-destinations26 button,.royal-slide-controls button,.gallery-controls button,.x,.saved-btn,.view-controls button,#topSearch,#familyAudio25){transition:background .35s,box-shadow .35s,transform .25s!important;background-image:linear-gradient(110deg,#b99559,#ead5a5)!important;background-repeat:no-repeat!important;background-size:0% 100%!important;background-position:right center!important}
html body :is(.nav-destinations26 button,.royal-slide-controls button,.gallery-controls button,.x,.saved-btn,.view-controls button,#topSearch,#familyAudio25):is(:hover,:focus-visible){background-size:100% 100%!important;box-shadow:0 5px 24px #caa66840!important;transform:translateY(-2px);color:#17202a!important}
html body :is(.nav-destinations26 button,.royal-slide-controls button,.gallery-controls button):is(:hover,:focus-visible) svg{transform:translateY(-2px) rotate(-5deg);transition:transform .3s;color:inherit!important}
html body #ranges .range-copy>b{overflow:hidden;isolation:isolate;pointer-events:auto;transition:box-shadow .3s,background .3s!important}
html body #ranges .range-copy>b:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,#b99559,#ead5a5);transform:translateX(102%);transition:transform .45s cubic-bezier(.2,.7,.3,1)}
html body #ranges .range-copy>b:hover:after,html body #ranges .range-card:focus-visible .range-copy>b:after{transform:translateX(0)}
html body #ranges .range-copy>b:hover{box-shadow:0 8px 30px #dec39360!important}
html body #ranges .range-copy>b:hover svg{transform:scale(1.15);transition:transform .3s}
/* The old form remains available to the catalog engine, not on the page. */
html body #catalog{display:none!important}
#concentrationLab27{position:relative;isolation:isolate;overflow:hidden;padding:115px 5vw 100px;color:#f6eee0;background:radial-gradient(ellipse at 50% 34%,#354846,#16252c 60%,#111923);font-family:var(--body-font);scroll-margin-top:var(--rp-header);mask-image:linear-gradient(transparent,#000 75px,#000 calc(100% - 70px),transparent)}
#concentrationLab27 *{box-sizing:border-box}
#concentrationLab27 button,#concentrationLab27 input{font:inherit}
.lab27-heading{text-align:center;max-width:850px;margin:0 auto 32px}
.lab27-heading small{color:#d6bd88;letter-spacing:2px;font-size:12px}
.lab27-heading h2{font-size:clamp(30px,4vw,54px);font-weight:900;line-height:1.5;margin:12px 0}
.lab27-heading p{font-size:17px;color:#c5d4d5;margin:10px 0}
.lab27-bench{max-width:1240px;margin:auto;position:relative;display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:45px 46px 65px;background:linear-gradient(155deg,#ffffff08,transparent 50%);border:1px solid #e7d2a324;border-radius:36px 36px 10px 10px;box-shadow:0 35px 60px #0004}
.lab27-bench:after{content:'';position:absolute;inset:auto -3% -20px;height:45px;background:repeating-linear-gradient(176deg,#785744 0,#84634e 2px,#674838 5px,#795642 13px);border-radius:6px 6px 16px 16px;box-shadow:0 20px 25px #0005;z-index:-1;border-top:3px solid #cda58180}
.lab27-station{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:end}
.lab27-bottle{position:relative;width:190px;height:285px;margin:38px auto 20px;border:2px solid #e1eeef9c;border-radius:28px 28px 40px 40px;overflow:hidden;background:linear-gradient(100deg,#ffffff24,transparent 25%,#ffffff09 60%,#ffffff38);box-shadow:inset 8px 0 14px #ffffff15,inset -5px 0 9px #0003,0 22px 30px #0004;isolation:isolate}
.lab27-neck{width:72px;height:42px;position:absolute;top:0;left:50%;transform:translateX(-50%);border:2px solid #d3e4e4aa;border-radius:8px 8px 0 0;background:linear-gradient(90deg,#ffffff33,transparent,#ffffff22)}
.lab27-liquid{position:absolute;bottom:0;left:0;right:0;height:var(--fill,10%);background:linear-gradient(90deg,#aa7b32,#f6ce77aa,#bb833c);transition:height .45s ease,background .4s;z-index:-1}
.lab27-liquid:before{content:'';position:absolute;left:-25%;top:-12px;width:150%;height:24px;border-radius:50%;background:#ffe4a686;animation:lab27wave 3s ease-in-out infinite alternate}
.lab27-glasslabel{position:absolute;left:15px;right:15px;top:84px;background:#10262acf;border:1px solid #efd7a65c;text-align:center;padding:12px 6px;border-radius:4px;backdrop-filter:blur(4px)}
.lab27-glasslabel strong{font:32px Georgia,serif;display:block;color:#f7dfac;direction:ltr}
.lab27-glasslabel span{font-size:12px;display:block;color:#fff}
.lab27-stream{position:absolute;width:5px;height:120px;top:6px;left:50%;background:linear-gradient(transparent,#e8bf68);opacity:0;transform-origin:top;pointer-events:none;z-index:3}
.lab27-station.pouring .lab27-stream{animation:lab27pour .5s ease}
.lab27-scale{display:flex;justify-content:space-between;width:100%;max-width:360px;font:12px Arial;color:#c0cbd0;direction:ltr}
.lab27-slider{width:100%;max-width:360px;accent-color:#ddb56b;height:32px;cursor:ew-resize;direction:ltr}
.lab27-controls{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:14px}
#concentrationLab27 button{border:1px solid #e2c28b70;border-radius:30px;background:#ffffff0b;color:#f6ead3;cursor:pointer;padding:10px 20px;transition:background .3s,transform .25s;min-height:44px;font-weight:750}
#concentrationLab27 button:hover,#concentrationLab27 button:focus-visible{background:#d7b577;color:#12242b;transform:translateY(-2px)}
#concentrationLab27 button:disabled{opacity:.4;cursor:default}
.lab27-info{align-self:center;min-width:0}
.lab27-info h3{font-size:clamp(26px,3vw,40px);margin:8px 0;color:#f4d499;font-weight:900}
.lab27-info p{line-height:2;font-size:16px;color:#d3dddf}
.lab27-mix{display:flex;gap:12px;margin:20px 0}
.lab27-mix>div{flex:1;padding:16px 12px;border:1px solid #e5d2a333;background:#ffffff06;border-radius:14px}
.lab27-mix strong{display:block;font:32px Georgia;color:#f7db9d;direction:ltr;text-align:right}
.lab27-mix span{font-size:13px}
.lab27-detail{border-top:1px solid #ffffff26;padding-top:12px}
.lab27-detail b{color:#eed2a1}
.lab27-challenge{padding:20px;border:1px solid #c6a56970;border-radius:16px;margin-top:22px;background:#0c191f66}
.lab27-challenge p{margin:6px 0}
.lab27-score{color:#b8dbc8;font-size:13px}
.lab27-feedback{min-height:54px;margin-top:12px;font-size:15px;color:#ffe5aa}
.lab27-shelf{max-width:1240px;margin:64px auto 25px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}
.lab27-vessel{position:relative;text-align:center}
#concentrationLab27 .lab27-vessel>button{width:100%;border-radius:16px;padding:20px 12px 16px;background:linear-gradient(160deg,#ffffff0b,#ffffff02);border-color:#e4cf9f38;color:#f7edde}
.lab27-mini{width:58px;height:91px;border:1px solid #e4ebddaa;border-radius:12px 12px 17px 17px;position:relative;display:block;overflow:hidden;margin:12px auto 15px;background:linear-gradient(90deg,#ffffff20,transparent,#ffffff30)}
.lab27-mini:after{content:'';position:absolute;bottom:0;left:0;right:0;height:var(--mini);background:linear-gradient(90deg,#9a6d2b,#f1d487b0);border-top:2px solid #f6e1ad}
.lab27-vessel strong,.lab27-vessel small{display:block}
.lab27-vessel small{font:13px Arial;margin-top:7px;color:#e9d4a8}
.lab27-tip{display:none;text-align:right;padding:18px;background:#f2eadc;color:#20343b;border-radius:14px;margin-top:10px;line-height:1.9;font-size:14px;box-shadow:0 15px 30px #0003}
.lab27-vessel:is(:hover,:focus-within) .lab27-tip,.lab27-vessel[data-open=true] .lab27-tip{display:block}
.lab27-foot{max-width:1120px;margin:28px auto 0;color:#b9c9cf;line-height:2;font-size:14px;text-align:center}
.lab27-foot summary{cursor:pointer;color:#e5cc9d;display:inline-block;border-bottom:1px solid #b19b725c}
.lab27-foot a{color:#e8d4ac;margin:0 8px}
@keyframes lab27wave{to{transform:translateX(8px) scaleY(.6)}}
@keyframes lab27pour{0%{opacity:0;transform:scaleY(.1)}30%{opacity:1}100%{opacity:0;transform:scaleY(1)}}
@media(max-width:1100px){html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body header .top-ranges{grid-template-columns:1fr!important;gap:14px!important}html body header .top-ranges>.brand{grid-column:1;grid-row:1;justify-self:center}html body header .nav-destinations26{grid-column:1;grid-row:2;width:100%;justify-content:center}}
@media(max-width:800px){
html body header .nav-destinations26{gap:clamp(12px,4vw,28px)}
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro.hero{height:1000px!important;min-height:1000px!important}
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro .hero-editorial{width:100%!important}
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro .hero-scene{inset:280px -10% 60px!important;mask-image:linear-gradient(0deg,transparent,#000 18%,#000 85%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 18%,#000 85%,transparent)}
html:not(#rp-a):not(#rp-b):not(#rp-c):not(#rp-d):not(#rp-e) body #intro .scene-shade{background:linear-gradient(0deg,var(--hero-base),transparent 30%,transparent 85%,var(--hero-base))!important}
#concentrationLab27{padding:100px 18px 90px}.lab27-bench{grid-template-columns:1fr;padding:25px 20px 40px;gap:24px}.lab27-bottle{height:250px;width:170px}.lab27-neck{top:0}.lab27-shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lab27-info h3{font-size:28px}.lab27-info p{font-size:15px}.lab27-heading p{font-size:15px}.lab27-mix strong{font-size:28px}}
@media(prefers-reduced-motion:reduce){#concentrationLab27 *,html body #intro,html body #ranges .range-copy>b:after{animation:none!important;transition:none!important}html body button svg{transform:none!important}}
html body #intro .hero-mist27{position:absolute;inset:-50px;z-index:-1;background-size:cover;background-position:center;filter:blur(65px);opacity:.27;transition:background-image 1.4s;pointer-events:none}
