/* The original blue and lime ANVIDA theme continues into the taste tools. */
[hidden]{display:none!important}
button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}
.button,.text-link,.desktop-nav,.mobile-menu summary,.flavor-controls button,.detail-back{font-size:.875rem}
.kicker,.flavor-progress,.flavor-number,.hero-facts dd,.collection-meta,.footer-bottom{font-size:.75rem}
h1,h2,h3{line-height:1.04!important;letter-spacing:-.06em!important}
#kviz,#mix,#mapa,#zakulisi{scroll-margin-top:100px}
.flavor-panel{grid-template-columns:minmax(0,1fr) minmax(270px,.95fr);column-gap:clamp(2rem,4vw,4rem);min-height:760px;padding-left:clamp(1rem,2vw,2rem)}
.flavor-media{max-width:480px;justify-self:start;overflow:hidden}
.flavor-content h3{font-size:clamp(2rem,3.5vw,4rem)}
.flavor-content #flavor-profile{font-size:.875rem;line-height:1.55;margin-bottom:1.6rem}
.profile-bars{display:grid;gap:.55rem;margin:1rem 0}.profile-bar{display:grid;grid-template-columns:125px 1fr;gap:.6rem;align-items:center}
.profile-track{height:6px;border-radius:5px;background:#ffffff38;overflow:hidden}.profile-fill{height:100%;background:var(--acid);transform-origin:left;animation:bar-enter .7s ease both}
.profile-pairing{padding-top:.75rem;border-top:1px solid #ffffff50}.profile-pairing strong{color:var(--acid)}
.profile-note{font-size:.75rem;line-height:1.6;color:#d8dcff;margin:.6rem 0}
.taste-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:stretch}
.taste-chart{position:relative;height:440px;border:2px solid var(--navy);background-color:#fff;background-image:linear-gradient(#d9dced 1px,transparent 1px),linear-gradient(90deg,#d9dced 1px,transparent 1px);background-size:20% 20%;padding:2rem}
#taste-points{position:absolute;inset:35px 38px 62px 56px}
.taste-point{position:absolute;left:calc(var(--x)*1%);bottom:calc(var(--y)*1%);transform:translate(-50%,50%);background:var(--point-tone);border:2px solid var(--navy);color:var(--navy);min-height:44px;border-radius:999px;padding:.5rem .75rem;font-weight:800;font-size:.875rem;box-shadow:0 5px 0 #0c1b501c;transition:box-shadow .2s,background .2s}
.taste-point:hover,.taste-point[aria-pressed=true]{background:var(--navy);color:#fff;box-shadow:0 0 0 5px var(--acid);z-index:2}
.axis-y{position:absolute;top:50%;left:.5rem;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.875rem;font-weight:800}
.axis-x{position:absolute;bottom:.8rem;left:20%;right:10%;text-align:center;font-size:.875rem;font-weight:800}
.chart-corner{position:absolute;right:.65rem;font-size:.75rem;color:#555f80}.corner-top{top:.5rem}.corner-bottom{bottom:.7rem}
.taste-selection{background:var(--blue);color:#fff;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:1.5rem;gap:1.2rem;min-width:0}
.taste-selection img{width:100%;aspect-ratio:1;object-fit:cover}.taste-selection h3{font-size:clamp(1.5rem,2.5vw,2.7rem);margin:.75rem 0}.taste-selection .kicker-blue{color:var(--acid)}.taste-selection p{line-height:1.65;font-size:.9375rem}
.taste-disclaimer{font-size:.875rem;line-height:1.6;margin:1.5rem 0 0;color:#535f84}
.quiz-section{background:var(--navy);color:#fff;max-width:var(--max);overflow:hidden}
.quiz-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(2rem,6vw,6rem);align-items:start}
.quiz-intro h2{font-size:clamp(3rem,5.5vw,6.2rem);font-weight:900;margin-bottom:2rem}.quiz-intro h2 span{color:var(--acid)}.quiz-intro p{line-height:1.75;color:#e4e7ff}.quiz-duration{display:inline-block;border:1px solid #ffffff55;padding:.6rem .9rem;font-size:.875rem}
.quiz-card{background:var(--blue);padding:clamp(1.5rem,3vw,3.2rem);min-height:430px;border:1px solid #ffffff60;box-shadow:12px 12px 0 #050f33}
.quiz-card h3{font-size:clamp(1.8rem,3vw,3rem);margin:1.1rem 0 1.8rem;outline-offset:6px}
.quiz-progress{display:flex;gap:.5rem}.quiz-progress span{height:5px;background:#ffffff45;flex:1}.quiz-progress .is-complete{background:var(--acid)}
.quiz-counter{margin-top:1.8rem;font-size:.875rem;font-weight:700;color:var(--acid)}
.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.quiz-option{border:1px solid #ffffff80;background:#ffffff08;color:#fff;text-align:left;min-height:80px;padding:1.1rem;font-size:1rem;font-weight:700;transition:background .2s,color .2s,transform .2s}
.quiz-option:hover,.quiz-option[aria-pressed=true]{background:var(--acid);color:var(--navy);transform:translateY(-2px)}
.quiz-text-button{background:transparent;border:0;padding:.8rem 0;color:#fff;text-decoration:underline;text-underline-offset:5px;min-height:44px;font-size:.875rem;margin-top:1rem}
.quiz-stage,.quiz-results{animation:stage-enter .35s ease both}.mystery-stage{text-align:center}
.mystery-card{position:relative;width:min(100%,320px);border:3px solid var(--acid);padding:0;background:var(--navy);color:#fff;aspect-ratio:4/3;overflow:hidden;display:block;margin:0 auto}
.mystery-card img{width:100%;height:100%;object-fit:cover;opacity:.25;filter:blur(3px);transition:filter .6s,opacity .6s,transform .6s}
.mystery-veil{position:absolute;inset:0 0 3rem;background:linear-gradient(130deg,#1c26aaa0,#0c1b50e0);display:grid;place-items:center;font-size:5rem;font-weight:900;transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.mystery-label{position:absolute;bottom:0;left:0;right:0;background:var(--acid);color:var(--navy);padding:.85rem;font-size:.9375rem;font-weight:800}
.mystery-card.is-open{opacity:1}.mystery-card.is-open img{opacity:1;filter:blur(0);transform:scale(1.04)}.mystery-card.is-open .mystery-veil{transform:translateY(-110%)}
.quiz-picks{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.6rem 0}.quiz-picks img{aspect-ratio:1;width:100%;object-fit:cover}.quiz-picks h4{font-size:1.2rem;margin:.65rem 0}.pick-label{display:block;font-size:.75rem;color:var(--acid);margin:.8rem 0}.quiz-picks p{font-size:.875rem;line-height:1.6}
.quiz-results>.quiz-text-button{display:block}.quiz-result-note{font-size:.875rem;color:#e4e7ff;line-height:1.6;margin-top:1rem}
.mix-section{background:#eff2ff}.mix-builder{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:start}
.mix-controls,.mix-summary{padding:clamp(1.2rem,3vw,2.5rem);background:#fff;border:2px solid var(--navy)}
.mix-sizes{display:flex;gap:.6rem;margin-bottom:1.5rem}.mix-sizes button{min-height:48px;min-width:85px;background:#fff;color:var(--navy);border:2px solid var(--navy);font-size:1rem;font-weight:800}.mix-sizes button[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue)}
.mix-row{display:grid;grid-template-columns:65px 1fr auto;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line)}.mix-row img{width:65px;height:65px;object-fit:cover}.mix-name strong{font-size:1rem;line-height:1.3;display:block}.mix-name span{font-size:.75rem;color:#586482;display:block;margin-top:.25rem}
.mix-stepper{display:flex;align-items:center;gap:.4rem}.mix-stepper button{width:44px;height:44px;background:#fff;border:1px solid var(--navy);color:var(--navy);font-size:1.2rem;font-weight:700}.mix-stepper button:hover:not(:disabled){background:var(--acid)}.mix-stepper output{min-width:24px;text-align:center;font-weight:800;font-size:1rem}
.mix-reset{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1rem}.mix-reset button{background:none;border:0;text-decoration:underline;text-underline-offset:4px;color:var(--blue);min-height:44px;padding:0;font-size:.875rem;font-weight:700}
.mix-summary{position:sticky;top:110px}.mix-summary h3{font-size:2.5rem;color:var(--blue)}.mix-meter{height:10px;background:#e5e8f2}.mix-meter span{display:block;height:100%;background:var(--blue);transition:width .25s}.mix-summary #mix-status{font-size:.875rem;font-weight:700;line-height:1.6;margin:1rem 0}.mix-summary ul{padding-left:1.3rem;line-height:1.75;font-size:.9375rem}.mix-summary .button{width:100%;margin-top:.7rem}.summary-price{font-weight:900;font-size:2rem;color:var(--blue);margin:1.7rem 0 .8rem}.mix-hint{font-size:.875rem;line-height:1.7;color:#535f84;margin-top:1.5rem}
.mix-summary details{font-size:.875rem;line-height:1.6}.mix-summary summary{cursor:pointer;padding:.5rem 0}.mix-summary textarea{width:100%;resize:vertical;padding:.75rem;line-height:1.6;font:inherit;color:var(--navy);border:1px solid var(--navy);margin-top:.75rem}.mix-summary #mix-feedback{font-size:.875rem;line-height:1.6;margin:1rem 0 0;color:var(--blue)}
.mix-order-guide{margin-top:1.5rem;padding:1.25rem;background:var(--acid);border:2px solid var(--navy);font-size:1rem;line-height:1.6}
.mix-order-guide strong{display:block;font-size:1.1rem;margin-bottom:.6rem}.mix-order-guide ol{margin:0;padding-left:1.25rem}.mix-order-guide li+li{margin-top:.5rem}.mix-order-guide b{font-weight:900}
.mix-order-guide p{margin:.8rem 0 0;font-size:.875rem}.mix-summary #mix-feedback:not(:empty){border-left:4px solid var(--blue);padding:.75rem;background:#eff2ff;font-weight:700}
a[aria-disabled=true]{opacity:.45;cursor:not-allowed;pointer-events:none}
.production-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,7vw,8rem);align-items:center}.production-layout video{width:100%;max-width:400px;aspect-ratio:512/910;object-fit:contain;background:var(--navy);border:8px solid var(--blue)}.production-copy h3{font-size:clamp(2.3rem,4vw,4.5rem);color:var(--blue);font-weight:900}.production-copy p{line-height:1.75;max-width:520px}.production-copy a{display:block;margin-top:1.5rem;line-height:1.6}
.detail-profile{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.detail-profile .profile-bars{background:var(--navy);color:#fff;padding:2rem;margin:0}.detail-profile .profile-bar{grid-template-columns:160px 1fr}.detail-profile .pairing-card{border:2px solid var(--navy);padding:2rem;line-height:1.8}.detail-profile h3{color:var(--blue);font-size:1.5rem}.taste-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0}.taste-notes article{padding:1.5rem;border-top:5px solid var(--detail-tone);background:#f1f3fb}.taste-notes strong{font-size:.75rem;color:var(--blue);display:block;margin-bottom:.8rem}.taste-notes h3{font-size:1.25rem;margin:0;line-height:1.5!important}
.product-film video{width:min(100%,640px);aspect-ratio:1;object-fit:contain;background:var(--blue)}.product-film p{max-width:640px;font-size:.875rem;line-height:1.6;margin-top:1rem}
.nojs-notice{padding:2rem;line-height:1.8}.nojs-notice a{text-decoration:underline}
@keyframes bar-enter{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes stage-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.flavor-panel{grid-template-columns:1fr;min-height:0;row-gap:2rem;padding:clamp(1.5rem,4vw,3rem)}.flavor-media{max-width:420px;justify-self:center}.flavor-content{display:block}.flavor-controls{flex-direction:row}.taste-selection{grid-template-columns:1fr}.taste-selection img{max-width:190px;margin:auto}.quiz-layout{grid-template-columns:1fr 1.3fr}.mix-builder{grid-template-columns:1.15fr .85fr}.mix-row{grid-template-columns:50px 1fr auto;gap:.65rem}.mix-row img{width:50px;height:50px}}
@media(max-width:760px){#kviz,#mix,#mapa,#zakulisi{scroll-margin-top:84px}.taste-layout,.quiz-layout,.mix-builder,.production-layout,.detail-profile{grid-template-columns:1fr}.taste-chart{height:370px}.taste-selection{grid-template-columns:.8fr 1.2fr}.taste-selection img{max-width:100%}.quiz-intro h2{font-size:clamp(3rem,12vw,5rem)}.quiz-card{box-shadow:7px 7px 0 #050f33}.mix-summary{position:static}.production-layout video{margin:auto}.taste-notes{grid-template-columns:1fr}.flavor-content #flavor-profile{max-width:100%}.hero-facts dd{font-size:.75rem}.hero-facts{gap:.5rem}.hero h1{font-size:clamp(3rem,13vw,5.5rem)}.footer-bottom{font-size:.75rem;line-height:1.6}}
@media(max-width:420px){.quiz-options{grid-template-columns:1fr}.quiz-option{min-height:62px}.quiz-picks{gap:.65rem}.quiz-picks h4{font-size:1rem}.mix-controls,.mix-summary{padding:1rem}.mix-row{grid-template-columns:38px 1fr auto;gap:.5rem}.mix-row img{width:38px;height:48px}.mix-name strong{font-size:.875rem}.mix-name span{display:none}.mix-stepper{gap:2px}.mix-stepper button{width:44px}.mix-stepper output{min-width:17px}.taste-chart{height:350px}#taste-points{inset:30px 20px 60px 42px}.taste-point{font-size:.75rem;padding:.4rem .55rem}.taste-selection{grid-template-columns:1fr}.taste-selection img{max-width:210px}.detail-profile .profile-bars,.detail-profile .pairing-card{padding:1.2rem}.detail-profile .profile-bar{grid-template-columns:130px 1fr}.flavor-controls button{font-size:.875rem}.header-actions{gap:.5rem}.hero-facts{flex-wrap:wrap;row-gap:1rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.taste-point{width:44px;height:44px;min-height:44px;padding:0;border:0;background:transparent;box-shadow:none;display:grid;place-items:center;transform:translate(-50%,50%)}
.taste-point::before{content:"";width:16px;height:16px;border:2px solid var(--navy);border-radius:50%;background:var(--point-tone)}
.taste-point span{position:absolute;white-space:nowrap;font-size:.875rem;color:var(--navy);background:#fff;padding:.25rem .4rem;border:1px solid var(--navy);bottom:36px;left:10px}
.taste-point:hover,.taste-point[aria-pressed=true]{background:transparent;color:var(--navy);box-shadow:none}
.taste-point:hover::before,.taste-point[aria-pressed=true]::before{background:var(--navy);box-shadow:0 0 0 5px var(--acid)}
.taste-point[aria-pressed=true] span{background:var(--navy);color:#fff}
.taste-point[data-map-index="0"] span{bottom:auto;top:36px;left:8px}
.taste-point[data-map-index="1"] span{left:auto;right:36px;bottom:25px}
.taste-point[data-map-index="3"] span{bottom:auto;top:36px;left:auto;right:25px}
.taste-point[data-map-index="4"] span{left:auto;right:32px;bottom:20px}
@media(max-width:420px){.taste-point span{font-size:.75rem}}

/* Short authentic production films, loaded only when played. */
#dan{scroll-margin-top:100px}
.brewing-section{background:#eff2ff}
.brewing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.brewing-card{min-width:0;background:#fff;border:2px solid var(--navy);padding:1rem}
.brewing-meta{display:flex;justify-content:space-between;gap:.75rem;color:var(--blue);font-size:.75rem;font-weight:800;margin-bottom:1rem}
.brewing-card video{display:block;width:100%;aspect-ratio:9/16;background:var(--navy);object-fit:contain}
.brewing-card h3{font-size:1.6rem;margin:1.4rem 0 .8rem;color:var(--blue)}
.brewing-card p{font-size:1rem;line-height:1.65;margin:0 0 .5rem}
@media(max-width:760px){#dan{scroll-margin-top:84px}.brewing-grid{grid-template-columns:1fr;max-width:390px;margin:auto}.brewing-card{padding:1rem}.brewing-card h3{font-size:1.8rem}}

/* Bottle flies from the selected name to its presentation area. */
.flavor-flight{z-index:60;pointer-events:none;object-fit:cover;transform-origin:center;will-change:transform,opacity;box-shadow:0 14px 35px #0c1b5030}
.taste-point[data-map-index="0"]::before{background:#f4b61f;transition:background .2s,transform .2s,box-shadow .2s}
.taste-point[data-map-index="0"]:hover::before,.taste-point[data-map-index="0"][aria-pressed=true]::before{background:#ee9800;transform:scale(1.2);box-shadow:0 0 0 3px #fff,0 0 0 6px var(--navy)}
.taste-point[data-map-index="0"]:hover::before{background:#ffcf52;transform:scale(1.45)}
.taste-point:hover span{background:var(--navy);color:#fff}
.collection-detail-hero .price{margin:1.25rem 0 .75rem}
.collection-flavor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.collection-flavor-card{display:flex;flex-direction:column;background:#f0f2fb;border:1px solid var(--line);border-top:5px solid var(--card-tone);padding:1.25rem;min-width:0}
.collection-flavor-card img{width:100%;aspect-ratio:1;object-fit:cover;margin-bottom:1rem}
.collection-flavor-card .kicker{margin-bottom:.6rem}.collection-flavor-card h3{color:var(--blue);font-size:1.4rem;line-height:1.3!important;margin:0 0 .75rem}
.collection-flavor-card p{font-size:.9375rem;line-height:1.65}.collection-flavor-card .button{margin-top:auto}
.collection-depth-intro{max-width:760px;line-height:1.75;margin-bottom:2rem}
.flavor-dialog{width:min(1180px,calc(100% - 2rem));max-height:calc(100dvh - 2rem);padding:0;border:2px solid var(--navy);background:#fff;color:var(--navy);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 30px 100px #0005}
.flavor-dialog::backdrop{background:#0c1b50bf;backdrop-filter:blur(4px)}
.flavor-dialog[open]{animation:detail-open .3s cubic-bezier(.2,.8,.2,1)}
.flavor-dialog-top{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem clamp(1rem,3vw,2.5rem);background:var(--navy);color:#fff}
.flavor-dialog-top>span{font-size:.75rem;letter-spacing:.1em;font-weight:800}.dialog-close{background:#fff;color:var(--navy);border:0;min-height:44px;padding:.6rem 1rem;font-weight:800;white-space:nowrap}
.dialog-flavor-hero{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:2rem;padding:clamp(1.3rem,4vw,3.5rem);background:#eff2ff;border-bottom:8px solid var(--detail-tone)}
.dialog-flavor-hero h1{font-size:clamp(2.4rem,5vw,4.8rem);color:var(--blue);margin:0 0 1.25rem;overflow-wrap:anywhere}.dialog-flavor-hero p{line-height:1.75}.dialog-flavor-hero img{width:100%;aspect-ratio:1;object-fit:cover}
.flavor-depth-section{padding:clamp(2.5rem,5vw,4.5rem) clamp(1.3rem,4vw,3.5rem);min-width:0}
.flavor-depth-section h2{font-size:clamp(2rem,4vw,3.7rem);margin:0 0 1.8rem;font-weight:900;color:var(--navy);overflow-wrap:anywhere}.flavor-depth-section+.flavor-depth-section{border-top:1px solid var(--line)}
.ingredient-story{background:#eff2ff}.ingredient-cinema{display:grid;grid-template-columns:1.3fr 1fr;gap:2rem;align-items:start}.ingredient-cinema figure{margin:0;min-width:0}.ingredient-cinema video{width:100%;aspect-ratio:16/9;object-fit:contain;background:var(--navy);border:2px solid var(--navy)}
.ingredient-cinema figcaption{font-size:.8125rem;line-height:1.6;color:#535f84;margin-top:1rem}.ingredient-cards{display:grid;gap:1rem}.ingredient-cards article{background:#fff;border-left:5px solid var(--detail-tone);padding:1.2rem}
.ingredient-cards span{font-size:.75rem;font-weight:900;color:var(--blue)}.ingredient-cards h3{font-size:1.25rem;line-height:1.4!important;margin:.4rem 0 .7rem;color:var(--blue)}.ingredient-cards p{font-size:.9375rem;line-height:1.7;margin:0}
.full-composition{border:2px solid var(--navy);border-top:7px solid var(--detail-tone);padding:clamp(1.25rem,3vw,2rem);line-height:1.85}.full-composition>p:first-child{margin-bottom:1rem;font-size:1rem}
.composition-note{font-size:.8125rem;line-height:1.7;color:#535f84;margin:0}.base-explainer{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem}.base-explainer article{background:#f2f3fb;padding:1.5rem}.base-explainer h3{font-size:1.25rem;color:var(--blue)}.base-explainer p{line-height:1.75;margin:0;font-size:.9375rem}
.flavor-practical{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:start}.flavor-faq details{border-bottom:1px solid var(--line)}.flavor-faq summary{cursor:pointer;min-height:56px;padding:1rem 0;font-weight:800;line-height:1.6}.flavor-faq p{line-height:1.75;font-size:.9375rem;margin:0 0 1.25rem}
.nutrition-card{background:#eff2ff;padding:clamp(1.25rem,3vw,2rem)}.nutrition-card h3{color:var(--blue);font-size:1.5rem;margin-bottom:.6rem}.nutrition-card>p{font-size:.875rem;line-height:1.6}.nutrition-card table{width:100%;border-collapse:collapse;font-size:.875rem;margin-bottom:1rem}.nutrition-card th,.nutrition-card td{text-align:left;padding:.8rem 0;border-bottom:1px solid #cfd4e8;line-height:1.5}.nutrition-card th{font-weight:600;padding-right:1rem}.nutrition-card td{text-align:right;white-space:nowrap}
.dialog-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1.5rem clamp(1.3rem,4vw,3.5rem);background:#eff2ff;border-top:1px solid var(--line)}
.flavor-local-nav{display:flex;flex-wrap:wrap;gap:1rem;padding:1.25rem var(--pad);background:#eff2ff;margin:0 var(--pad)}.flavor-local-nav a{min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:5px;font-size:.9375rem;font-weight:800}.flavor-page-content{margin:0 var(--pad)}.flavor-page-content .flavor-depth-section{padding-left:0;padding-right:0}.flavor-page-content .ingredient-story{padding-left:clamp(1.25rem,3vw,2rem);padding-right:clamp(1.25rem,3vw,2rem)}
.flavor-depth-section[id]{scroll-margin-top:105px}
@keyframes detail-open{from{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:900px){.collection-flavor-grid{grid-template-columns:1fr 1fr}.ingredient-cinema{grid-template-columns:1fr}.ingredient-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.flavor-dialog{width:calc(100% - 1rem);max-height:calc(100dvh - 1rem)}.dialog-flavor-hero{grid-template-columns:1fr;gap:1.25rem}.dialog-flavor-hero img{max-width:340px;justify-self:center;grid-row:1}.flavor-practical,.base-explainer{grid-template-columns:1fr}.ingredient-cards{grid-template-columns:1fr}.dialog-bottom .button{width:100%}.flavor-dialog-top>span{font-size:.625rem;letter-spacing:.04em}.flavor-page-content,.flavor-local-nav{margin:0 1.25rem}.flavor-depth-section[id]{scroll-margin-top:84px}}
@media(max-width:480px){.collection-flavor-grid{grid-template-columns:1fr}.collection-flavor-card{display:grid;grid-template-columns:100px 1fr;gap:.6rem 1rem;align-items:center}.collection-flavor-card img{grid-row:1/5;margin:0}.collection-flavor-card .kicker{font-size:.625rem;margin:0}.collection-flavor-card h3{font-size:1.15rem;margin:0}.collection-flavor-card p{font-size:.8125rem;margin:0}.collection-flavor-card .button{grid-column:1/-1;margin-top:.5rem}.flavor-dialog .detail-profile .profile-bar{grid-template-columns:120px 1fr}.nutrition-card{padding:1.2rem}}

/* Direct flavor access and the live shop's #d7ff16 brand accent. */
.button{border-radius:10px;transition:background .18s,color .18s,border-color .18s,transform .18s,box-shadow .18s}
.button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0b225a18}
.button.button-blue:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]){background:var(--acid);border-color:var(--acid);color:var(--navy)}
.site-header .button.button-blue:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]){color:var(--blue)}
.button-light:is(:hover,:focus-visible),.button-outline:is(:hover,:focus-visible){background:var(--acid);border-color:var(--acid);color:var(--navy)}
.button-acid:is(:hover,:focus-visible){background:#fff;border-color:#fff;color:var(--navy)}
.hero-detail-hint{font-size:.8125rem;line-height:1.65;color:#e4e7ff;max-width:470px;margin:1.1rem 0 0}
.flavors .section-heading h2{font-size:clamp(3.3rem,6vw,6.5rem)}
.flavors .section-heading>p{max-width:420px;font-size:1rem}
.flavor-entry-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-bottom:2.5rem}
.flavor-entry{min-width:0;display:flex;flex-direction:column;padding:1rem;background:#fff;border:1px solid var(--line);border-top:5px solid var(--entry-tone);border-radius:14px;box-shadow:0 4px 18px #0b225a05;transition:transform .22s,box-shadow .22s,border-color .22s}
.flavor-entry-photo{display:block;overflow:hidden;border-radius:8px;aspect-ratio:1;background:#f2f4fb;margin-bottom:1rem}
.flavor-entry-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.flavor-entry-number{font-size:.625rem;letter-spacing:.1em;font-weight:800;color:var(--blue);margin-bottom:.5rem}
.flavor-entry h3{font-size:clamp(1rem,1.45vw,1.35rem);line-height:1.3!important;letter-spacing:-.035em!important;color:var(--navy);margin:0 0 .65rem;overflow-wrap:break-word}
.flavor-entry p{font-size:.875rem;line-height:1.65;color:#535f84;margin-bottom:1rem;flex:1}
.flavor-entry-link{display:flex;align-items:center;justify-content:space-between;gap:.35rem;color:var(--blue);font-size:.875rem;font-weight:800;border-top:1px solid var(--line);padding-top:.85rem}
.flavor-entry-link>span{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--blue);color:#fff;transition:background .2s,color .2s,transform .2s}
.flavor-entry:is(:hover,:focus-visible){transform:translateY(-4px);border-color:var(--blue);box-shadow:0 14px 30px #0b225a14}
.flavor-entry:is(:hover,:focus-visible) img{transform:scale(1.045)}
.flavor-entry:is(:hover,:focus-visible) .flavor-entry-link>span{background:var(--acid);color:var(--navy);transform:rotate(7deg)}
.explorer-hint{line-height:1.7;font-size:.9375rem;margin-bottom:1.3rem;color:#535f84;max-width:800px}.explorer-hint strong{color:var(--navy)}
.flavor-explorer{border-radius:16px;overflow:hidden;box-shadow:0 14px 40px #0b225a14}
.flavor-panel{min-height:680px}
.flavor-page-link{display:flex;align-items:center;min-height:44px;line-height:1.6;margin-top:.65rem;font-size:.8125rem}
.flavor-content .button{max-width:100%;line-height:1.5}
.lab-preview{display:grid;grid-template-columns:1.25fr 1fr;gap:2rem;align-items:center;margin-top:2.5rem;padding:clamp(1.5rem,3vw,2.5rem);background:#eef2fc;border:1px solid var(--line);border-left:5px solid var(--acid);border-radius:14px}
.lab-preview .kicker{margin-bottom:.75rem;line-height:1.6}
.lab-preview h3{font-size:clamp(1.6rem,2.5vw,2.3rem);letter-spacing:-.04em!important;line-height:1.25!important;color:var(--navy);margin-bottom:.9rem}.lab-preview h3 span{display:block;font-size:1rem;font-weight:600;letter-spacing:0;margin-top:.35rem}
.lab-preview p{font-size:.9375rem;line-height:1.75;margin:0;max-width:600px}
.lab-preview-links{display:grid;gap:.8rem}.lab-preview-links a{display:flex;align-items:center;min-height:44px;line-height:1.6;color:var(--blue)}.lab-preview-links>span{font-size:.8125rem;line-height:1.6;color:#535f84}
.mix-flavor-detail{display:flex;align-items:center;min-height:44px;color:var(--blue);text-decoration:underline;text-underline-offset:4px;font-size:.8125rem;font-weight:700;line-height:1.5}
.mix-flavor-detail:hover{color:var(--navy)}
.price-caption{font-size:.8125rem;line-height:1.6;color:#535f84;margin:-.3rem 0 1.5rem}
.mix-controls,.mix-summary,.quiz-card,.brewing-card,.collection-card,.nutrition-card,.pairing-card{border-radius:14px}
.mix-sizes button,.mix-stepper button,.quiz-option,.flavor-controls button,.dialog-close{border-radius:8px}
.mix-sizes button:is(:hover,:focus-visible){background:var(--acid);border-color:var(--acid);color:var(--navy)}
.collection-flavor-card{border-radius:14px}.collection-flavor-card img{border-radius:8px}
.collection-page-link{display:flex;align-items:center;min-height:44px;line-height:1.6;font-size:.8125rem;margin-top:.65rem;color:var(--blue)}
.flavor-dialog{border-radius:16px;border:1px solid var(--line)}
.flavor-local-nav{position:sticky;top:84px;z-index:20;background:#fff;color:var(--blue);border-bottom:2px solid var(--acid);column-gap:.4rem;row-gap:.25rem;padding-top:.65rem;padding-bottom:.65rem;box-shadow:0 6px 18px #1c26aa08}
.flavor-local-nav a{font-size:.8125rem;padding:.5rem .75rem;border-radius:8px;color:var(--blue);text-decoration:none;transition:background .18s,color .18s}.flavor-local-nav a:is(:hover,:focus-visible,[aria-current]){background:var(--acid);color:var(--blue)}
.flavor-depth-section[id]{scroll-margin-top:180px}
.micro-count{padding:1.2rem;margin-top:1.4rem;border-radius:10px;background:var(--acid);color:var(--navy)}
.micro-count>span{display:block;font-size:.8125rem;font-weight:700;line-height:1.5}.micro-count strong{display:block;font-size:clamp(1.15rem,2.2vw,1.6rem);line-height:1.4;letter-spacing:-.03em;margin:.45rem 0}.micro-count p{font-size:.8125rem;line-height:1.7;margin:0}
.laboratory-section{background:#f4f6fc}.laboratory-lead{max-width:850px;line-height:1.8;font-size:1rem;margin-bottom:2rem}
.laboratory-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.laboratory-grid article{min-width:0;background:#fff;border:1px solid var(--line);border-top:5px solid var(--acid);padding:clamp(1.2rem,3vw,2rem);border-radius:12px}
.laboratory-grid .kicker{margin-bottom:1rem}.laboratory-grid h3{font-size:clamp(1.35rem,2.5vw,2rem);line-height:1.4!important;letter-spacing:-.04em!important;color:var(--blue)}.laboratory-grid p:not(.kicker){font-size:.9375rem;line-height:1.75}.laboratory-grid a{display:flex;align-items:center;min-height:44px;line-height:1.6}.laboratory-note{margin-top:1.5rem;max-width:900px}
.flavor-page-content .laboratory-section{padding-left:clamp(1.25rem,3vw,2rem);padding-right:clamp(1.25rem,3vw,2rem)}
@media(max-width:1100px){.flavor-entry-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.flavor-entry h3{font-size:1.25rem}.flavor-panel{min-height:0}}
@media(max-width:760px){.flavor-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.flavor-entry{padding:.85rem}.flavor-entry h3{font-size:1.1rem}.flavor-entry:last-child{grid-column:1/-1;display:grid;grid-template-columns:100px 1fr;column-gap:1rem}.flavor-entry:last-child .flavor-entry-photo{grid-row:1/5;margin-bottom:0;align-self:center}.flavor-entry:last-child> :not(.flavor-entry-photo){grid-column:2}.lab-preview,.laboratory-grid{grid-template-columns:1fr}.lab-preview{gap:1rem}.flavor-local-nav{gap:0 1rem;top:70px;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap}.flavor-local-nav a{flex:0 0 auto}.flavor-depth-section[id]{scroll-margin-top:150px}.collection-page-link{grid-column:1/-1;margin:0}.mix-name span.sr-only{display:block!important}}
@media(max-width:420px){.flavor-entry-link{font-size:.8125rem}.flavor-entry-link>span{width:26px;height:26px}.flavor-entry p{font-size:.8125rem}.flavor-entry-number{font-size:.5625rem}.mix-flavor-detail{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.flavor-entry:is(:hover,:focus-visible),.button:hover{transform:none}.flavor-entry:is(:hover,:focus-visible) img,.flavor-entry:is(:hover,:focus-visible) .flavor-entry-link>span{transform:none}}

/* Responsive layouts: zero-minimum grid tracks, touch controls and short viewports. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
button,a,summary{touch-action:manipulation}
.button{max-width:100%;line-height:1.5;overflow-wrap:anywhere}
.hero-copy,.hero-visual,.section-heading>*,.quiz-intro,.quiz-card,.taste-selection>*,.mix-controls,.mix-summary,.mix-name,.detail-hero-copy,.detail-cta-actions,.flavor-practical>*,.base-explainer>*,.ingredient-cards>*,.collection-detail-hero>*{min-width:0}
.mix-row{grid-template-columns:65px minmax(0,1fr) auto}
.mix-name strong,.flavor-entry h3,.quiz-picks h4,.lab-preview-links a,.laboratory-grid a{overflow-wrap:anywhere}
.taste-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
.quiz-layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}
.mix-builder{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.detail-profile,.base-explainer,.laboratory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.flavor-practical{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.ingredient-cinema{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
.taste-selection{grid-template-columns:repeat(2,minmax(0,1fr))}
.quiz-options,.quiz-picks{grid-template-columns:repeat(2,minmax(0,1fr))}
.detail-back{min-height:44px;align-items:center;line-height:1.6}
.mobile-menu summary{min-width:68px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:8px}
.mobile-menu>div{max-width:calc(100vw - 2rem);max-height:calc(100vh - 100px);max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 12px 28px #1c26aa18}
.flavor-dialog{max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);-webkit-overflow-scrolling:touch}
.flavor-dialog-top{flex-shrink:0}.dialog-close{flex-shrink:0}
.flavor-local-nav{flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;scroll-padding-inline:1rem}
.flavor-local-nav a{flex-shrink:0}
.profile-track{min-width:0}
.nutrition-card table{table-layout:fixed}.nutrition-card th{width:58%}.nutrition-card td{width:42%;white-space:normal;overflow-wrap:anywhere}
@media(max-width:1100px){.mix-row{grid-template-columns:50px minmax(0,1fr) auto}.flavor-panel{grid-template-columns:minmax(0,1fr)}}
@media(max-width:1000px){
  .section-heading{display:block}.section-heading>p{margin-top:1.5rem;max-width:620px}
  .taste-layout,.quiz-layout,.mix-builder,.production-layout,.detail-profile,.flavor-practical,.ingredient-cinema{grid-template-columns:minmax(0,1fr)}
  .quiz-intro{max-width:640px}.mix-summary{position:static}
  .taste-selection{grid-template-columns:minmax(140px,.65fr) minmax(0,1.35fr)}.taste-selection img{max-width:240px}
  .hero{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:2rem}
  .motion-section{display:flex;flex-direction:column;gap:2.5rem}.motion-copy,.motion-player{width:100%;min-width:0}.motion-player{transform:none}
  .detail-hero{grid-template-columns:minmax(0,1fr);min-height:0}.detail-image{width:min(100%,480px);min-height:0;aspect-ratio:1;margin:auto}
  .detail-cta{grid-template-columns:minmax(0,1fr)}.detail-cta-actions{min-width:0;max-width:420px;width:100%}
  .collection-detail-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-detail-hero h1{font-size:clamp(3rem,5.5vw,4.5rem);overflow-wrap:anywhere}
}
@media(max-width:760px){
  .section{padding-top:4rem;padding-bottom:4rem}.section-heading{margin-bottom:2rem}
  .flavors .section-heading h2,.section-heading h2{font-size:clamp(2.75rem,10vw,4.8rem)}
  .hero{padding-top:3.5rem;min-height:auto}.hero h1{font-size:clamp(2.75rem,11.5vw,5.5rem)}.hero-facts{flex-wrap:wrap;row-gap:1rem}
  .hero-photo{box-shadow:12px 12px 0 var(--navy)}.hero-buttons{gap:1.1rem}
  .flavor-tabs{scrollbar-width:thin;scroll-padding-inline:1rem}.flavor-tabs::-webkit-scrollbar{display:block;height:4px}.flavor-tabs::-webkit-scrollbar-thumb{background:var(--blue);border-radius:4px}
  .flavor-tab{scroll-snap-align:none}.flavor-content .button{width:100%}.flavor-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.flavor-controls button{min-height:48px;font-size:.75rem;letter-spacing:.03em;padding:.75rem .3rem}
  .flavor-page-link{line-height:1.7}.taste-selection{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}
  .base-explainer,.ingredient-cinema,.lab-preview,.laboratory-grid{grid-template-columns:minmax(0,1fr)}
  .ingredient-cards{grid-template-columns:minmax(0,1fr)}
  .quiz-card{padding:1.25rem}.quiz-card h3{font-size:clamp(1.6rem,6vw,2.4rem);line-height:1.2!important}
  .quiz-option{min-height:72px;line-height:1.6}.quiz-picks h4{line-height:1.5}
  .mix-summary h3{font-size:clamp(1.8rem,7vw,2.5rem)}.mix-summary textarea{font-size:1rem}
  .dialog-flavor-hero{grid-template-columns:minmax(0,1fr)}.flavor-dialog{width:calc(100% - 1rem);max-height:calc(100vh - 1rem);max-height:calc(100dvh - 1rem)}
  .flavor-dialog-top{padding:.6rem .75rem;gap:.5rem}.dialog-close{min-height:48px;font-size:.875rem;padding:.6rem .8rem}
  .dialog-flavor-hero h1{font-size:clamp(2rem,8vw,3.5rem);line-height:1.15!important}
  .collection-detail-hero{display:flex;flex-direction:column-reverse}.collection-detail-hero h1{font-size:clamp(2.7rem,9vw,4.5rem)}
  .detail-hero h1{font-size:clamp(2.5rem,9.5vw,4.5rem)}.detail-hero-copy{padding:2.25rem 1.25rem}
  .detail-cta h2{font-size:clamp(2.3rem,8.5vw,4rem)}.detail-cta .button{width:100%}
  .footer-main>div{display:flex;flex-wrap:wrap}.footer-main>div a,.footer-bottom a{min-height:44px;display:flex;align-items:center}
  .footer-bottom{flex-wrap:wrap;align-items:center}
}
@media(max-width:600px){
  .mix-row{grid-template-columns:48px minmax(0,1fr);gap:.35rem .8rem;align-items:start;padding:1.2rem 0}
  .mix-row img{width:48px;height:64px;grid-row:1/3}.mix-name{grid-column:2;grid-row:1}
  .mix-stepper{grid-column:2;grid-row:2;gap:.5rem}.mix-stepper button{width:48px;height:48px}.mix-stepper output{min-width:36px}
  .mix-name strong{font-size:.9375rem;line-height:1.6}.mix-flavor-detail{font-size:.8125rem}
  .taste-selection{grid-template-columns:minmax(0,1fr)}.taste-selection img{max-width:200px}
  .taste-point[data-map-index="0"] span{left:auto;right:0}.taste-point[data-map-index="2"] span{left:auto;right:0}
  .quiz-options{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:480px){
  .flavor-entry-grid{grid-template-columns:minmax(0,1fr)}
  .flavor-entry,.flavor-entry:last-child{display:grid;grid-template-columns:80px minmax(0,1fr);column-gap:.85rem;row-gap:.3rem}
  .flavor-entry .flavor-entry-photo{grid-row:1/5;margin:0;align-self:center}.flavor-entry> :not(.flavor-entry-photo){grid-column:2}
  .flavor-entry p,.flavor-entry h3{margin-bottom:0}.flavor-entry-link{font-size:.875rem;padding-top:.5rem}
  .flavor-entry-number{font-size:.625rem}.flavor-entry h3{font-size:1.125rem}
  .collection-flavor-card{grid-template-columns:80px minmax(0,1fr)}
  .detail-profile .profile-bar{grid-template-columns:minmax(0,120px) minmax(0,1fr)}
  .quiz-picks{grid-template-columns:minmax(0,1fr)}.quiz-picks article{min-width:0}.quiz-picks img{max-width:250px;margin:auto}
}
@media(hover:none) and (pointer:coarse){
  .site-header{backdrop-filter:none;background:#fff}.flavor-dialog::backdrop{backdrop-filter:none}
  .button:hover,.flavor-entry:is(:hover,:focus-visible),.collection-card:hover{transform:none;box-shadow:none}
  .hero-photo:hover img,.collection-image:hover img,.story-photo:hover img,.flavor-entry:is(:hover,:focus-visible) img,.flavor-entry:is(:hover,:focus-visible) .flavor-entry-link>span{transform:none}
  .button.button-blue:hover:not(:disabled):not([aria-disabled="true"]):not(:focus-visible){background:var(--blue);border-color:transparent;color:#fff}
  .button-light:hover:not(:focus-visible){background:#fff;border-color:transparent;color:var(--blue)}.button-outline:hover:not(:focus-visible){background:#fff;border-color:var(--navy);color:var(--navy)}.button-acid:hover:not(:focus-visible){background:var(--acid);border-color:var(--acid);color:var(--navy)}
  .button.button-blue:active:not(:disabled):not([aria-disabled="true"]):not(:focus-visible){background:var(--acid);border-color:var(--acid);color:var(--navy)}
}
@media(prefers-reduced-motion:reduce){.collection-card:hover,.hero-photo:hover img,.collection-image:hover img,.story-photo:hover img{transform:none}}
