:root{--bg:#fff9ed;--panel:#fffcf5;--panel2:#f3ebd9;--line:#e1d5bc;--text:#073e49;--muted:#50676a;--acid:#ff661f;--yellow:#fac857;--red:#b43e30;--shadow:0 15px 40px #133d4620;--orange:#ff631c;--teal:#063c48;--cream:#fffaf0;--wood:#79441d}
body{font-family:Arial,Helvetica,sans-serif;font-size:16px;background:var(--cream);color:var(--teal)}
h1,h2,.display{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em;font-weight:900;line-height:1.07}h2{font-size:clamp(2rem,4vw,3.5rem)}h3{line-height:1.2}button,input,select,textarea{font-size:1rem}button:disabled{opacity:.55;cursor:not-allowed}a,button{touch-action:manipulation}.wrap{max-width:1280px;padding:0 28px}.kicker{font-size:.78rem;font-weight:800;letter-spacing:.15em;color:var(--teal);margin-bottom:16px}.topbar{background:var(--teal);color:#fff9ed;padding:7px 20px;font-weight:400;font-size:.78rem;letter-spacing:.035em}.nav{background:#fffaf2f5;border-bottom:1px solid #ddcfb3;backdrop-filter:blur(12px)}.navin{height:90px;gap:20px}.brand{display:inline-flex;flex-direction:column;align-items:center;line-height:.86;letter-spacing:-.04em;flex-shrink:0;color:var(--teal)}.brand strong{font:normal 52px/.9 Georgia,serif;letter-spacing:.01em}.brand small{font:700 14px/1.4 Arial,sans-serif;letter-spacing:.03em}.links{justify-content:center;gap:22px;font-size:.88rem;color:var(--teal)}.links a{padding:12px 0}.links a[aria-current=page]{color:#be4000}.actions{gap:6px}.pillbtn,.iconbtn,.menu-toggle,.lang{background:transparent;border:0;color:var(--teal);border-radius:9px}.pillbtn{padding:9px;display:flex;align-items:center;position:relative}.pillbtn .label{display:none}.pillbtn svg,.iconbtn svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:1.7}.cartcount{position:absolute;top:0;right:0;background:var(--orange);color:white;font-size:.65rem}.lang{padding:9px 4px;font-size:.85rem;font-weight:700}.hero{position:relative;min-height:650px;background:#c1f4ef;overflow:hidden}.hero-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.heroin{display:flex;align-items:center;min-height:650px;position:relative;padding-block:65px;z-index:1}.hero-copy{width:49%;align-self:flex-start;padding-top:28px}.hero h1{text-transform:none;font-size:clamp(2.8rem,4.7vw,4.6rem);line-height:1.06;max-width:670px;margin:0 0 20px;text-shadow:0 1px 20px #ffffff70}.hero h1 span{display:block}.hero p{font-size:1.12rem;max-width:440px;color:var(--teal);line-height:1.55;margin:0 0 25px}.ctas{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.btn,.add{border:1px solid var(--line);border-radius:12px;background:#fffaf3;color:var(--teal);font-size:.92rem;font-weight:700;padding:13px 22px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:12px}.btn.primary,.add{background:linear-gradient(#ff7a26,#ff5911);color:#fff;border-color:#ff6b24;box-shadow:0 4px 12px #ed671e20}.btn.primary:hover,.add:hover{background:#e9500d;color:white;transform:translateY(-1px)}.text-link{font-size:.95rem;font-weight:700;border-bottom:1px solid currentColor;padding:5px 0}.island-facts{display:flex;justify-content:center;gap:7vw;padding:22px 15px;background:#fffaf3;border-bottom:1px solid var(--line);font-size:.97rem}.island-facts span{display:flex;align-items:center;gap:12px}.island-facts b{font-size:1.1rem;color:#d94d0a}.section{padding:70px 0}.section.alt{background:#f7f1e5}.head{align-items:flex-end;gap:28px;margin-bottom:32px}.head h2{margin:0}.head p{max-width:350px;color:var(--muted);font-size:1rem}.kai-section{background:#fffaf0;padding:0;overflow:hidden}.kai-layout{display:grid;grid-template-columns:1fr 1fr;max-width:1440px;margin:auto;min-height:485px}.kai-visual{width:100%;height:100%;max-height:560px;object-fit:cover;object-position:center 32%}.kai-copy{align-self:center;padding:52px 55px;max-width:680px}.kai-copy h2{font-size:clamp(2rem,3.6vw,3.4rem);margin:0 0 22px}.kai-copy p{line-height:1.8;color:#264f55}.kai-copy .text-link{color:#be430e}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.product{background:#fffaf0;border:1px solid #dfd8c3;border-radius:18px;overflow:hidden;box-shadow:0 8px 25px #9377440b;transition:transform .2s,box-shadow .2s;position:relative}.product:hover{transform:translateY(-4px);box-shadow:0 12px 35px #46391c1a}.prodimg{display:block;height:auto;aspect-ratio:1;background:#bce7da;overflow:hidden;position:relative}.prodimg img{width:100%;height:100%;object-fit:cover;max-height:none}.flavour-scene{display:block;width:100%;aspect-ratio:1;background-image:url('/assets/island/flavours.webp');background-size:300% 300%;background-repeat:no-repeat}.flavour-scene[data-flavour=mango]{background-position:0 0}.flavour-scene[data-flavour=lime]{background-position:50% 0}.flavour-scene[data-flavour=strawberry]{background-position:100% 0}.flavour-scene[data-flavour=sour-cherry]{background-position:0 50%}.flavour-scene[data-flavour=forest-fruit]{background-position:50% 50%}.flavour-scene[data-flavour=raspberry]{background-position:100% 50%}.flavour-scene[data-flavour=pineapple]{background-position:0 100%}.flavour-scene[data-flavour=elderflower]{background-position:50% 100%}.flavour-scene[data-flavour=green-apple]{background-position:100% 100%}.product .body{padding:0 20px 20px;text-align:center}.product h3{font-family:Arial,sans-serif;font-size:1.3rem;font-weight:800;line-height:1.2;margin:-22px auto 17px;max-width:95%;z-index:2;position:relative}.product h3 a{display:block}.product .product-meta{font-size:.92rem;display:flex;justify-content:center;gap:14px;color:var(--teal);margin-bottom:14px}.product .price{font-size:1.12rem}.product .price-row{margin:0;display:block}.product .add{width:100%;min-height:43px}.product .fav{position:absolute;top:12px;right:12px;z-index:3;background:#fffaf3ee;border:1px solid #d5d6c7;color:#1b5862;width:34px;height:34px;border-radius:50%;font-size:18px}.product .fav.on{background:var(--orange);color:white}.product .badge,.product .desc,.product>.body>.metarow{display:none}.catalog-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:14px 20px;background:var(--cream);border:1px solid var(--line);border-radius:14px}.catalog-tabs{display:flex;gap:8px;align-items:center}.catalog-tabs a{padding:9px 16px;border-radius:9px;font-size:.88rem;font-weight:700}.catalog-tabs a.active{background:var(--orange);color:white}.catalog-sort{display:flex;align-items:center;gap:12px;font-size:.87rem}.catalog-sort select{color:var(--teal);background:transparent;border:1px solid var(--line);border-radius:7px;padding:8px;font-size:.85rem}.catalogue-link{text-align:center;margin-top:30px}.mini-banner{padding:40px;background:#d6efdf;border-radius:18px;display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:35px}.mini-banner h2{margin:0 0 8px;font-size:2.8rem}.mini-banner p{margin:0;color:var(--muted)}#mix{background:linear-gradient(135deg,#d3f1e4,#eaf8ec 60%,#fff0cc)}.mix-shell{border:1px solid #b7cebd;box-shadow:var(--shadow);border-radius:20px;overflow:hidden;background:#fffaf2}.mixplans{background:#e2efe2;padding:22px;gap:16px}.mixplan{background:#fffcf5;border:1px solid var(--line);color:var(--teal);border-radius:12px}.mixplan.active{background:var(--teal);border-color:var(--teal);color:white}.mixplan small{color:#a54810!important}.mixplan.active small{color:#ffcf92!important}.mixbuilder{padding:28px}.mixslot{background:#faf2dc;border:2px dashed #c5bb95;border-radius:10px;color:#baa77a}.mixslot img{border-radius:6px}.pick{background:#fffaf1;border:1px solid #e1d5bc;color:var(--teal);border-radius:10px}.pick.selected{border:2px solid var(--orange);background:#fff0dc}.pick img{border-radius:6px}.mixfooter{gap:20px}.card,.recipe,.feature{background:#fffaf1;border:1px solid var(--line);border-radius:14px;color:var(--teal)}.feature b{color:#d95413}.card h3{font-family:Georgia,serif;font-size:1.9rem}.field input,.field select,.field textarea,input,select,textarea{background:#fffcf5;color:var(--teal);border:1px solid #c8c8b1;border-radius:8px;padding:12px}.field label{font-size:.92rem}.calc-result{color:#bd470f;font-size:2rem}.recipe{padding:16px;background:#f5ead8}.recipe h4{font-size:1rem;color:var(--teal)}.recipe p{font-size:.95rem;color:var(--muted)}#iced-tea{background:#e6f0de}#iced-tea .feature-grid{gap:16px}#iced-tea .feature{background:#f9fcf1}.about{gap:65px;align-items:center}.about img{border-radius:24px;max-height:390px;object-fit:cover;width:100%}.about h2{margin:0 0 20px}.about p{color:var(--muted)}.faq details{background:#fffaf0;border:1px solid var(--line);border-radius:10px;color:var(--teal)}.faq summary{font-size:1rem}.faq p{color:var(--muted)}footer{background:var(--teal);color:#fff9ed;border:0;padding:45px 0}footer .brand{color:#fff9ed}footer .footergrid{gap:28px}footer .footer-links{display:flex;gap:20px;flex-wrap:wrap;font-size:.88rem}.footer-note{font-size:.82rem;color:#cee2db;margin-top:10px}.overlay{background:#062f39ac;backdrop-filter:blur(5px)}.modal{background:var(--cream);border:1px solid var(--line);border-radius:20px;box-shadow:0 35px 100px #092c3b55}.modalhead{border-bottom:1px solid var(--line);background:#fffaf2;position:sticky;top:0;z-index:4}.modalhead h2{font-size:1.5rem}.modalhead .close{background:#f3eadb;color:var(--teal);border:1px solid var(--line)}.modalbody{padding:28px}.modalbody h3{color:var(--teal)}.cartitem{border-color:var(--line)}.cartitem img{border-radius:8px}.qty button{background:#f2eadc;color:var(--teal);border:1px solid #d4c5ac}.ship-progress{background:#eee8d9;color:var(--teal)}.bar{background:#dcd8c8}.bar i{background:var(--orange)}.sumline{border-color:var(--line)}.upsell{background:#dfedda;color:var(--teal)}.promo input{min-width:0}.product-detail{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.product-detail .detailimg{background:#d0eede;border-radius:15px;overflow:hidden;height:auto;aspect-ratio:1}.detailimg img{width:100%;height:100%;max-height:none;object-fit:contain}.product-detail .detailimg .flavour-scene{height:100%}.detail-copy h2{font-family:Arial,sans-serif;font-size:2.4rem!important;margin-top:0!important;text-transform:uppercase;text-align:center}.detail-description{font-size:1rem;line-height:1.65}.detail-facts{display:flex;gap:12px;flex-wrap:wrap;padding:15px 0;border-bottom:1px solid var(--line)}.detail-facts span{padding:7px 12px;border-radius:6px;background:#ecefdc;font-size:.88rem;font-weight:700}.detail-buy{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:22px 0}.detail-buy .price{font-size:2.5rem;color:var(--teal)}.detail-buy input{width:78px}.detail-copy>.add{width:100%;margin-bottom:18px}.detail-copy details{border-bottom:1px solid var(--line);padding:15px 0;font-size:.95rem}.detail-copy summary{font-weight:700;cursor:pointer}.detail-copy details p{color:var(--muted)}.label-toggle{display:block;width:100%;margin-top:12px;font-size:.85rem;background:transparent;border:1px solid var(--line);padding:10px;border-radius:10px;color:var(--teal)}.label-photo{display:none;max-height:550px;margin:15px auto;border-radius:10px}.label-photo.show{display:block}.preparation{margin:35px 0 10px;padding:28px;background:#eaf0da;border-radius:14px}.preparation h3{font-family:Georgia,serif;font-size:1.7rem;margin:0 0 20px}.prep-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.prep-step{background:var(--cream);padding:16px;border-radius:10px;font-size:.9rem}.prep-step b{display:block;color:#c94c10;font-size:1.25rem;margin-bottom:8px}.reviews-block{margin-top:30px}.cookie{background:#fffaf5;border:1px solid var(--line);color:var(--teal);box-shadow:0 -4px 30px #12364018}.cookie-row{gap:20px;font-size:.85rem}.cookieopts{font-size:.85rem}.cookie input{accent-color:var(--orange)}.cookie .btn{font-size:.85rem;padding:10px 15px;min-height:40px}.toast{background:var(--teal);color:#fffaf1;border:1px solid #608c81}.notice{background:#ebf0e0;color:#425945;border:0;font-size:.83rem;text-align:center;padding:9px 16px;margin:0}.payment-choice label,.checkout-side,.pay-note,.choice label{background:#f0efdf;color:var(--teal);border-color:var(--line)}.chip{background:#e8e7d9;color:var(--teal);border-color:#cfccb7}.back-catalog{display:inline-flex;margin:0 0 16px;font-size:.86rem;color:#557977}.route-masthead{display:none;background:#c7ece5;padding:46px 0;text-align:center;border-bottom:1px solid #aacbc0}.route-masthead h1{font-size:clamp(2.5rem,5vw,4rem);margin:0 0 12px}.route-masthead p{margin:0;color:#3d6367}.preview-badge{background:#fff0d4}.hero,.kai-section,.section,.island-facts{scroll-margin-top:90px}#fruit-labels:has(.tea-label-grid:empty),#iced-tea-labels:has(.tea-label-grid:empty){display:none}body[data-page=home] #products .product:nth-child(n+4){display:none}body[data-page=home] .catalog-controls{display:none}body[data-page=home] #iced-tea .product:nth-child(n+4){display:none}body[data-page=home] #iced-tea .feature-grid,body[data-page=home] #iced-tea>.wrap>.card{display:none}body:not([data-page=home]) .route-masthead{display:block}body:not([data-page=home]) .hero,body:not([data-page=home]) .island-facts{display:none}body[data-page=lemonades] main>.section:not(#products):not(#fruit-labels),body[data-page=iced-tea] main>.section:not(#iced-tea):not(#iced-tea-labels),body[data-page=mix] main>.section:not(#mix),body[data-page=recipes] main>.section:not(#calculator),body[data-page=island] main>.section:not(#kai):not(#about):not(#episodes):not(#island-map){display:none}body:not([data-page=home]) .catalogue-link{display:none}body[data-page=island] .kai-layout{min-height:620px}body[data-page=island] .kai-visual{max-height:670px}body[data-page=iced-tea] #iced-tea>.wrap>.head{display:none}.product-detail .feature-grid{grid-template-columns:1fr 1fr}.policy-page{padding:65px 25px;min-height:75vh}.policy-page h1{font-size:3rem}.modal.sm{max-width:630px}
@media(min-width:1450px){.hero-copy{padding-top:60px}.hero{min-height:730px}.heroin{min-height:730px}}
@media(max-width:1120px){.links{gap:13px}.links a{font-size:.78rem}.navin{gap:12px}.navin .brand strong{font-size:43px}.hero-copy{width:51%}.hero h1{text-transform:none;font-size:3.5rem}.hero{min-height:590px}.heroin{min-height:590px}.kai-copy{padding:35px}.grid{gap:20px}.actions .iconbtn{display:none}}
@media(max-width:900px){.links{display:none;position:absolute;top:78px;left:0;right:0;padding:18px 24px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 15px 25px #063c481a}.links.open{display:flex;flex-direction:column;gap:0}.links a{font-size:1rem;border-bottom:1px solid var(--line);padding:15px}.menu-toggle{display:block;font-size:1.4rem;order:3}.actions{margin-left:auto}.navin{height:78px}.actions .pillbtn{padding:9px}.hero h1{text-transform:none;font-size:2.9rem}.hero-copy{width:51%;padding-top:5px}.heroin{min-height:510px;padding-block:55px}.hero{min-height:510px}.kai-copy{padding:30px}.kai-copy h2{font-size:2.4rem}.kai-copy p{font-size:.96rem}.head p{max-width:270px}.product h3{font-size:1rem}.product .body{padding:0 13px 15px}.product .product-meta{font-size:.85rem;gap:8px}.product .price{font-size:1rem}.mix-shell{grid-template-columns:1fr}.mixplans{display:grid;grid-template-columns:repeat(3,1fr);padding:16px}.mixplan h3{font-size:1.1rem}.about{gap:30px}.catalog-tabs a{padding:8px;font-size:.83rem}}
@media(max-width:680px){.wrap{padding:0 18px}.topbar{font-size:.75rem;line-height:1.35;padding:6px 12px}.navin{height:64px;gap:8px}.brand strong,.navin .brand strong{font-size:36px}.brand small{font-size:11px}.links{top:64px}.hero{display:flex;flex-direction:column;min-height:0;background:#e3f7ec}.hero-scene{position:relative;order:0;display:block;width:100%;height:clamp(280px,85vw,380px);object-position:75% center;object-fit:cover}.heroin{order:1;min-height:0;display:block;padding:22px 18px 25px;text-align:center;background:#e3f7ec}.hero-copy{width:100%;padding:0}.hero h1{text-transform:none;font-size:clamp(1.7rem,7.5vw,2.15rem);line-height:1.1;letter-spacing:-.025em;margin-bottom:12px}.hero .kicker{font-size:.75rem;line-height:1.4;letter-spacing:.08em;margin-bottom:10px}.hero p{font-size:1rem;line-height:1.5;max-width:32ch;margin:0 auto 18px}.hero .ctas{justify-content:center;gap:14px}.hero .text-link{font-size:.875rem}.hero .btn{padding:12px 19px;font-size:1rem}.island-facts{gap:0;justify-content:space-around;padding:17px 8px;font-size:.75rem}.island-facts span{gap:6px}.island-facts b{font-size:.87rem}.kai-layout{grid-template-columns:1fr;min-height:0}.kai-visual{height:370px;object-position:center 30%}.kai-copy{padding:30px 25px 37px}.kai-copy h2{font-size:2.4rem}.kai-copy p{font-size:1rem;line-height:1.7}.kai-copy .kicker{margin-bottom:12px}.section{padding:42px 0}.head{display:block;margin-bottom:24px}.head h2{font-size:2.2rem;text-align:center}.head .kicker{text-align:center}.head p{max-width:100%;text-align:center;margin:14px 0 0;font-size:.94rem}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.product{border-radius:12px}.product .body{padding:0 10px 12px}.product h3{font-size:.9rem;margin:-15px auto 12px;max-width:100%;min-height:43px;display:flex;align-items:center;justify-content:center}.wood-sign{padding:10px 12px}.product .product-meta{font-size:.74rem;gap:7px;flex-wrap:wrap;margin-bottom:10px}.product .price{font-size:.85rem}.product .add{padding:9px 6px;font-size:.78rem;min-height:38px;border-radius:9px}.product .fav{width:29px;height:29px;top:7px;right:7px;font-size:15px}.catalogue-link{margin-top:24px}body[data-page=home] #products .product:nth-child(4){display:block}.catalog-controls{flex-direction:column;align-items:stretch;padding:10px;gap:10px}.catalog-tabs{justify-content:center}.catalog-sort{justify-content:space-between}.catalog-sort select{max-width:70%;font-size:.78rem}.catalog-tabs a{padding:9px 10px;font-size:.8rem}.mixplans{gap:8px;padding:12px}.mixplan{padding:12px 6px}.mixplan h3{font-size:.91rem}.mixplan span{font-size:.75rem}.mixplan small{font-size:.68rem}.mixbuilder{padding:17px}.mixslots{gap:8px}.mixslot{height:95px;min-width:0}.flavourpick{grid-template-columns:repeat(3,1fr);gap:8px}.pick span{font-size:.73rem}.mixfooter{flex-wrap:wrap}.mixfooter .btn{flex:1}.two{grid-template-columns:1fr}.card{padding:22px}.about{grid-template-columns:1fr;gap:25px}.about h2{text-align:left}.about img{height:270px}.feature-grid{grid-template-columns:repeat(2,1fr);gap:10px}.recipes{grid-template-columns:1fr}.mini-banner{padding:25px;display:block}.mini-banner h2{font-size:2.2rem}.mini-banner .btn{margin-top:20px}.footergrid{grid-template-columns:1fr;text-align:center}.footergrid .brand{margin:auto}footer .footer-links{justify-content:center;font-size:.8rem;gap:15px}footer{padding:35px 0}.overlay{padding:10px}.modal{border-radius:15px;max-height:calc(100dvh - 20px)}.modalhead{padding:14px 17px}.modalhead h2{font-size:1.2rem}.modalbody{padding:17px}.product-detail{grid-template-columns:1fr;gap:24px}.detail-copy h2{font-size:2rem!important}.detail-buy{margin:18px 0}.detail-buy .price{font-size:2.25rem}.detail-copy>.add{position:sticky;bottom:0;z-index:3;box-shadow:0 0 0 10px var(--cream)}.prep-steps{grid-template-columns:1fr}.preparation{padding:20px}.prep-step{display:flex;align-items:center;gap:12px}.prep-step b{margin:0;font-size:1rem}.cookie{left:10px;right:10px;bottom:10px;padding:17px;border-radius:12px}.cookie-row{display:flex;flex-wrap:wrap;gap:13px;font-size:.78rem}.cookieopts{font-size:.78rem;display:flex;flex-wrap:wrap;gap:10px}.cookie .btn{font-size:.8rem;padding:8px 12px}.route-masthead{padding:35px 15px}.route-masthead h1{font-size:2.6rem}.route-masthead p{font-size:.95rem}body[data-page=island] .kai-layout{min-height:0}body[data-page=island] .kai-visual{height:420px}.hero,.kai-section,.section,.island-facts{scroll-margin-top:72px}.checkout-grid{grid-template-columns:1fr}.cartitem{grid-template-columns:58px 1fr auto;gap:10px}.cartitem img{width:58px}.cartitem b{font-size:.86rem}.cartitem strong{font-size:.86rem}.promo .btn{padding:9px 14px}.ship-progress{font-size:.85rem}.notice{font-size:.74rem}.policy-page h1{font-size:2.2rem}.policy-page{padding-block:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

body[data-page=lemonades] #products>.wrap>.head,body[data-page=mix] #mix>.wrap>.head{display:none}.head h2,.kai-copy h2,.about h2{text-transform:none}.product-detail .detailimg{aspect-ratio:1;min-height:0}.policy-page p{max-width:78ch;line-height:1.75}

/* The complete wood-and-jute cutout keeps the ropes physically attached. */
.wood-sign {
  position: relative;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  aspect-ratio: 2161 / 728;
  padding: 13% 10% 2%;
  border: 0;
  border-radius: 0;
  color: #fff9eb;
  background: url('/assets/island/rustic-nameplate.webp') center / contain no-repeat;
  box-shadow: none;
  text-shadow: 0 1px 2px #271508, 0 0 5px #271508;
  filter: drop-shadow(0 3px 2px #49270c22);
}
.product h3.wood-sign {
  padding-inline: 7%;
  width: calc(100% + 16px);
  max-width: none;
  min-height: 0;
  margin: -36px -8px 10px;
  font-size: 1.25rem;
  line-height: 1.15;
}
.product h3.wood-sign a,
.detail-copy h2.wood-sign span {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  hyphens: auto;
  text-wrap: balance;
}
.detail-copy { padding-top: 0; }
.detail-copy h2.wood-sign {
  width: 100%;
  margin: 0 0 20px;
  font-size: clamp(1.5rem, 2.2vw, 2rem) !important;
  line-height: 1.15;
  letter-spacing: 0;
}
@media(max-width:680px) {
  .feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .feature { overflow-wrap: anywhere; }
  #productGrid, #teaProductGrid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr));
  }
  .product h3.wood-sign {
    margin-top: -20px;
    margin-bottom: 10px;
    font-size: .875rem;
  }
  .detail-copy h2.wood-sign { font-size: 1.75rem !important; }
}

.detail-copy h2.wood-sign-long { font-size: clamp(1.125rem, 4.8vw, 1.5rem) !important; }

/* Kai's title follows the approved weathered-plank reference. */
@font-face{font-family:'RIO Kai';font-style:normal;font-weight:800;font-display:swap;src:url('/assets/fonts/manrope-800-latin.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F}
@font-face{font-family:'RIO Kai';font-style:normal;font-weight:800;font-display:swap;src:url('/assets/fonts/manrope-800-cyrillic.woff2') format('woff2');unicode-range:U+0400-052F}
@font-face{font-family:'RIO Kai';font-style:normal;font-weight:800;font-display:swap;src:url('/assets/fonts/manrope-800-greek.woff2') format('woff2');unicode-range:U+0370-03FF,U+1F00-1FFF}
@font-face{font-family:'RIO Island Title';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/oswald-700-latin.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F}
@font-face{font-family:'RIO Island Title';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/oswald-700-cyrillic.woff2') format('woff2');unicode-range:U+0400-052F}
.kai-copy{container-type:inline-size}
.kai-copy .kicker{text-align:center}
.kai-copy h2.kai-title{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  width:calc(100% + 16px);
  height:auto;
  min-height:calc(32.32cqw + 5.2px);
  box-sizing:border-box;
  margin:0 -8px 24px;
  padding:calc(5% + .15rem) 4% 3%;
  background:url('/assets/island/kai-title-board.webp') center / 100% 100% no-repeat;
  color:#fff0c9;
  text-align:center;
  text-transform:uppercase;
  text-shadow:0 2px 2px #301b0ecc,0 4px 6px #301b0e99;
  letter-spacing:0;
  filter:drop-shadow(0 3px 2px #48271120);
}
.kai-title>span{display:block;flex:none;max-width:100%}
.kai-title .kai-name{
  font-family:'RIO Kai',Arial,sans-serif;
  font-weight:800;
  font-size:clamp(3rem,18cqw,7.25rem);
  line-height:1.08;
  letter-spacing:.025em;
  -webkit-text-stroke:.018em currentColor;
  margin-bottom:1%;
}
.kai-title .kai-subtitle{
  font-family:'RIO Island Title','RIO Kai',Arial,sans-serif;
  font-weight:700;
  font-size:clamp(.875rem,7cqw,2.125rem);
  line-height:1.12;
  text-wrap:balance;
}
.kai-title:lang(el) .kai-subtitle{font-size:clamp(.875rem,5.5cqw,1.8rem)}

.kai-title{scroll-margin-top:145px}

.kai-story-links{display:flex;flex-wrap:wrap;gap:16px 26px}
.episodes-section{background:#073b46;color:#fff8e8;padding:40px 0;scroll-margin-top:100px}
.episodes-layout{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.episodes-section .kicker{color:#ffc985;margin-bottom:10px}
.episodes-section h2{font-family:Georgia,serif;font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.15;margin:0;text-wrap:balance}
.episodes-empty{padding:24px;border:1px solid #6b9295;border-radius:14px;background:#104650}
.episodes-empty p{font-size:1rem;line-height:1.5;color:#e1ebe7;margin:16px 0 0}
.episode-platform-labels{display:flex;gap:20px;font-size:1.15rem;font-weight:800}
.episode-platform-labels span+span{border-left:1px solid #6b9295;padding-left:20px}
.episode-links{display:flex;flex-wrap:wrap;gap:12px}
.episode-platform{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:12px 18px;border-radius:8px;color:#fff;text-decoration:none;font-weight:700;font-size:.94rem;line-height:1.3}
.episode-tiktok{background:#161c22;border:1px solid #9ec7c2}
.episode-youtube{background:#b9191f;border:1px solid #ff8b8b}
.episode-platform:hover{filter:brightness(1.15)}
.episode-platform:focus-visible{outline:3px solid #ffd882;outline-offset:4px}
.episode-grid{display:grid;gap:16px}
.series-channels:has(+.episode-grid){margin-bottom:20px}
.episode-card{padding:24px;background:#104650;border:1px solid #6b9295;border-radius:14px}
.episode-number{font-size:.9rem;color:#ffc985;margin:0 0 8px}
.episode-card h3{font-family:Georgia,serif;font-size:1.4rem;line-height:1.3;margin:0 0 18px}
@media(max-width:680px){
  .episodes-section{padding:30px 0;scroll-margin-top:74px}
  .episodes-layout{grid-template-columns:1fr;gap:24px}
  .episodes-empty,.episode-card{padding:20px}
  .episode-platform{flex:1 1 155px}
}

/* The professional range keeps its own packaging and corporate product links. */
body:not([data-page=bar-mixology]) #bar-mixology,
body[data-page=bar-mixology] main>.section:not(#bar-mixology){display:none}
body[data-page=bar-mixology] .route-masthead{
  padding:30px 0;
  background:linear-gradient(120deg,#dcf2dd,#b7e7e1);
}
body[data-page=bar-mixology] .route-masthead h1{font-size:clamp(2rem,4vw,3.25rem)}
body[data-page=bar-mixology] .route-masthead p{max-width:65ch;margin:auto;line-height:1.6}
.pro-section{padding:32px 0 70px}
.pro-range-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}
.pro-range-summary h2{font-family:Georgia,serif;font-size:1.65rem;line-height:1.25;margin:0}
.pro-range-summary p{margin:0;color:#48676a;font-size:.94rem;white-space:nowrap}
.pro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.pro-card-link{display:block;height:100%;color:inherit;text-decoration:none}
.pro-card-link:focus-visible{outline:4px solid #ff721c;outline-offset:-4px;border-radius:18px}
.pro-media{
  height:280px;display:flex;align-items:center;justify-content:center;padding:20px 24px 28px;
  background:radial-gradient(ellipse at 50% 70%,#52776a 0%,#254f49 48%,#123e3e 100%);
}
.pro-media img{width:auto;height:100%;max-width:100%;object-fit:contain;filter:drop-shadow(5px 9px 5px #07252066)}
.pro-product .body{padding:0 20px 20px}
.pro-product h2.wood-sign{
  width:calc(100% + 16px);max-width:none;min-height:0;
  margin:-34px -8px 12px;padding-inline:7%;
  font-family:Arial,sans-serif;font-size:1.1rem;font-weight:800;line-height:1.12;
}
.pro-product h2.wood-sign span{display:block;max-width:100%;text-wrap:balance;overflow-wrap:anywhere;hyphens:auto}
.pro-format{margin:0 0 14px;font-size:.98rem;font-weight:700;letter-spacing:.025em}
.pro-details{font-size:.9rem;min-height:44px;padding:11px 22px;background:var(--teal);color:#fffaf0;box-shadow:none}
.pro-details span{margin-left:5px}
.pro-card-link:hover .pro-details{background:#1e625d}
@media(min-width:901px) and (max-width:1120px){
  .links{display:none;position:absolute;top:78px;left:0;right:0;padding:18px 24px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 15px 25px #063c481a}
  .links.open{display:flex;flex-direction:column;gap:0}
  .links a{font-size:1rem;border-bottom:1px solid var(--line);padding:15px}
  .menu-toggle{display:block;font-size:1.4rem;order:3}
  .actions{margin-left:auto}
  .navin{height:78px}
}
@media(max-width:1120px){.links.open{max-height:calc(100dvh - 130px);overflow-y:auto}}
@media(max-width:900px){
  .pro-grid{gap:18px}
  .pro-media{height:250px;padding-inline:18px}
  .pro-product .body{padding-inline:13px}
  .pro-product h2.wood-sign{font-size:.9rem}
  .pro-range-summary h2{font-size:1.4rem}
}
@media(max-width:680px){
  body[data-page=bar-mixology] .route-masthead{padding:26px 0}
  body[data-page=bar-mixology] .route-masthead p{font-size:.92rem}
  .pro-section{padding:26px 0 42px}
  .pro-range-summary{display:block;text-align:center;margin-bottom:20px}
  .pro-range-summary h2{font-size:1.4rem;margin-bottom:8px}
  .pro-range-summary p{font-size:.85rem}
  .pro-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:13px}
  .pro-media{height:225px;padding:16px 15px 24px}
  .pro-product .body{padding:0 10px 14px}
  .pro-product h2.wood-sign{font-size:.75rem;margin-top:-20px;margin-bottom:10px}
  .pro-format{font-size:.82rem;margin-bottom:11px;letter-spacing:0}
  .pro-details{font-size:.78rem;padding:10px 9px;width:100%}
}
/* Plot locations on an illustrated island, with live accessible controls. */
body:not([data-page=island]) #island-map{display:none}
body[data-page=island] .route-masthead{padding:26px 0 22px;background:#fff9ec}
body[data-page=island] .route-masthead h1{font-size:clamp(2.2rem,4.5vw,3.2rem);margin:0 0 8px}
body[data-page=island] .route-masthead p{margin:0;font-size:1rem;line-height:1.6}
.island-map-section{padding:0 0 42px;background:#fff9ec;scroll-margin-top:90px}
.island-map-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:22px;align-items:stretch}
.island-map-art{position:relative;isolation:isolate;align-self:start;overflow:hidden;border-radius:18px;background:#39b4be;box-shadow:0 8px 30px #073b4220}
.island-map-art img{display:block;width:100%;height:auto;aspect-ratio:3/2}
.map-marker{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;width:46px;height:46px;min-width:44px;min-height:44px;padding:0;border:3px solid #fff9df;border-radius:50%;background:#073d45;color:#fff9df;font:800 1.1rem/1 Arial,sans-serif;cursor:pointer;box-shadow:0 3px 9px #002e4790,0 0 0 1px #073d4599;transition:background .15s,box-shadow .15s}
.map-marker[aria-pressed=true]{background:#ee5b14;box-shadow:0 3px 10px #002e47a0,0 0 0 5px #fff5c773;z-index:2}
.map-marker:hover{background:#c84a0c}
.map-marker:focus-visible,.map-place-link:focus-visible{outline:3px solid #073d45;outline-offset:4px}
.map-marker:focus-visible{outline-color:#fff}
.map-place-detail{position:relative;display:flex;flex-direction:column;padding:0;background:#e3f1e7;border-radius:18px;overflow:hidden;min-width:0;color:#0b3c44;scroll-margin-top:90px}
.map-scene{position:relative;margin:0;background:#c0e0d4;flex-shrink:0}
.map-scene img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.map-scene figcaption{position:absolute;bottom:12px;right:12px;max-width:calc(100% - 24px);padding:6px 10px;border-radius:6px;background:#fffaf0f5;color:#123e43;font-size:.875rem;line-height:1.35;font-weight:600;overflow-wrap:anywhere}
.map-chapter{position:absolute;top:12px;left:12px;display:grid;place-items:center;min-width:38px;min-height:38px;padding:6px;border-radius:50%;background:#073d45;color:#fff9df;font:700 1.125rem/1.2 Arial,sans-serif}
.map-place-copy{padding:22px;flex:1}
.map-tag{font-size:.875rem;font-weight:800;line-height:1.5;margin:0 0 9px;color:#416652}
.map-place-detail h3{font-family:Georgia,serif;font-size:clamp(1.6rem,2.5vw,2rem);line-height:1.14;letter-spacing:-.015em;margin:0 0 16px;overflow-wrap:anywhere}
.map-description{font-size:1rem;line-height:1.7;margin:0 0 22px}
.map-episodes{font-size:.875rem;margin:0;padding-top:16px;border-top:1px solid #b7d3c3;line-height:1.5}
.map-episodes strong{margin-left:6px}
.map-location-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 18px;margin-top:20px}
.map-place-link{display:flex;align-items:center;gap:12px;text-align:left;padding:12px 14px;min-height:54px;border:1px solid #d4dbca;border-radius:9px;background:transparent;color:#153f43;font-family:inherit;font-size:1rem;font-weight:600;line-height:1.4;cursor:pointer;overflow-wrap:anywhere}
.map-place-link span:last-child{min-width:0}
.map-place-number{flex:0 0 28px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#dce8d9;font:800 .875rem/1 Arial,sans-serif}
.map-place-link[aria-pressed=true]{border-color:#0a6465;background:#e3f1e7}
.map-place-link[aria-pressed=true] .map-place-number{background:#ee5b14;color:white}
.map-place-link:hover{background:#edf1e3;border-color:#0a6465}
@media(max-width:900px){
  .island-map-layout{grid-template-columns:minmax(0,1fr);gap:16px}
  .map-place-copy{padding:22px 24px}
  .map-place-detail h3{font-size:1.8rem}
  .map-description{margin-bottom:16px}
  .map-location-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}
@media(max-width:480px){
  body[data-page=island] .route-masthead{padding:22px 0 18px}
  .island-map-section{scroll-margin-top:74px;padding-bottom:28px}
  .island-map-art{border-radius:12px}
  .map-marker{width:44px;height:44px;border-width:2px;font-size:1rem}
  .map-place-detail{border-radius:12px}
  .map-place-copy{padding:20px}
  .map-place-link{font-size:1rem;padding:10px;gap:8px}
  .map-location-list{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){.map-marker{transition:none}}

/* RIO professional bottles size and price v1 */
#bar-mixology .pro-media {
  height: 400px;
  padding: 12px 20px 40px;
  box-sizing: border-box;
}
#bar-mixology .pro-media img {
  width: auto;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
#bar-mixology .pro-format {
  margin-bottom: 8px;
}
#bar-mixology .pro-price {
  margin: 0 0 16px;
  color: var(--teal);
  line-height: 1.3;
}
#bar-mixology .pro-price strong {
  font-size: 1.6rem;
  font-weight: 800;
}
#bar-mixology .pro-price span {
  font-size: .95rem;
}
@media (max-width: 900px) {
  #bar-mixology .pro-media {
    height: 350px;
    padding: 12px 14px 38px;
  }
}
@media (max-width: 680px) {
  #bar-mixology .pro-media {
    height: 300px;
    padding: 10px 10px 28px;
  }
  #bar-mixology .pro-price {
    margin-bottom: 12px;
  }
  #bar-mixology .pro-price strong {
    font-size: 1.35rem;
  }
  #bar-mixology .pro-price span {
    font-size: .82rem;
  }
}

/* RIO checkout readability v1: cream surfaces need dark text. */
#checkoutOverlay { --text:#073e49; --muted:#50676a; color:#073e49; }
#checkoutOverlay .field label,
#checkoutOverlay .checkout-terms,
#checkoutOverlay .choice label,
#checkoutOverlay .payment-choice label,
#checkoutOverlay .pay-note,
#checkoutOverlay .checkout-side,
#checkoutOverlay .checkout-status { color:#073e49; }
#checkoutOverlay .checkout-terms a,
.policy-page a { color:#164c43; text-decoration:underline; text-underline-offset:.16em; }
#checkoutOverlay .checkout-terms a:visited,
.policy-page a:visited { color:#164c43; }
#checkoutOverlay .checkout-terms a:hover,
.policy-page a:hover { color:#082e28; }
footer a,footer a:visited { color:#fff9ed; text-decoration:underline; text-underline-offset:.16em; }
#checkoutOverlay input::placeholder,
#checkoutOverlay textarea::placeholder { color:#50676a; opacity:1; }
#checkoutOverlay :focus-visible { outline:3px solid #164c43; outline-offset:3px; }
#checkoutOverlay .checkout-status { margin:12px 0; font-size:.92rem; line-height:1.5; }
#checkoutOverlay #checkoutRetry { margin:0 0 12px; }
#checkoutOverlay [hidden] { display:none!important; }
#checkoutOverlay .sumline { gap:12px; }
#checkoutOverlay .sumline span { min-width:0; overflow-wrap:anywhere; }
#checkoutOverlay .sumline b { flex-shrink:0; }

/* RIO professional purchase v1 */
.pro-product .pro-buy{
  display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;
  min-width:0;min-height:48px;padding:12px 14px;border:1px solid #cc4b08;
  border-radius:12px;background:linear-gradient(180deg,#ff7d20,#ff5b08);
  color:#102f36;font:800 1rem/1.3 Arial,sans-serif;white-space:normal;overflow-wrap:anywhere;
}
.pro-product .pro-buy:hover:not(:disabled){background:#ff8a36;color:#102f36}
.pro-product .pro-buy:focus-visible{outline:3px solid #123e48;outline-offset:3px}
.pro-product .pro-buy:disabled{background:#e5e2d8;color:#4b5757;border-color:#9aa6a2;opacity:1;cursor:not-allowed;box-shadow:none}
.pro-product .pro-stock-status{margin:10px 0 0;color:#234b4f;font-size:.9rem;line-height:1.4;text-align:center}

/* RIO mix card top alignment v1 */
.flavourpick > .pick {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  min-width: 0;
}
.flavourpick > .pick > img {
  display: block;
  flex-shrink: 0;
}
/* End RIO mix card top alignment v1 */
