:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f5ef;--surface:#fffdf9;--surface-soft:#eef8f6;--ink:#053a73;--muted:#5d6470;--line:#eadfd2;--brand:#003a78;--brand-strong:#002b5c;--accent:#ffd10a;--accent-hot:#f7067f;--accent-cyan:#00b5c7;--accent-orange:#ff7a16;--accent-purple:#6d38ec;--danger:#a83232;--shadow:0 16px 44px #053a731f}*{box-sizing:border-box}html{max-width:100vw;overflow-x:hidden}body{background:linear-gradient(125deg, #fffffff5 0%, #f6f7f2eb 34%, #eff7f5e6 64%, #fffcf6f0 100%), radial-gradient(circle at 12% 4%, #00b5c71c, transparent 30rem), radial-gradient(circle at 90% 18%, #ffd10a1a, transparent 28rem), radial-gradient(circle at 52% 92%, #053a7312, transparent 34rem), var(--bg);color:var(--ink);background-size:230% 230%,150% 150%,160% 160%,170% 170%,auto;margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.5;animation:38s ease-in-out infinite alternate siteBackgroundShift;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{border-bottom:1px solid var(--line);z-index:10;background:#fff7eaf2;justify-content:space-between;align-items:center;gap:24px;width:100%;max-width:100vw;padding:16px clamp(18px,5vw,64px);display:flex;position:sticky;top:0}.admin-header{color:#fff2d6;background:#053a73;border-bottom:0;box-shadow:0 12px 28px #053a732e}.site-header-home{justify-content:flex-end}.admin-header .brand{color:#fff2d6}.admin-header .nav-links{gap:6px}.admin-header .nav-links a,.admin-header .link-button{color:#fff2d6e0;border-radius:6px}.admin-header .nav-links a:hover,.admin-header .link-button:hover{color:#fff;background:#fff2d61f}.brand{letter-spacing:0;align-items:center;gap:10px;min-height:44px;font-weight:800;display:inline-flex}.brand-wordmark,.hero-wordmark,.login-wordmark,.home-intro-logo{letter-spacing:0;align-items:center;gap:10px;line-height:1;display:inline-flex}.brand-wordmark{color:var(--ink);font-weight:900}.brand-wordmark-light{color:#fff2d6}.brand-logo{object-fit:contain;width:136px;height:34px;display:block}.brand-symbol{object-fit:contain;width:42px;height:42px;display:block}.footer-logo{display:inline-flex}.footer-logo .brand-logo{width:122px;height:30px}.footer-logo .brand-symbol{width:36px;height:36px}.hero-logo-title,.login-logo-title{line-height:1}.hero-wordmark{color:#fff2d6;filter:drop-shadow(0 12px 24px #00000038);gap:clamp(10px,1.6vw,18px)}.hero-symbol-image{object-fit:contain;width:clamp(46px,6vw,72px);height:clamp(46px,6vw,72px);display:block}.hero-wordmark-image{object-fit:contain;width:min(340px,70vw);height:clamp(40px,5vw,60px);display:block}.login-wordmark{color:var(--ink);flex-direction:column;gap:12px;font-weight:900}.login-symbol-image{object-fit:contain;width:clamp(86px,11vw,118px);height:clamp(86px,11vw,118px)}.login-wordmark-image{object-fit:contain;width:min(420px,80vw);max-width:min(420px,80vw);height:auto}.nav-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;min-width:0;display:flex}.nav-links a,.link-button{color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:8px 10px;display:inline-flex}.icon-link{align-items:center;display:inline-flex}.language-switch,.icon-link{border-radius:6px;justify-content:center;align-items:center;width:42px;height:38px;display:inline-flex}.admin-access-link span{display:none}.language-switch:hover,.icon-link:hover{background:#08aeba1a}.flag-icon{border:1px solid #17201c2e;border-radius:3px;width:30px;height:20px;display:block;box-shadow:0 1px 2px #17201c1f}.site-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 18px;padding:22px clamp(18px,5vw,64px);font-size:13px;display:flex}.site-footer nav{flex-wrap:wrap;gap:10px 16px;display:flex}.footer-contact{color:var(--muted);flex-wrap:wrap;gap:8px 14px;display:flex}.site-footer a{align-items:center;min-height:40px;display:inline-flex}.page{max-width:100vw;padding:24px clamp(18px,5vw,64px) 56px;overflow-x:hidden}.reservation-page{width:100%;max-width:1120px;margin-inline:auto}.hero{color:#fff;isolation:isolate;background-color:#0000;background-image:linear-gradient(112deg,#ffc800ad 0%,#0000 34%),linear-gradient(218deg,#f7067f94 0%,#0000 42%),linear-gradient(34deg,#08aebaa8 0%,#0000 34%),linear-gradient(125deg,#053a73 0%,#075f98 28%,#08aeba 52%,#ff8a1f 76%,#f7067f 100%);background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:220% 220%;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;align-items:center;min-height:clamp(94px,11vh,116px);padding:clamp(10px,1.5vw,18px) clamp(18px,4vw,48px);animation:24s ease-in-out infinite alternate heroGradientShift;display:grid;position:relative;overflow:hidden}.hero:before{content:"";z-index:0;background:linear-gradient(90deg,#052b5ca8,#052b5c29 56%,#052b5c66),linear-gradient(#fff2d614,#052b5c33);position:absolute;inset:0}.home-intro{color:#fff2d6;isolation:isolate;z-index:80;background:#053a73;place-items:center;height:100lvh;min-height:100lvh;transition:opacity .52s,visibility .52s;display:grid;position:fixed;inset:0;overflow:hidden}.home-intro:before{content:"";z-index:-2;background-color:#0000;background-image:radial-gradient(circle at 72% 18%,#ffc80057,#0000 24%),radial-gradient(circle at 25% 78%,#f7067f42,#0000 30%),radial-gradient(circle at 50% 55%,#6d38ec4d,#0000 34%),linear-gradient(132deg,#002b5c 0%,#003a78 28%,#00b5c7 58%,#ff7a16 78%,#f7067f 100%);background-position:0%;background-repeat:repeat,repeat,repeat,repeat;background-size:180% 180%;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;animation:5.8s ease-in-out infinite alternate introScene;position:absolute;inset:0}.home-intro:after{content:"";z-index:-1;background:linear-gradient(112deg,#f7067f2e,#0000 34%),linear-gradient(90deg,#fff2d61f,#0000 18% 82%,#fff2d61a),linear-gradient(#053a730a,#052b5c85);position:absolute;inset:0}.home-intro.is-leaving{opacity:0;visibility:hidden}.home-intro-skip{color:#fff2d6;cursor:pointer;background:#fff2d61f;border:1px solid #fff2d647;border-radius:6px;min-height:38px;padding:8px 12px;font-size:13px;font-weight:800;position:absolute;top:clamp(16px,4vw,42px);right:clamp(16px,4vw,42px)}.home-intro-skip:hover{background:#fff2d638}.home-intro-inner{place-items:center;gap:26px;width:min(560px,92vw);padding:24px;animation:1s both introContent;display:grid;position:relative}.home-intro-logo{filter:drop-shadow(0 18px 32px #00000042);flex-direction:column;gap:clamp(10px,2vw,18px);animation:1.3s both introLogo}.home-intro-mark{object-fit:contain;width:clamp(118px,24vw,190px);height:clamp(118px,24vw,190px)}.home-intro-wordmark{object-fit:contain;width:min(420px,82vw);max-width:min(420px,82vw);height:auto}.home-intro-water{justify-items:center;gap:7px;width:min(360px,76vw);display:grid}.home-intro-water span{background:#fff2d6b8;border-radius:999px;width:100%;height:2px;animation:1.8s ease-in-out infinite introWave;display:block}.home-intro-water span:nth-child(2){opacity:.54;width:76%;animation-delay:.18s}.home-intro-water span:nth-child(3){opacity:.38;width:54%;animation-delay:.34s}.home-intro-kayak{background:#f7067f;border-radius:50% 50% 42% 42%;width:164px;height:34px;animation:2.2s ease-in-out both introKayak;position:relative;transform:rotate(-3deg);box-shadow:inset 0 -8px #052b5c3d,0 14px 26px #0000003d}.home-intro-kayak:before{content:"";transform-origin:50%;background:#ffc800;border-radius:999px;width:96px;height:7px;position:absolute;top:-20px;left:52%;transform:translate(-50%)rotate(72deg)}.home-intro-kayak:after{content:"";background:#052b5c70;border-radius:999px;height:8px;position:absolute;top:14px;left:34px;right:34px}@keyframes introScene{0%{background-position:0%}to{background-position:100%}}@keyframes introContent{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes introLogo{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes introWave{0%,to{transform:translate(-10px)scaleX(.86)}50%{transform:translate(10px)scaleX(1)}}@keyframes introKayak{0%{opacity:0;transform:translate(-72px)translateY(8px)rotate(-7deg)}55%{opacity:1}to{opacity:1;transform:translate(0)translateY(0)rotate(-3deg)}}@keyframes heroGradientShift{0%{background-position:0%}45%{background-position:70% 34%}to{background-position:100% 82%}}@keyframes siteBackgroundShift{0%{background-position:0 0,0 0,100% 16%,42% 100%,0 0}50%{background-position:48% 32%,18% 12%,78% 28%,54% 76%,0 0}to{background-position:100% 72%,34% 8%,62% 44%,20% 62%,0 0}}.hero-content{z-index:1;align-items:center;gap:clamp(18px,3vw,38px);width:100%;max-width:1120px;display:flex;position:relative}.hero h1,.page-title h1{overflow-wrap:anywhere;margin:0;font-size:clamp(40px,8vw,88px);line-height:.98}.hero p,.page-title p{color:#ffffffd6;max-width:680px;font-size:17px}.hero p{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:620px;margin:0;font-size:13px;line-height:1.35;display:-webkit-box;overflow:hidden}.page-title{min-width:0;max-width:100%;margin:16px 0 34px}.reservation-page .page-title{box-shadow:var(--shadow), inset 0 4px 0 #ffd10a47;background:linear-gradient(135deg,#ffffffeb,#f8fbf8db),linear-gradient(90deg,#ffd10a29,#00b5c721);border:1px solid #00b5c72e;border-radius:10px;gap:18px;padding:clamp(18px,3vw,34px);display:grid;position:relative;overflow:hidden}.reservation-page .page-title:after{background:linear-gradient(90deg, var(--accent), var(--accent-cyan), var(--accent-hot));content:"";width:100%;height:4px;position:absolute;bottom:0;left:0}.reservation-page .page-title .eyebrow{color:var(--accent-hot);letter-spacing:0;text-transform:uppercase;margin:0;font-size:13px;font-weight:900}.reservation-page .page-title h1{color:var(--brand-strong);max-width:980px;font-size:clamp(36px,5.4vw,62px)}.reservation-page .page-title .meta{margin:0}.reservation-page .page-title .meta span{color:var(--brand-strong);background:#ffffffd1;border:1px solid #00b5c729;border-radius:999px;padding:8px 11px;font-size:13px;font-weight:800}.reservation-page .service-hero-image,.reservation-page .service-hero-placeholder{margin-top:0}.page-title p{color:var(--muted)}.section{margin-top:28px}.section h2{width:fit-content;margin:0 0 14px;font-size:28px;position:relative}.section h2:after{background:linear-gradient(90deg, var(--accent), var(--accent-cyan), var(--accent-hot));content:"";border-radius:999px;width:min(88px,74%);height:4px;position:absolute;bottom:-8px;left:0}.admin-details{border-top:1px solid var(--line);padding-top:18px}.admin-details>summary,.compact-details>summary{cursor:pointer;font-weight:800}.admin-details>summary{font-size:24px}.admin-details[open]>summary{margin-bottom:18px}.compact-details{margin-top:10px}.compact-details>summary{color:var(--muted);font-size:13px}.compact-details[open]>summary{margin-bottom:8px}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid}.card{background:var(--surface);box-shadow:var(--shadow), inset 0 3px 0 #ffd10a57;border:1px solid #00b5c733;border-radius:8px;padding:22px}.service-card-image,.service-hero-image{background:var(--surface-soft);object-fit:cover;border-radius:8px;width:100%;display:block}.service-card-image{aspect-ratio:4/3;margin:0 0 16px}.service-showcase{gap:20px;display:grid}.service-carousel{gap:14px;width:100%;max-width:980px;margin-inline:auto;display:grid}.carousel-toolbar{justify-content:flex-end;align-items:center;gap:14px;display:flex}.carousel-toolbar p{color:var(--muted);margin:0}.carousel-actions{gap:8px;display:inline-flex}.carousel-actions button{background:var(--surface);color:var(--ink);cursor:pointer;border:1px solid #00b5c747;border-radius:6px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.carousel-actions button:hover{background:#00b5c71f;border-color:#f7067f52}.service-carousel-progress{background:#053a731a;border-radius:999px;height:5px;overflow:hidden}.service-carousel-progress span{background:linear-gradient(90deg, var(--accent), var(--accent-cyan), var(--accent-hot));border-radius:inherit;transform-origin:0;width:100%;height:100%;animation:5.2s linear forwards carouselProgress;display:block;transform:scaleX(0)}.service-carousel-progress.is-paused span{opacity:.5;animation:none}@keyframes carouselProgress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.service-carousel-stage{box-shadow:var(--shadow), inset 0 4px 0 #ffd10a57;background:linear-gradient(#fffdf7,#f5eee3);border:1px solid #00b5c738;border-radius:8px;grid-template-columns:minmax(0,3fr) minmax(0,1fr);height:clamp(420px,56vw,552px);min-height:0;display:grid;overflow:hidden}.service-carousel-media{background:var(--surface-soft);min-height:0;position:relative}.service-carousel-media img{object-fit:cover;width:100%;height:100%;display:block}.service-carousel-placeholder,.service-hero-placeholder{color:var(--brand-strong);background:linear-gradient(135deg,#00b5c72e,#ffd10a29),repeating-linear-gradient(135deg,#053a7314 0 1px,#0000 1px 14px),#f8f7f1;place-items:center;height:100%;min-height:100%;padding:24px;display:grid}.service-carousel-placeholder span,.service-hero-placeholder span{text-align:center;background:#ffffffdb;border:1px solid #00b5c738;border-radius:8px;padding:12px 16px;font-size:clamp(20px,3vw,34px);font-weight:900;box-shadow:0 12px 28px #053a731a}.service-badge{color:var(--brand-strong);text-transform:uppercase;background:#ffd10aeb;border:1px solid #052b5c33;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;position:absolute;top:12px;left:12px}.carousel-position{color:#fff2d6;background:linear-gradient(135deg,#002b5ceb,#00b5c7e0);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;position:absolute;bottom:14px;right:14px}.service-carousel-copy{grid-template-rows:auto minmax(0,1fr) auto auto;align-content:space-between;gap:12px;min-height:0;padding:clamp(14px,2vw,22px);display:grid;overflow:hidden}.service-carousel-copy h3{margin:0;font-size:clamp(20px,2vw,28px);line-height:1.12}.service-carousel-copy p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.service-carousel-meta{color:var(--muted);flex-wrap:wrap;gap:8px;display:flex}.service-carousel-meta span{background:linear-gradient(135deg,#00b5c71f,#ffd10a24);border:1px solid #00b5c71f;border-radius:6px;align-items:center;gap:6px;padding:7px 8px;font-size:13px;display:inline-flex}.service-carousel-footer{flex-direction:column;justify-content:end;align-items:flex-start;gap:12px;display:flex}.service-carousel-footer strong{color:var(--brand-strong)}.teaser-button{color:var(--muted);background:#00b5c71a;border:1px dashed #f7067f61;border-radius:6px;justify-content:center;width:100%;min-height:42px;padding:10px 14px;font-weight:900;display:inline-flex}.service-carousel-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.service-carousel-tabs button{color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:1px solid #00b5c733;border-radius:8px;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:8px;height:72px;min-height:0;padding:8px;display:grid;overflow:hidden}.service-carousel-tabs button.active{border-color:var(--accent-hot);background:linear-gradient(135deg,#ffd10a24,#00b5c71f);box-shadow:0 0 0 3px #00b5c738}.service-carousel-tabs img,.service-tab-placeholder{aspect-ratio:1;border-radius:6px;width:48px;height:48px}.service-carousel-tabs img{object-fit:cover}.service-tab-placeholder{background:linear-gradient(135deg,#00b5c733,#ffd10a38),#f8f7f1;border:1px dashed #053a7347;display:block}.service-carousel-tabs span{gap:3px;min-width:0;font-weight:900;line-height:1.12;display:grid;overflow:hidden}.service-carousel-tabs small{color:var(--muted);font-size:12px;font-weight:800}.service-carousel-dots{justify-content:center;gap:7px;display:none}.service-carousel-dots span{background:#053a7347;border-radius:999px;width:8px;height:8px}.service-carousel-dots span.active{background:linear-gradient(90deg, var(--accent), var(--accent-hot));width:28px}.service-bookable-grid,.coming-soon-grid{justify-content:center;gap:18px;display:grid}.service-bookable-grid{grid-template-columns:minmax(280px,460px)}.coming-soon-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));width:100%;max-width:860px;margin:0 auto}.service-placeholder-image{aspect-ratio:4/3;background:linear-gradient(135deg, #08aeba24, #ffc80029), var(--surface-soft);color:var(--ink);text-align:center;border:1px dashed #053a7347;border-radius:8px;justify-content:center;align-items:center;font-weight:900;display:flex}.service-placeholder-image span{background:#ffffffd1;border-radius:6px;padding:10px 12px}.service-hero-image{aspect-ratio:16/7;box-shadow:var(--shadow);max-height:360px;margin-top:18px}.service-hero-placeholder{aspect-ratio:16/7;box-shadow:var(--shadow);border-radius:8px;max-height:360px;margin-top:0}.service-description{border:1px solid #00b5c724;border-left:4px solid var(--accent-cyan);background:#ffffffc2;border-radius:8px;gap:10px;max-width:920px;margin:16px 0;padding:16px;display:grid;box-shadow:0 10px 28px #053a7314}.service-description p{color:var(--ink);white-space:pre-line;max-width:none;margin:0;font-size:15px;line-height:1.62}.service-description-heading{color:var(--brand-strong);text-transform:uppercase;font-size:14px;font-weight:900}.card h3{margin:0 0 10px;font-size:23px}.service-card{position:relative}.service-card-coming{padding:12px}.service-soon{background:#fff1d7;margin:0 0 12px}.price-line{color:var(--brand-strong);margin:12px 0 4px;display:block}.meta{color:var(--muted);flex-wrap:wrap;gap:8px 14px;margin:10px 0;display:flex}.primary-button,.secondary-button,.danger-button{cursor:pointer;border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 14px;font-weight:700;display:inline-flex}.primary-button{background:var(--brand);color:#fff}.primary-button:disabled{cursor:not-allowed;opacity:.55}.secondary-button{background:var(--surface-soft);color:var(--ink)}.secondary-button:disabled{cursor:not-allowed;opacity:.55}.booking-cta{background:linear-gradient(135deg, var(--accent), var(--accent-orange) 48%, var(--accent-hot));color:var(--brand-strong);outline-offset:-3px;border:1px solid #052b5c57;outline:1px solid #ffffff8a;font-weight:900;box-shadow:0 10px 24px #f7067f38}.booking-cta:hover{background:linear-gradient(135deg, #ffe066, var(--accent-orange) 42%, var(--accent-hot));transform:translateY(-1px)}.booking-cta:disabled{outline:0;transform:none}.booking-submit-button{width:fit-content}.slot-continue-button{border:2px solid var(--brand-strong);color:var(--brand-strong);background:#fffdf8;font-weight:900;box-shadow:0 0 0 3px #ffd10a47,0 10px 24px #053a731a}.slot-continue-button:hover{border-color:var(--accent-hot);background:linear-gradient(135deg,#fffdf8,#e9fbfb)}.disabled-button{cursor:default;opacity:.68}.danger-button{background:var(--danger);color:#fff}.form-panel{box-shadow:var(--shadow);background:#fffdf9eb;border:1px solid #00b5c72e;border-radius:8px;gap:16px;min-width:0;padding:22px;display:grid}.teaser-panel{max-width:760px}.teaser-panel p{color:var(--muted);margin:0}.teaser-panel .secondary-button{width:fit-content}.admin-shell{background:linear-gradient(180deg, #fff2d6a3, #fff2d600), var(--bg)}.admin-shell .page-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;margin:8px 0 18px;padding-bottom:18px;display:flex}.admin-shell .page-title h1{color:var(--ink);align-items:center;gap:12px;font-size:40px;display:inline-flex}.admin-shell .page-title h1:before{content:"";background:url(/livaigo-symbol.png) 50%/contain no-repeat;flex:none;width:42px;height:42px;display:inline-block}.admin-shell .form-panel{border-top:4px solid var(--brand)}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}label{color:var(--muted);font-size:14px;font-weight:700;display:block}label>input,label>select,label>textarea{margin-top:7px}.required-mark{color:var(--danger)}.required-note{color:var(--muted);margin:0;font-size:13px;font-weight:700}input,select,textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;width:100%;min-height:42px;padding:10px 12px}textarea{resize:vertical}.checkbox-row{align-items:start;gap:10px;display:flex}.checkbox-row input{width:auto;min-height:auto;margin-top:4px}.compact-checkbox{color:var(--ink);font-weight:700}.form-error{color:#5c3b14;background:#fff1d7;border:1px solid #ffc800;border-radius:6px;padding:12px;font-weight:800}.form-summary{background:var(--surface-soft);border-radius:6px;gap:4px;padding:14px;display:grid}.booking-calendar,.booking-step-panel,.participant-section{background:#ffffffb8;border:1px solid #00b5c733;border-radius:8px;gap:14px;min-width:0;padding:16px;display:grid}.calendar-head,.booking-step-heading{align-items:center;gap:12px;display:flex}.booking-step-heading>span,.booking-step-locked>span{background:linear-gradient(135deg, var(--brand-strong), var(--accent-cyan));color:#fff2d6;border-radius:999px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-weight:900;display:inline-flex}.booking-step-heading h2{margin:0;font-size:20px}.calendar-head span,.booking-step-heading p,.participant-section p{color:var(--muted);margin:2px 0 0;font-size:13px;display:block}.booking-step-locked{border:1px dashed var(--line);color:var(--muted);background:#fff2d694;border-radius:8px;align-items:center;gap:12px;padding:14px 16px;display:flex}.booking-step-locked>span{background:#053a736b}.booking-step-locked strong{color:var(--ink)}.booking-step-actions{justify-content:flex-end;display:flex}.booking-controls{grid-template-columns:minmax(120px,.7fr) minmax(180px,1fr);align-items:end;gap:12px;display:grid}.slot-picker{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;display:grid}.week-picker{grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:10px;display:grid}.week-nav-button{background:var(--surface-soft);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;height:42px;display:inline-flex}.week-nav-button:disabled{cursor:not-allowed;opacity:.42}.week-picker-current{background:#ffffffe6;border:1px solid #00b5c72e;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:12px;display:grid}.week-picker-current>span{color:var(--muted);font-size:13px;font-weight:800}.week-picker-current strong{color:var(--ink);font-size:18px;display:block}.date-picker-control{justify-self:end;width:42px;height:42px;position:relative}.week-calendar-button{background:linear-gradient(135deg, var(--accent), #00b5c73d);color:var(--brand-strong);cursor:pointer;border:1px solid #052b5c38;border-radius:6px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.week-calendar-button:hover{box-shadow:0 0 0 3px #00b5c72e}.native-date-input{opacity:0;pointer-events:none;width:42px;height:42px;min-height:42px;padding:0;position:absolute;inset:0}.client-week-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.week-day-choice{--availability-bg:#e8eef2;--availability-border:#aab7bf;--availability-ink:var(--ink);background:var(--availability-bg);border:1px solid var(--availability-border);color:var(--availability-ink);cursor:pointer;text-align:left;border-radius:6px;gap:5px;min-height:116px;padding:10px;display:grid}.week-day-choice strong,.week-day-choice span,.week-day-choice em,.week-day-choice small{overflow-wrap:anywhere}.week-day-choice strong{color:var(--ink);text-transform:capitalize;font-size:15px;line-height:1.16}.week-day-choice span{color:#053a73bd;text-transform:capitalize;font-size:12px;font-weight:800}.week-day-choice em,.week-day-choice small{color:var(--ink);font-size:12px;font-style:normal;font-weight:800}.day-open{--availability-bg:#dff4df;--availability-border:#4f9a60}.day-limited{--availability-bg:#fff1d7;--availability-border:#ffc800}.day-full{--availability-bg:#ffe1dc;--availability-border:#c65345}.day-unavailable{--availability-bg:#e8eef2;--availability-border:#aab7bf}.week-day-choice.active{border-color:var(--ink);outline-offset:2px;outline:2px solid #fff2d6;box-shadow:0 0 0 3px #053a733d,inset 0 0 0 2px #fff2d6}.week-day-choice:disabled{cursor:not-allowed}.week-empty-state{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.slot-choice{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:6px;gap:2px;min-height:64px;padding:10px;display:grid}.slot-choice span+span{color:var(--muted);font-size:12px;font-weight:800}.slot-open{background:#f4fff4;border-color:#4f9a60}.slot-limited{background:#fff8eb;border-color:#ffc800}.slot-full{background:#ffe1dc;border-color:#c65345}.selected-date-banner{background:var(--surface-soft);border:1px solid var(--line);color:var(--muted);border-radius:6px;justify-content:space-between;align-items:center;gap:6px;padding:10px 12px;display:flex}.selected-date-button{cursor:pointer;font:inherit;text-align:left;width:100%}.selected-date-button:hover{border-color:var(--accent-cyan);box-shadow:0 0 0 3px #00b5c724}.selected-date-banner strong{color:var(--ink)}.slot-choice.active{border-color:var(--brand-strong);outline-offset:2px;background:#dff4df;outline:2px solid #fff2d6;box-shadow:0 0 0 3px #08aeba3d}.slot-choice.active span+span{color:var(--brand-strong)}.slot-choice:disabled{cursor:not-allowed}.slot-choice:disabled span,.slot-choice:disabled strong{color:#053a7394}.participant-swim-check{align-self:end;min-height:42px}.participant-section h2{margin:0;font-size:20px}.participant-card{border:1px solid var(--line);border-radius:8px;margin:0;padding:16px}.participant-card legend{color:var(--ink);padding:0 6px;font-weight:800}.autocomplete-field{position:relative}.suggestion-list{border:1px solid var(--line);box-shadow:var(--shadow);z-index:15;background:#fff;border-radius:6px;max-height:220px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.suggestion-list button{border:0;border-bottom:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:0 0;padding:10px 12px}.suggestion-list button:hover{background:var(--surface-soft)}.table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:820px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px}th{background:var(--surface-soft);text-transform:uppercase;font-size:13px}.status{border-radius:999px;padding:5px 8px;font-size:12px;font-weight:800;display:inline-block}.status.pending_admin{background:#fff1d7}.status.confirmed{background:#dff4df}.status.payment-pending,.status.payment-not_required_phase1{background:#e8eef2}.status.payment-paid{background:#dff4df}.status.payment-due{background:#fff1d7}.status.payment-failed,.status.payment-refunded,.status.refused,.status.cancelled{background:#ffe0df}.actions{flex-wrap:wrap;gap:8px;display:flex}.payment-breakdown{gap:6px;min-width:150px;display:grid}.payment-breakdown>span{color:var(--muted);font-size:13px}.stacked-form{gap:8px;min-width:180px;display:grid}.inline-form{align-items:center;gap:8px;margin-left:8px;display:inline-flex}.empty-pill{background:var(--surface-soft);border:1px dashed var(--line);color:var(--muted);border-radius:6px;align-items:center;min-height:42px;padding:8px 10px;font-size:13px;display:inline-flex}.compact-list{color:var(--muted);margin:10px 0 0;padding-left:18px;font-size:13px}.empty-state{background:var(--surface-soft);border:1px dashed var(--line);color:var(--muted);border-radius:8px;padding:22px}.admin-calendar{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;gap:18px;padding:18px;display:grid}.admin-notice{border:1px solid var(--brand)}.admin-calendar-sticky-bar{border:1px solid var(--line);z-index:8;background:#fff2d6f5;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;padding:12px;display:flex;position:sticky;top:82px;box-shadow:0 12px 30px #053a731a}.admin-calendar-summary{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-calendar-summary strong,.admin-calendar-summary span{background:var(--surface-soft);color:var(--ink);border-radius:6px;padding:7px 9px;font-size:13px;font-weight:800}.admin-calendar-jump{flex:260px;align-items:center;gap:8px;max-width:360px;display:flex}.admin-calendar-jump select{min-height:38px}.admin-calendar-week-nav{flex:460px;grid-template-columns:auto minmax(210px,1fr) auto;align-items:end;gap:8px;display:grid}.admin-calendar-week-nav label{gap:4px}.calendar-legend{flex-wrap:wrap;gap:8px;display:flex}.legend-pill{border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.legend-open{background:#dff4df}.legend-full,.legend-booked{background:#fff1d7}.legend-closed{background:#e8eef2}.admin-calendar-days{gap:18px;display:grid}.admin-calendar-day{gap:12px;scroll-margin-top:170px;display:grid}.admin-calendar-day h2{background:var(--bg);border-bottom:1px solid var(--line);z-index:7;margin:0;padding:8px 0;font-size:20px;position:sticky;top:158px}.admin-slot-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.admin-slot-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.slot-admin-open{border-color:#4f9a60}.slot-admin-full{border-color:#ffc800}.slot-admin-closed,.slot-admin-cancelled{background:#f3f5f2}.slot-card-head{justify-content:space-between;align-items:start;gap:10px;display:flex}.slot-card-head div{gap:2px;display:grid}.slot-card-head span:not(.status){color:var(--muted);font-size:13px}.slot-status-open{background:#dff4df}.slot-status-full{background:#fff1d7}.slot-status-closed,.slot-status-cancelled{background:#e8eef2}.slot-capacity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.slot-capacity-grid span{background:var(--surface-soft);border-radius:6px;padding:8px;font-size:13px;font-weight:800}.slot-admin-form,.slot-status-form,.booking-move-form{gap:10px;display:grid}.slot-admin-fields{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:10px;display:grid}.warning-checkbox{background:#fff1d7;border:1px solid #ffc800;border-radius:6px;padding:10px}.icon-action-button{width:fit-content}.slot-bookings{border-top:1px solid var(--line);gap:10px;padding-top:12px;display:grid}.slot-booking-list{gap:10px;display:grid}.slot-booking{border:1px solid var(--line);background:#fff2d6;border-radius:8px;gap:10px;padding:12px;display:grid}.slot-booking-head{justify-content:space-between;align-items:start;gap:8px;display:flex}.slot-booking-head div{gap:2px;display:grid}.slot-booking-head span:not(.status),.slot-booking-meta,.inline-help{color:var(--muted);font-size:13px}.slot-booking-meta{flex-wrap:wrap;gap:6px 10px;display:flex}.booking-move-form select{min-width:0}.admin-shell{gap:22px;display:grid}.admin-booking-toolbar{grid-template-columns:minmax(180px,.28fr) minmax(0,1fr);gap:12px;display:grid}.booking-pending-kpi{min-height:100%}.admin-filter-bar{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;grid-template-columns:minmax(220px,1.5fr) minmax(150px,.8fr) minmax(150px,.8fr) minmax(190px,.9fr) auto auto;align-items:end;gap:12px;padding:14px;display:grid}.admin-booking-list,.admin-service-manager{gap:14px;display:grid}.admin-booking-card,.admin-compact-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:16px;display:grid}.admin-booking-card-head,.admin-booking-statuses{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:8px;display:flex}.admin-booking-card-head div:first-child{gap:4px;display:grid}.admin-booking-card-head span:not(.status){color:var(--muted);font-size:13px}.admin-booking-card-grid{grid-template-columns:minmax(180px,.9fr) minmax(220px,1.1fr) minmax(220px,1fr);gap:12px;display:grid}.admin-booking-card-grid section{background:var(--surface-soft);border-radius:8px;gap:5px;padding:12px;display:grid}.admin-booking-card-grid h2{color:var(--muted);text-transform:uppercase;margin:0;font-size:12px}.admin-booking-card-grid span{color:var(--muted)}.admin-booking-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;padding-top:12px;display:flex}.service-selected-summary{flex-wrap:wrap;gap:8px;display:flex}.service-selected-summary span{background:var(--surface-soft);color:var(--ink);border-radius:6px;padding:7px 9px;font-size:13px;font-weight:800}.reference-preview{background:var(--surface-soft);border:1px solid var(--line);border-radius:6px;justify-content:center;align-items:center;width:72px;height:54px;display:inline-flex;overflow:hidden}.reference-preview img{object-fit:cover;width:100%;height:100%}.reference-file-pill{background:var(--surface-soft);border:1px dashed var(--line);color:var(--muted);border-radius:6px;padding:8px 10px;font-size:12px;font-weight:800;display:inline-flex}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.kpi{border:1px solid var(--line);box-shadow:var(--shadow);background:linear-gradient(#fff2d6,#f8f1e8);border-radius:8px;padding:18px}.kpi span{color:var(--muted);text-transform:uppercase;font-size:13px;font-weight:800}.kpi strong{color:var(--ink);font-size:30px;display:block}.month-filter{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;align-items:end;gap:12px;padding:14px;display:flex}.legal-body{background:var(--surface);border:1px solid var(--line);white-space:pre-wrap;border-radius:8px;padding:24px}.cookie-banner{box-shadow:var(--shadow);color:#fff;z-index:40;background:#053a73;border-radius:0;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:14px;padding:18px clamp(18px,5vw,64px);display:grid;position:fixed;bottom:0;left:0;right:0}.cookie-copy{max-width:760px}.cookie-banner p{color:#ffffffc7;margin:4px 0 0}.cookie-settings{flex-wrap:wrap;gap:10px 16px;margin-top:12px;display:flex}.cookie-actions{grid-template-columns:minmax(0,1fr);gap:10px;width:100%;min-width:0;display:grid}@media (min-width:761px){.cookie-banner{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:18px}.cookie-actions{flex-wrap:wrap;justify-content:flex-end;width:auto;min-width:280px;display:flex}}.departure-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:14px;display:grid}.departure-fields{gap:14px;display:grid}.map-preview{color:#fff2d6;background:#053a73;border-radius:8px;min-height:260px;overflow:hidden}.map-preview-title,.builder-head{align-items:center;gap:8px;display:flex}.map-preview-title{padding:10px 12px}.map-preview iframe{border:0;width:100%;height:220px;display:block}.slot-builder{gap:18px}.builder-head{color:var(--ink)}.weekday-picker{flex-wrap:wrap;gap:8px;display:flex}.weekday-picker label{cursor:pointer;font-size:13px}.weekday-picker input{opacity:0;pointer-events:none;width:1px;height:1px;min-height:0;position:absolute}.weekday-picker span{background:var(--surface-soft);border:1px solid var(--line);color:var(--ink);border-radius:6px;justify-content:center;align-items:center;min-width:52px;min-height:40px;padding:8px 10px;display:inline-flex}.weekday-picker input:checked+span{background:var(--brand);border-color:var(--brand);color:#fff}.builder-summary{background:var(--surface-soft);color:var(--muted);border-radius:6px;padding:12px;font-size:13px;font-weight:700}.admin-edit-list{gap:18px;display:grid}.watch-panel h2{margin:0;font-size:22px}.watch-panel p{color:var(--muted);margin:4px 0 0}.inline-watch-form{gap:14px;display:grid}.watch-limit-note{color:var(--muted);margin:-6px 0 0;font-size:13px;font-weight:700}.last-run-layout{grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr);gap:20px;display:grid}.last-run-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.last-run-gallery img{aspect-ratio:4/3;box-shadow:var(--shadow);object-fit:cover;border-radius:8px;width:100%;height:100%}.last-run-gallery img:first-child{grid-column:1/-1}@media (max-width:760px){.site-header{align-items:center;gap:6px;padding:10px 12px;overflow:hidden}.admin-header{flex-direction:column;align-items:flex-start;gap:8px}.admin-header .brand{min-height:34px}.admin-header .brand-logo{width:112px;height:28px}.admin-header .brand-symbol{width:30px;height:30px}.admin-header .nav-links{flex-wrap:nowrap;justify-content:flex-start;width:100%;max-width:100%;padding-bottom:2px;overflow-x:auto}.admin-header .nav-links a,.admin-header .link-button{white-space:nowrap;background:#fff2d614;border-radius:6px}.admin-header .nav-links form{flex:none}.site-header:not(.admin-header){justify-content:flex-start;width:100vw;max-width:100vw}.site-header:not(.admin-header) .brand{flex:none;min-width:0}.site-header:not(.admin-header) .brand-wordmark{gap:6px}.site-header:not(.admin-header) .brand-logo{width:96px;height:24px}.site-header:not(.admin-header) .brand-symbol{width:28px;height:28px}.nav-links{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-end;gap:4px;max-width:calc(100vw - 118px);overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.site-header:not(.admin-header) .nav-links{flex:auto;justify-content:flex-start;width:auto;max-width:none;margin-left:0}.site-header:not(.admin-header) .nav-links a:first-child{display:none}.site-header:not(.admin-header) .admin-access-link{order:2;width:32px;padding-inline:6px}.site-header:not(.admin-header) .admin-access-link span{display:none}.site-header:not(.admin-header) .language-switch{order:3}.nav-links a,.link-button{white-space:nowrap;flex:none;padding:6px;font-size:13px}.language-switch,.icon-link{width:32px;min-width:32px;height:32px}.hero{min-height:132px;padding:16px 18px}.home-intro-inner{gap:22px;width:100%}.home-intro-mark{width:118px;height:118px}.home-intro-wordmark{width:min(280px,72vw)}.home-intro-kayak{width:138px}.hero-content{align-items:flex-start;gap:7px;display:grid}.hero-wordmark-image{width:min(238px,62vw);height:38px}.hero-symbol-image{width:48px;height:48px}.login-symbol-image{width:92px;height:92px}.login-wordmark-image{width:min(300px,76vw);max-width:min(300px,76vw)}.page-title h1{word-break:break-word;font-size:36px;line-height:1.04}.hero p,.page-title p{overflow-wrap:anywhere;font-size:17px}.hero p{font-size:14px}.page{padding:24px 16px 48px}.section{margin-top:30px}.section h2{font-size:24px}.carousel-toolbar{align-items:flex-start}.carousel-toolbar p{font-size:14px}.service-carousel-stage{grid-template-columns:minmax(0,1fr);height:570px;min-height:0}.service-carousel-media{aspect-ratio:auto;height:242px;min-height:0}.service-carousel-copy{padding:16px}.service-carousel-copy h3{font-size:22px}.service-carousel-footer{flex-direction:column;align-items:stretch}.service-carousel-tabs{gap:8px;padding:3px 3px 8px;display:flex;overflow-x:auto}.service-carousel-tabs button{flex:0 0 72%;grid-template-columns:48px minmax(0,1fr);height:74px;min-height:0}.service-carousel-tabs img,.service-tab-placeholder{width:48px;height:48px}.service-carousel-dots{display:flex}.card,.form-panel{padding:16px}.form-grid,.departure-grid,.month-filter,.admin-booking-toolbar,.last-run-layout{grid-template-columns:minmax(0,1fr)}.departure-grid{display:grid}.month-filter{flex-direction:column;align-items:stretch}.admin-filter-bar{grid-template-columns:minmax(0,1fr);align-items:stretch}.admin-booking-card-grid,.admin-calendar-week-nav{grid-template-columns:minmax(0,1fr)}.admin-booking-actions,.admin-booking-actions form,.admin-booking-actions a,.admin-calendar-week-nav .secondary-button{width:100%}.admin-shell .page-title{flex-direction:column;align-items:flex-start}.booking-calendar,.booking-step-panel,.participant-section,.participant-card,.admin-calendar{padding:14px}.admin-calendar-sticky-bar{align-items:stretch;top:96px}.admin-calendar-summary{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.admin-calendar-summary strong,.admin-calendar-summary span{overflow-wrap:anywhere}.calendar-legend{flex-wrap:wrap;width:100%}.slot-card-head{flex-direction:column;align-items:stretch}.admin-calendar-jump{flex-direction:column;align-items:stretch;max-width:none}.admin-calendar-day{scroll-margin-top:245px}.admin-calendar-day h2{top:218px}.admin-slot-grid,.slot-admin-fields,.booking-controls,.slot-picker{grid-template-columns:minmax(0,1fr)}.booking-step-actions,.booking-step-actions .secondary-button{width:100%}.week-picker{grid-template-columns:36px minmax(0,1fr) 36px}.week-picker-current{grid-template-columns:minmax(0,1fr);padding:10px}.client-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.week-day-choice{min-height:108px}.site-footer{flex-direction:column;align-items:flex-start;padding:18px 16px}.cookie-banner{flex-direction:column;align-items:stretch}.cookie-actions{gap:10px;width:100%;min-width:0;display:grid}.cookie-actions .primary-button,.cookie-actions .secondary-button{width:100%}.table-wrap{background:0 0;border:0;overflow-x:visible}table{min-width:0}table,thead,tbody,tr,th,td{display:block}thead{display:none}tr{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;margin-bottom:12px;overflow:hidden}td{border-bottom:1px solid var(--line);word-break:break-word;grid-template-columns:minmax(96px,34%) minmax(0,1fr);align-items:start;gap:10px;padding:12px 14px;display:grid}td:last-child{border-bottom:0}td:before{color:var(--muted);content:attr(data-label);text-transform:uppercase;font-size:12px;font-weight:800}td:not([data-label]){display:block}td:not([data-label]):before{content:none}}@media (prefers-reduced-motion:reduce){.home-intro,.home-intro:before,.home-intro-inner,.home-intro-logo,.home-intro-water span,.home-intro-kayak,.hero{animation:none}.service-carousel-progress span{animation:none;transform:scaleX(1)}}
