/* ── LOCAL FONTS (DSGVO-compliant) ────────── */
@font-face { font-family: 'Fraunces'; src: url('../fonts/fraunces-900.ttf') format('truetype'); font-weight: 700; font-display: swap; }
@font-face { font-family: 'Fraunces'; src: url('../fonts/fraunces-900.ttf') format('truetype'); font-weight: 900; font-display: swap; }
@font-face { font-family: 'Plus Jakarta Sans'; src: url('../fonts/jakarta-400.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Plus Jakarta Sans'; src: url('../fonts/jakarta-500.ttf') format('truetype'); font-weight: 500; font-display: swap; }
@font-face { font-family: 'Plus Jakarta Sans'; src: url('../fonts/jakarta-600.ttf') format('truetype'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Plus Jakarta Sans'; src: url('../fonts/jakarta-700.ttf') format('truetype'); font-weight: 700; font-display: swap; }

/* ── TOKENS ─────────────────────────────── */
:root{
  --duck:#F5C518;--duck-dk:#C8A200;--duck-on:#111;
  --green:#1DB96A;--blue:#0EA5C9;
  --t1:#fff;--t2:rgba(255,255,255,.80);--t3:rgba(255,255,255,.52);
  --card:rgba(255,255,255,.055);--border:rgba(255,255,255,.10);
  --r:16px;--rl:24px;
  --sp:clamp(64px,9vw,110px) clamp(20px,5vw,56px);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%;}
body{font-family:'Plus Jakarta Sans',sans-serif;background:#010E1B;color:var(--t1);overflow-x:hidden;line-height:1.65;}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}}
:focus-visible{outline:3px solid var(--duck);outline-offset:4px;border-radius:4px;}
.skip{position:fixed;top:-100%;left:20px;background:var(--duck);color:var(--duck-on);padding:12px 20px;border-radius:8px;font-weight:700;text-decoration:none;z-index:999;transition:top .2s;}
.skip:focus{top:16px;}
.sd-skip-link{position:absolute;top:-100%;left:16px;background:var(--duck,#F5C518);color:#06182E;padding:10px 20px;border-radius:8px;font-weight:700;font-size:.9375rem;text-decoration:none;z-index:9999;transition:top .2s;}
.sd-skip-link:focus{top:16px;}
img{max-width:100%;height:auto;display:block;}

/* ── NAV ─────────────────────────────────── */
.nav{position:fixed;top:0;left:0;right:0;z-index:300;display:flex;justify-content:space-between;align-items:center;padding:14px clamp(16px,4vw,52px);transition:background .4s;background:rgba(1,14,27,.85);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);}
.nav.on{background:rgba(1,14,27,.94);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);}
.logo{display:flex;align-items:center;gap:10px;font-family:'Fraunces',serif;font-size:1.15rem;font-weight:700;color:#fff;text-decoration:none;flex-shrink:0;}
.logo-inner{display:flex;flex-direction:column;line-height:1;}
.logo-name{font-family:'Fraunces',serif;font-size:1.15rem;font-weight:700;color:#fff;line-height:1;display:none;}
.logo-by{font-family:'Plus Jakarta Sans',sans-serif;font-size:.65rem;font-weight:500;font-style:italic;color:var(--duck);opacity:.75;margin-top:2px;letter-spacing:.2px;display:none;}
.logo-mark{display:flex;width:40px;height:40px;flex-shrink:0;}
.logo-mark img{width:100%;height:100%;object-fit:contain;}
.logo-duck{display:none;}
.nav-r{display:flex;align-items:center;gap:16px;}
.nav-links{display:flex;gap:20px;}
.nl{color:var(--t2);text-decoration:none;font-size:.875rem;font-weight:600;transition:color .2s;white-space:nowrap;}
.nl:hover{color:#fff;}
.ncta{background:var(--duck);color:var(--duck-on);padding:10px 20px;border-radius:100px;font-weight:700;font-size:.875rem;text-decoration:none;white-space:nowrap;transition:box-shadow .3s,transform .2s;}
.ncta:hover{box-shadow:0 0 0 8px rgba(245,197,24,.14);transform:translateY(-1px);}

/* ── SHARED BUTTONS ─────────────────────── */
.by{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--duck);color:var(--duck-on);padding:14px 32px;border-radius:100px;font-weight:700;font-size:1rem;text-decoration:none;box-shadow:0 8px 32px rgba(245,197,24,.26);transition:transform .2s,box-shadow .3s;width:100%;max-width:300px;}
.by:hover{transform:translateY(-3px);box-shadow:0 16px 48px rgba(245,197,24,.36);}
.bw{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.1);color:#fff;padding:14px 32px;border-radius:100px;font-weight:600;font-size:1rem;text-decoration:none;border:1.5px solid rgba(255,255,255,.28);transition:background .2s;width:100%;max-width:300px;}
.bw:hover{background:rgba(255,255,255,.18);}

/* ── SHARED SECTION ─────────────────────── */
.eye{display:block;font-size:.72rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--duck);margin-bottom:12px;}
.sh{font-family:'Fraunces',serif;font-size:clamp(1.8rem,4vw,2.9rem);font-weight:700;line-height:1.12;}
.sh em{font-style:italic;}
.sub{font-size:1rem;color:var(--t2);max-width:480px;margin:12px auto 48px;line-height:1.75;font-weight:500;}
.tc{text-align:center;}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;}
.reveal.vis{opacity:1;transform:none;}

/* ── HERO ────────────────────────────────── */
.hero{
  min-height:100vh;
  background:linear-gradient(180deg,#FF8C42 0%,#FFD97D 10%,#87CEEB 30%,#74C6E8 54%,#3A9EC2 72%,#0D7A95 100%);
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:120px 20px 280px;
}
.hero-inner{position:relative;z-index:2;max-width:900px;width:100%;}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(255,210,70,.5) 0%,transparent 55%);}
.sun{position:absolute;top:7%;left:50%;transform:translateX(-50%);width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,#FFF176 20%,#FFE000 55%,transparent 72%);box-shadow:0 0 60px 28px rgba(255,215,0,.4),0 0 130px 65px rgba(255,180,0,.18);animation:sun-p 5s ease-in-out infinite;}
.plane-el{position:absolute;top:26%;font-size:1.6rem;opacity:.6;animation:fly 14s ease-in-out infinite;}

.hero-inner{position:relative;z-index:2;max-width:900px;width:100%;}
.hero-chip{display:inline-flex;align-items:center;gap:8px;background:rgba(0,0,0,.4);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);padding:8px 20px;border-radius:100px;font-size:.85rem;font-weight:700;color:#fff;margin-bottom:20px;text-shadow:0 2px 4px rgba(0,0,0,.3);}
h1.ht{font-family:'Fraunces',serif;font-size:clamp(2.6rem,10vw,5rem);font-weight:900;line-height:1.1;color:#fff;text-shadow:0 4px 40px rgba(0,60,120,.2);margin-bottom:16px;}
h1.ht em{font-style:italic;color:#1a1a1a;font-size:.5em;display:block;}
.hlead{font-size:clamp(.95rem,2.5vw,1.1rem);color:rgba(255,255,255,.88);max-width:460px;margin:0 auto 28px;line-height:1.75;font-weight:500;}
.hstats{display:flex;gap:clamp(20px,5vw,48px);justify-content:center;flex-wrap:wrap;margin-bottom:28px;}
.hv{font-family:'Fraunces',serif;font-size:1.5rem;font-weight:900;color:var(--duck);display:block;line-height:1;}
.hl{font-size:.68rem;font-weight:700;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.5px;margin-top:3px;white-space:nowrap;}
.hero-btns{display:flex;flex-direction:column;align-items:center;gap:12px;padding:0 16px;}
.wm{position:absolute;bottom:0;left:0;right:0;height:240px;overflow:hidden;pointer-events:none;z-index:1;}
.wmb{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(6,58,85,.6) 55%,#031E36 100%);}
.wv{position:absolute;left:-50%;width:200%;height:auto;display:block;}
.wv1{bottom:110px;animation:wv 9s ease-in-out infinite;}
.wv2{bottom:55px;animation:wv 7s ease-in-out infinite reverse;opacity:.9;}
.wv3{bottom:0;animation:wv 11s ease-in-out infinite;opacity:1;}
.scue{display:none;}

/* ── STORY ───────────────────────────────── */
.story{background:linear-gradient(180deg,#031E36 0%,#052D45 50%,#063A55 100%);padding:var(--sp);position:relative;overflow:hidden;}
.ca{position:absolute;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.038) 0%,transparent 70%);animation:cam ease-in-out infinite;pointer-events:none;}
.ca1{width:300px;height:80px;top:10%;left:6%;animation-duration:7s;}
.ca2{width:200px;height:60px;top:62%;right:8%;animation-duration:9s;animation-delay:2s;}
.bms{position:absolute;top:0;left:0;right:0;height:220px;pointer-events:none;overflow:hidden;}
.bm{position:absolute;top:0;transform-origin:top;background:linear-gradient(180deg,rgba(14,165,201,.055) 0%,transparent 100%);animation:bs ease-in-out infinite;}
.bm1{left:10%;width:60px;height:200px;animation-duration:8s;}
.bm2{left:50%;width:80px;height:240px;animation-duration:9s;animation-delay:2s;}
.bm3{left:85%;width:50px;height:190px;animation-duration:11s;animation-delay:1s;}
.sw{max-width:900px;margin:0 auto;position:relative;z-index:2;}
.sg{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:start;}
.sq{font-family:'Fraunces',serif;font-size:clamp(1rem,2.5vw,1.2rem);font-style:italic;color:var(--duck);line-height:1.55;margin-bottom:24px;padding-left:16px;border-left:3px solid var(--duck);}
.tl{display:flex;flex-direction:column;gap:0;margin-top:4px;}
.ti{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06);}
.ti:last-child{border:none;}
.td{width:32px;height:32px;border-radius:50%;background:rgba(245,197,24,.1);border:1.5px solid rgba(245,197,24,.28);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;margin-top:2px;}
.tt{font-weight:700;font-size:.9rem;color:#fff;margin-bottom:3px;}
.tx{font-size:.84rem;color:var(--t2);line-height:1.6;font-weight:500;}
.sc{background:var(--card);border:1px solid var(--border);border-radius:var(--rl);padding:32px 28px;position:relative;overflow:hidden;}
.sc::before{content:'🌴';position:absolute;right:-12px;top:-12px;font-size:5.5rem;opacity:.06;transform:rotate(15deg);}
.sc-flag{font-size:1.6rem;display:block;margin-bottom:12px;}
.sc-h{font-family:'Fraunces',serif;font-size:clamp(1.2rem,3vw,1.5rem);font-weight:700;color:#fff;line-height:1.2;margin-bottom:12px;}
.sc-h em{font-style:italic;color:var(--duck);}
.sc-p{font-size:.9rem;color:var(--t2);line-height:1.8;font-weight:500;}
.sc-p strong{color:#fff;font-weight:700;}
.sc-line{width:32px;height:2px;background:var(--duck);border-radius:1px;margin:16px 0;}
.sc-tags{display:flex;flex-wrap:wrap;gap:7px;}
.sc-tag{display:inline-flex;align-items:center;gap:5px;background:rgba(245,197,24,.08);border:1px solid rgba(245,197,24,.2);border-radius:100px;padding:4px 12px;font-size:.76rem;font-weight:700;color:var(--duck);}

/* ── SERVICES ────────────────────────────── */
.services{background:linear-gradient(180deg,#063A55 0%,#031E36 45%,#010E1B 100%);padding:var(--sp);text-align:center;position:relative;overflow:hidden;}
.sbms{position:absolute;top:0;left:0;right:0;height:220px;pointer-events:none;overflow:hidden;}
.sbm{position:absolute;top:0;transform-origin:top;background:linear-gradient(180deg,rgba(14,165,201,.055) 0%,transparent 100%);animation:bs ease-in-out infinite;}
.sbm1{left:6%;width:56px;height:200px;animation-duration:9s;}.sbm2{left:33%;width:75px;height:240px;animation-duration:11s;animation-delay:1s;}.sbm3{left:62%;width:60px;height:210px;animation-duration:8s;animation-delay:2s;}.sbm4{left:88%;width:48px;height:190px;animation-duration:10s;animation-delay:.5s;}
.bubs{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.coral-el{position:absolute;bottom:0;font-size:2rem;opacity:.08;}
.fish-el{position:absolute;font-size:1.2rem;opacity:.08;animation:fs linear infinite;}
.svi{max-width:1040px;margin:0 auto;position:relative;z-index:2;}
.srv-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:14px;}
.srv-top3{grid-template-columns:repeat(3,1fr)!important;}
.srv-bot{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.srv{background:var(--card);border:1px solid var(--border);border-radius:var(--rl);padding:24px 20px;text-align:left;transition:transform .3s,background .3s,border-color .3s;position:relative;overflow:hidden;}
.srv::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);}
.srv:hover{transform:translateY(-5px);background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.14);}
.sico{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:14px;}
.si1{background:linear-gradient(135deg,#0EA5C9,#0B7FA0);}.si2{background:linear-gradient(135deg,#F5C800,#C8A200);}.si3{background:linear-gradient(135deg,#E85D9A,#C2185B);}.si4{background:linear-gradient(135deg,#1DB96A,#158A50);}.si5{background:linear-gradient(135deg,#8B5CF6,#6D28D9);}.si6{background:linear-gradient(135deg,#F97316,#C2410C);}.si7{background:linear-gradient(135deg,#0EA5C9,#1DB96A);}.si8{background:linear-gradient(135deg,#7C3AED,#4F46E5);}
.srv h3{font-family:'Fraunces',serif;font-size:.975rem;font-weight:700;margin-bottom:7px;color:#fff;}
.srv-sm h3{font-size:.88rem;}
.srv-sm p{font-size:.78rem;}
.srv-sm .sico{width:38px;height:38px;font-size:1.1rem;}
.srv p{font-size:.82rem;color:var(--t2);line-height:1.65;font-weight:500;}

/* ── PROCESS (interactive timeline) ─────── */
.process{background:linear-gradient(180deg,#010E1B 0%,#021528 100%);padding:var(--sp);text-align:center;}
.proc-steps{display:flex;flex-direction:column;gap:0;max-width:680px;margin:0 auto;position:relative;}
.proc-steps::before{content:'';position:absolute;left:28px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,rgba(245,197,24,.3),rgba(245,197,24,.05));border-radius:1px;}
.ps{display:flex;gap:24px;align-items:flex-start;padding:0 0 40px 0;position:relative;cursor:pointer;}
.ps:last-child{padding-bottom:0;}
.ps-num{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-size:1.3rem;font-weight:900;color:#fff;border:2px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);flex-shrink:0;transition:background .3s,border-color .3s,transform .3s;position:relative;z-index:1;}
.ps.active .ps-num{background:var(--duck);border-color:var(--duck);color:var(--duck-on);transform:scale(1.1);}
.ps-body{text-align:left;padding-top:12px;}
.ps-title{font-weight:800;font-size:1rem;color:#fff;margin-bottom:0;transition:color .3s;}
.ps.active .ps-title{color:var(--duck);}
.ps-desc{font-size:.875rem;color:var(--t2);line-height:1.7;font-weight:500;max-height:0;overflow:hidden;transition:max-height .5s ease,margin-top .3s;margin-top:0;}
.ps.active .ps-desc{max-height:200px;margin-top:8px;}
.ps-icon{font-size:1.3rem;margin-right:8px;}

/* ── PORTFOLIO ───────────────────────────── */
.portfolio{background:linear-gradient(180deg,#021528 0%,#031E36 100%);padding:var(--sp);text-align:center;position:relative;overflow:hidden;}
.port-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1040px;margin:0 auto;}
.port-card{border-radius:var(--rl);overflow:hidden;background:var(--card);border:1px solid var(--border);transition:transform .3s,border-color .3s;display:flex;flex-direction:column;}
.port-card:hover{transform:translateY(-6px);border-color:rgba(255,255,255,.22);}
.port-thumb{width:100%;height:140px;display:flex;align-items:center;justify-content:center;font-size:2.8rem;flex-shrink:0;position:relative;overflow:hidden;}
.imac-mock{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;padding:10px 18px 4px;box-sizing:border-box;}
.imac-display{width:100%;flex:1;border:3px solid rgba(255,255,255,.18);border-bottom:8px solid rgba(255,255,255,.12);border-radius:6px 6px 2px 2px;overflow:hidden;background:#0d0d0d;}
.imac-stand{width:22%;height:10px;background:rgba(255,255,255,.1);border-radius:0 0 3px 3px;}
.imac-base{width:40%;height:3px;background:rgba(255,255,255,.07);border-radius:0 0 2px 2px;}
.imac-img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}
.pt-1{background:linear-gradient(135deg,#FF6B35,#F7931E);}
.pt-3{background:linear-gradient(135deg,#134e5e,#71b280);}
.pt-4{background:linear-gradient(135deg,#2D1B69,#9C27B0);}
.pt-5{background:linear-gradient(135deg,#0EA5C9,#0B7FA0);}
.pt-6{background:linear-gradient(135deg,#1a1a2e,#0f3460);}
.pt-7{background:linear-gradient(135deg,#F5C800,#FF6B35);}
.pt-sd{background:linear-gradient(135deg,#06182E,#0a2f5a);}
.pt-sd{background:linear-gradient(135deg,#1DB96A,#0EA5C9);}
.port-info{padding:18px 18px 16px;text-align:left;flex:1;display:flex;flex-direction:column;}
.port-cat{font-size:.68rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--duck);margin-bottom:5px;}
.port-title{font-family:'Fraunces',serif;font-size:1rem;font-weight:700;color:#fff;margin-bottom:6px;}
.port-desc{font-size:.8rem;color:var(--t2);font-weight:500;line-height:1.55;margin-bottom:12px;flex:1;}
.port-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:12px;}
.port-tag{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:100px;padding:2px 9px;font-size:.68rem;font-weight:600;color:rgba(255,255,255,.55);}
.port-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.07);padding-top:10px;margin-top:auto;}
.port-domain{font-size:.72rem;color:var(--t3);font-weight:600;}
.port-link{font-size:.72rem;font-weight:700;color:var(--duck);text-decoration:none;display:inline-flex;align-items:center;gap:4px;transition:opacity .2s;}
.port-link:hover{opacity:.75;}
.port-note{font-size:.78rem;color:var(--t3);margin-top:24px;font-style:italic;}

/* ── TESTIMONIALS ────────────────────────── */
.testimonials{background:linear-gradient(180deg,#031E36 0%,#052D45 100%);padding:var(--sp);text-align:center;}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1000px;margin:0 auto;}
.tcard{background:var(--card);border:1px solid var(--border);border-radius:var(--rl);padding:28px 24px;text-align:left;transition:transform .2s;position:relative;}
.tcard:hover{transform:translateY(-4px);}
.tcard::before{content:'"';font-family:'Fraunces',serif;font-size:5rem;color:var(--duck);opacity:.15;position:absolute;top:-10px;left:18px;line-height:1;}
.tcard-text{font-size:.9rem;color:var(--t2);line-height:1.75;font-weight:500;margin-bottom:20px;font-style:italic;}
.tcard-author{display:flex;align-items:center;gap:10px;}
.tcard-av{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;}
.av1{background:linear-gradient(135deg,#FF6B35,#F7931E);}
.av2{background:linear-gradient(135deg,#0EA5C9,#0B7FA0);}
.av3{background:linear-gradient(135deg,#1DB96A,#158A50);}
.tcard-name{font-weight:800;font-size:.875rem;color:#fff;}
.tcard-company{font-size:.76rem;color:var(--t3);font-weight:500;}
.tcard-stars{color:var(--duck);font-size:.85rem;margin-bottom:12px;}

/* ── PRICE CALCULATOR ────────────────────── */
.calculator{background:linear-gradient(180deg,#052D45 0%,#031E36 100%);padding:var(--sp);}
.calc-wrap{max-width:780px;margin:0 auto;}
.calc-intro{text-align:center;margin-bottom:40px;}
.calc-box{background:var(--card);border:1px solid var(--border);border-radius:var(--rl);padding:32px;}
.calc-section{margin-bottom:28px;}
.calc-label{font-weight:700;font-size:.85rem;color:#fff;margin-bottom:12px;display:block;}
.calc-options{display:flex;flex-wrap:wrap;gap:8px;}
.calc-opt{background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.1);border-radius:100px;padding:7px 16px;font-size:.82rem;font-weight:600;color:var(--t2);cursor:pointer;transition:all .2s;user-select:none;}
.calc-opt.sel{background:rgba(245,197,24,.12);border-color:rgba(245,197,24,.5);color:var(--duck);}
.calc-opt:hover:not(.sel){border-color:rgba(255,255,255,.25);color:#fff;}
.calc-divider{width:100%;height:1px;background:var(--border);margin:24px 0;}
.calc-result{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
.calc-price-wrap{}
.calc-price-label{font-size:.75rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--t3);margin-bottom:4px;}
.calc-price{font-family:'Fraunces',serif;font-size:2.4rem;font-weight:900;color:var(--duck);line-height:1;}
.calc-price-sub{font-size:.78rem;color:var(--t3);font-weight:500;margin-top:4px;}
.calc-cta-btn{background:var(--duck);color:var(--duck-on);padding:13px 28px;border-radius:100px;font-weight:700;font-size:.95rem;text-decoration:none;transition:transform .2s,box-shadow .3s;white-space:nowrap;}
.calc-cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(245,197,24,.28);}
.calc-note{font-size:.75rem;color:var(--t3);margin-top:14px;line-height:1.6;}

/* ── FESTPREIS-PAKETE ────────────────────── */
.festpreis{background:linear-gradient(180deg,#031E36 0%,#052D45 50%,#031E36 100%);padding:var(--sp);text-align:center;position:relative;overflow:hidden;}
.fp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:960px;margin:0 auto;position:relative;z-index:1;}
.fp{background:var(--card);border:1px solid var(--border);border-radius:var(--rl);padding:30px 24px;text-align:left;transition:transform .3s,border-color .3s;position:relative;}
.fp:hover{transform:translateY(-5px);border-color:rgba(255,255,255,.22);}
.fp.fp-hot{background:rgba(245,197,24,.07);border-color:rgba(245,197,24,.28);}
.fp.fp-hot:hover{border-color:rgba(245,197,24,.5);}
.fp-star{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--duck);color:var(--duck-on);font-size:.7rem;font-weight:800;padding:4px 16px;border-radius:100px;white-space:nowrap;}
.fp-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:14px;}
.fp-i1{background:linear-gradient(135deg,#1DB96A,#158A50);}
.fp-i2{background:linear-gradient(135deg,#F5C800,#C8A200);}
.fp-i3{background:linear-gradient(135deg,#0EA5C9,#0B7FA0);}
.fp-name{font-family:'Fraunces',serif;font-size:1.05rem;font-weight:700;color:#fff;margin-bottom:6px;}
.fp-price{font-family:'Fraunces',serif;font-size:2.6rem;font-weight:900;line-height:1;}
.fp-price-green{color:var(--green);}
.fp-price-duck{color:var(--duck);}
.fp-price-blue{color:var(--blue);}
.fp-price span{font-size:.85rem;font-family:'Plus Jakarta Sans',sans-serif;font-weight:500;opacity:.38;}
.fp-desc{font-size:.82rem;color:rgba(255,255,255,.38);font-weight:500;margin:7px 0 20px;}
.fp-list{list-style:none;}
.fp-list li{display:flex;align-items:flex-start;gap:9px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.84rem;color:var(--t2);font-weight:500;line-height:1.4;}
.fp-list li:last-child{border:none;}
.fp-check{flex-shrink:0;font-weight:700;}
.fp-check-green{color:var(--green);}
.fp-check-duck{color:var(--duck);}
.fp-check-blue{color:var(--blue);}
.fp-meta{display:flex;align-items:center;gap:8px;font-size:.76rem;color:var(--t3);font-weight:500;padding-top:14px;border-top:1px solid rgba(255,255,255,.06);margin:18px 0 0;}
.fp-btn{display:block;width:100%;margin-top:18px;text-align:center;padding:13px;border-radius:100px;text-decoration:none;font-weight:700;font-size:.88rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:var(--t2);transition:background .2s;}
.fp-btn:hover{background:rgba(255,255,255,.14);}
.fp.fp-hot .fp-btn{background:var(--duck);color:var(--duck-on);border-color:var(--duck);box-shadow:0 6px 20px rgba(245,197,24,.2);}
.fp.fp-hot .fp-btn:hover{box-shadow:0 10px 32px rgba(245,197,24,.3);}
.fp-kombi{max-width:960px;margin:20px auto 0;background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:16px 24px;font-size:.88rem;color:var(--t2);font-weight:500;position:relative;z-index:1;}
.fp-kombi strong{color:var(--duck);font-weight:700;}

/* ── PACKAGES ────────────────────────────── */
.packages{background:linear-gradient(180deg,#031E36 0%,#021528 100%);padding:var(--sp);text-align:center;position:relative;overflow:hidden;}
.glow{position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none;}
.g1{width:400px;height:400px;background:rgba(14,165,201,.05);top:-80px;left:-80px;}
.g2{width:350px;height:350px;background:rgba(29,185,106,.04);bottom:-60px;right:-60px;}
.pkg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1200px;margin:0 auto;position:relative;z-index:1;}
.pkg{background:var(--card);border:1px solid var(--border);border-radius:var(--rl);padding:30px 24px;text-align:left;transition:transform .3s,border-color .3s;position:relative;}
.pkg-icon{font-size:2.2rem;margin-bottom:12px;line-height:1;}
.pkg:hover{transform:translateY(-5px);}
.pkg.hot{background:rgba(245,197,24,.07);border-color:rgba(245,197,24,.28);}
.pkg.hot:hover{border-color:rgba(245,197,24,.5);}
.pkg-star{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--duck);color:var(--duck-on);font-size:.7rem;font-weight:800;padding:4px 16px;border-radius:100px;white-space:nowrap;}
.pkg-tier{font-size:.7rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.38);margin-bottom:8px;}
.pkg-price{font-family:'Fraunces',serif;font-size:2.6rem;font-weight:900;color:#fff;line-height:1;}
.pkg-price span{font-size:.85rem;font-family:'Plus Jakarta Sans',sans-serif;font-weight:500;opacity:.38;}
.pkg.hot .pkg-price{color:var(--duck);}
.pkg-desc{font-size:.82rem;color:rgba(255,255,255,.38);font-weight:500;margin:7px 0 20px;}
.pkg-list{list-style:none;}
.pkg-list li{display:flex;align-items:flex-start;gap:9px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.84rem;color:var(--t2);font-weight:500;line-height:1.4;}
.pkg-list li:last-child{border:none;}
.ly{color:var(--green);flex-shrink:0;font-weight:700;}
.ln{color:rgba(255,255,255,.18);flex-shrink:0;}
.pkg-btn{display:block;width:100%;margin-top:22px;text-align:center;padding:13px;border-radius:100px;text-decoration:none;font-weight:700;font-size:.88rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:var(--t2);transition:background .2s;}
.pkg-btn:hover{background:rgba(255,255,255,.14);}
.pkg.hot .pkg-btn{background:var(--duck);color:var(--duck-on);border-color:var(--duck);box-shadow:0 6px 20px rgba(245,197,24,.2);}
.pkg.hot .pkg-btn:hover{box-shadow:0 10px 32px rgba(245,197,24,.3);}
.pkg-note{margin-top:20px;font-size:.74rem;color:rgba(255,255,255,.2);font-weight:500;position:relative;z-index:1;}

/* ── FAQ ─────────────────────────────────── */
.faq{background:linear-gradient(180deg,#010E1B 0%,#031E36 100%);padding:var(--sp);}
.faq-wrap{max-width:720px;margin:0 auto;}
.faq-intro{text-align:center;margin-bottom:48px;}
.faq-list{display:flex;flex-direction:column;gap:12px;}
.faq-item{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:16px;
  overflow:hidden;
  transition:border-color .2s,background .2s;
}
.faq-item:hover{background:rgba(255,255,255,0.06);border-color:rgba(255,255,255,0.14);}
.faq-item.open{background:rgba(255,255,255,0.06);border-color:rgba(245,197,24,0.3);}
.faq-q{
  width:100%;background:none;border:none;
  color:#fff;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:1rem;font-weight:700;
  padding:20px 24px;
  display:flex;justify-content:space-between;align-items:center;
  cursor:pointer;text-align:left;gap:16px;
  transition:color .2s;
}
.faq-q:hover{color:var(--duck);}
.faq-item.open .faq-q{color:var(--duck);}
.faq-q .faq-icon{
  width:28px;height:28px;flex-shrink:0;
  background:rgba(245,197,24,0.12);
  border:1px solid rgba(245,197,24,0.25);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:1rem;color:var(--duck);
  transition:transform .3s,background .2s;
}
.faq-item.open .faq-icon{transform:rotate(45deg);background:rgba(245,197,24,0.2);}
.faq-a{
  font-size:.9375rem;color:rgba(255,255,255,.7);
  line-height:1.8;font-weight:400;
  max-height:0;overflow:hidden;
  padding:0 24px;
  transition:max-height .4s ease,padding .3s;
}
.faq-item.open .faq-a{max-height:400px;padding:0 24px 20px;}

/* ── BLOG ────────────────────────────────── */
section.blog{background:linear-gradient(180deg,#031E36 0%,#010E1B 100%);padding:var(--sp);text-align:center;}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1000px;margin:0 auto 32px;}
.blog-card{background:var(--card);border:1px solid var(--border);border-radius:var(--rl);overflow:hidden;text-align:left;transition:transform .3s,border-color .3s;text-decoration:none;display:block;}
.blog-card:hover{transform:translateY(-5px);border-color:rgba(255,255,255,.18);}
.blog-thumb{height:140px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;}
.bt1{background:linear-gradient(135deg,#0EA5C9,#031E36);}
.bt2{background:linear-gradient(135deg,#F5C800,#C8A200);}
.bt3{background:linear-gradient(135deg,#1DB96A,#031E36);}
.blog-body{padding:18px;}
.blog-tag{font-size:.68rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--duck);margin-bottom:7px;}
.blog-title{font-family:'Fraunces',serif;font-size:.975rem;font-weight:700;color:#fff;margin-bottom:7px;line-height:1.3;}
.blog-meta{font-size:.76rem;color:var(--t3);font-weight:500;}
.blog-cta{display:inline-flex;align-items:center;gap:6px;border:1.5px solid rgba(255,255,255,.2);border-radius:100px;padding:10px 22px;color:var(--t2);font-weight:600;font-size:.875rem;text-decoration:none;transition:border-color .2s,color .2s;}
.blog-cta:hover{border-color:var(--duck);color:var(--duck);}

/* ── CONTACT FORM ────────────────────────── */
.contact{background:linear-gradient(180deg,#010E1B 0%,#021528 100%);padding:var(--sp);}
.contact-wrap{max-width:680px;margin:0 auto;}
.contact-intro{text-align:center;margin-bottom:40px;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.fg{display:flex;flex-direction:column;gap:6px;}
.fg.full{grid-column:1/-1;}
label{font-size:.82rem;font-weight:700;color:rgba(255,255,255,.7);letter-spacing:.3px;}
input,textarea,select{background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.12);border-radius:var(--r);padding:13px 16px;color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-size:.95rem;font-weight:500;width:100%;transition:border-color .2s,background .2s;-webkit-appearance:none;}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--duck);background:rgba(255,255,255,.1);}
input::placeholder,textarea::placeholder{color:var(--t3);}
select option{background:#021528;color:#fff;}
textarea{resize:vertical;min-height:120px;}
.form-submit{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:8px;}
.form-btn{background:var(--duck);color:var(--duck-on);border:none;padding:15px 48px;border-radius:100px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1rem;cursor:pointer;transition:transform .2s,box-shadow .3s;width:100%;max-width:280px;}
.form-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(245,197,24,.28);}
.form-note{font-size:.76rem;color:var(--t3);text-align:center;}
.form-success{display:none;background:rgba(29,185,106,.1);border:1px solid rgba(29,185,106,.3);border-radius:var(--rl);padding:24px;text-align:center;margin-top:16px;}
.form-success .fs-em{font-size:2.5rem;display:block;margin-bottom:10px;}
.form-success h3{font-family:'Fraunces',serif;font-size:1.3rem;color:#fff;margin-bottom:6px;}
.form-success p{font-size:.9rem;color:var(--t2);}

/* ── CTA ─────────────────────────────────── */
.cta{background:linear-gradient(180deg,#0A6680 0%,#3A9EC2 35%,#74C6E8 58%,#FFB347 80%,#FFD97D 100%);padding:clamp(90px,12vw,150px) 24px clamp(72px,10vw,110px);text-align:center;position:relative;overflow:hidden;}
.cta-sun{position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,#FFF176 15%,#FFE000 50%,transparent 72%);box-shadow:0 0 70px 36px rgba(255,210,0,.35),0 0 160px 80px rgba(255,180,0,.18);animation:sun-p 5s ease-in-out infinite;}
.cta-i{position:relative;z-index:2;}
.cta h2{font-family:'Fraunces',serif;font-size:clamp(2.2rem,6vw,4.2rem);font-weight:900;color:#fff;line-height:1.05;text-shadow:0 4px 40px rgba(0,60,120,.2);margin-bottom:14px;}
.cta h2 em{font-style:italic;}
.cta p{font-size:1rem;color:rgba(255,255,255,.88);max-width:400px;margin:0 auto 32px;line-height:1.75;font-weight:500;}

/* ── FOOTER ──────────────────────────────── */
footer{background:#010508;padding:22px clamp(20px,4vw,52px);display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;}
.fb{font-family:'Fraunces',serif;font-size:1.1rem;font-weight:700;color:var(--duck);display:flex;align-items:center;gap:8px;}
footer small{color:rgba(255,255,255,.28);font-size:.75rem;font-weight:500;line-height:1.6;}
.imp-link{color:rgba(255,255,255,.4);text-decoration:none;font-size:.75rem;font-weight:600;border-bottom:1px solid rgba(255,255,255,.15);transition:color .2s;}
.imp-link:hover{color:rgba(255,255,255,.7);}

/* ── ABOUT ───────────────────────────────── */
.about{background:linear-gradient(180deg,#010E1B 0%,#021528 100%);padding:var(--sp);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:start;max-width:900px;margin:0 auto;}
.at .eye,.at .sh{text-align:left;}.at .sh{margin-bottom:18px;}.at .sh em{color:var(--duck);}
.at p{font-size:.975rem;color:var(--t2);line-height:1.85;font-weight:500;margin-bottom:14px;}.at p strong{color:#fff;}
.at p:last-of-type{margin-bottom:24px;}
.ac{background:var(--card);border:1px solid var(--border);border-radius:var(--rl);padding:30px 26px;position:relative;overflow:hidden;}
.ac::after{content:'';position:absolute;right:-8px;bottom:-8px;font-size:5rem;opacity:.06;}
.ac-name{font-family:'Fraunces',serif;font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:3px;}
.ac-role{font-size:.82rem;color:var(--duck);font-weight:700;margin-bottom:18px;line-height:1.4;}
.ac-list{display:flex;flex-direction:column;gap:10px;margin-bottom:18px;}
.ac-item{display:flex;align-items:flex-start;gap:10px;font-size:.85rem;color:var(--t2);font-weight:600;line-height:1.4;}
.ac-dot{width:6px;height:6px;border-radius:50%;background:var(--duck);flex-shrink:0;margin-top:5px;}
.ac-line{width:100%;height:1px;background:var(--border);margin:16px 0;}
.certs{display:flex;flex-wrap:wrap;gap:7px;}
.cert{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:100px;padding:3px 11px;font-size:.71rem;font-weight:700;color:rgba(255,255,255,.55);}

/* ── WHY ─────────────────────────────────── */
.why{background:linear-gradient(180deg,#031E36 0%,#063A55 60%,#0A6680 100%);padding:var(--sp);text-align:center;}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:860px;margin:0 auto;}
.wi{background:var(--card);border:1px solid var(--border);border-radius:var(--rl);padding:24px 20px;text-align:left;transition:transform .2s,border-color .2s;}
.wi:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.18);}
.wi-em{font-size:1.6rem;display:block;margin-bottom:10px;}
.wi-t{font-weight:800;font-size:.875rem;color:#fff;margin-bottom:5px;}
.wi-d{font-size:.8rem;color:var(--t2);line-height:1.6;font-weight:500;}

/* ── ACCESSIBILITY WIDGET ────────────────── */
.a11y-btn{
  position:fixed;bottom:84px;right:20px;z-index:400;
  width:48px;height:48px;border-radius:50%;
  background:rgba(13,33,55,.95);border:1.5px solid rgba(255,255,255,.2);
  color:rgba(255,255,255,.85);font-size:1.25rem;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s,border-color .2s,transform .2s;
  box-shadow:0 4px 20px rgba(0,0,0,.5);
}
.a11y-btn:hover{background:rgba(30,55,85,.95);border-color:rgba(255,255,255,.4);transform:scale(1.08);}
.a11y-panel{
  position:fixed;bottom:144px;right:20px;z-index:400;
  background:#0D2137;border:1px solid rgba(255,255,255,.15);
  border-radius:20px;padding:22px 20px;width:240px;
  box-shadow:0 16px 48px rgba(0,0,0,.6);
  opacity:0;pointer-events:none;
  transform:translateY(10px) scale(.97);
  transition:opacity .25s ease,transform .25s ease;
}
.a11y-panel.open{opacity:1;pointer-events:all;transform:translateY(0) scale(1);}
.a11y-panel-title{font-size:.72rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--duck);margin-bottom:16px;}
.a11y-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:8px;}
.a11y-row:last-child{margin-bottom:0;}
.a11y-label{font-size:.82rem;font-weight:600;color:rgba(255,255,255,.8);flex:1;}
.a11y-controls{display:flex;gap:5px;flex-shrink:0;}
.a11y-ctrl{
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);
  color:#fff;width:30px;height:30px;border-radius:8px;
  font-size:.8rem;font-weight:700;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s;
  font-family:'Plus Jakarta Sans',sans-serif;
}
.a11y-ctrl:hover{background:rgba(255,255,255,.2);}
.a11y-ctrl.a-active{background:rgba(245,197,24,.2);border-color:rgba(245,197,24,.5);color:var(--duck);}
.a11y-sw{
  width:46px;height:26px;border-radius:100px;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);
  cursor:pointer;position:relative;transition:background .3s,border-color .3s;
  flex-shrink:0;
}
.a11y-sw.on{background:var(--green);border-color:var(--green);}
.a11y-sw::after{
  content:'';position:absolute;top:4px;left:4px;
  width:16px;height:16px;border-radius:50%;background:#fff;
  transition:transform .3s;
  box-shadow:0 1px 4px rgba(0,0,0,.3);
}
.a11y-sw.on::after{transform:translateX(20px);}
.a11y-reset{
  display:block;width:100%;margin-top:14px;padding:8px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  border-radius:100px;color:rgba(255,255,255,.55);
  font-family:'Plus Jakarta Sans',sans-serif;font-size:.75rem;
  font-weight:600;cursor:pointer;transition:background .2s;
}
.a11y-reset:hover{background:rgba(255,255,255,.12);color:#fff;}
.a11y-divider{width:100%;height:1px;background:rgba(255,255,255,.08);margin:12px 0;}

/* Font size classes applied to body */
body.fs-1{font-size:17px!important;}
body.fs-2{font-size:19px!important;}
body.fs-3{font-size:21px!important;}

/* High contrast – applied via CSS variable override, not filter on body */
body.hc-on{
  --t2:rgba(255,255,255,.95);
  --t3:rgba(255,255,255,.75);
  --card:rgba(255,255,255,.1);
  --border:rgba(255,255,255,.25);
}
body.hc-on .srv,body.hc-on .pkg,body.hc-on .fp,body.hc-on .wi,body.hc-on .tcard,
body.hc-on .port-card,body.hc-on .sc,body.hc-on .ac,
body.hc-on .faq-item,body.hc-on .calc-box{
  background:rgba(255,255,255,.1)!important;
  border-color:rgba(255,255,255,.3)!important;
}
body.hc-on h1,body.hc-on h2,body.hc-on h3,
body.hc-on .ht,body.hc-on .sh,body.hc-on .sc-h,
body.hc-on .port-title,body.hc-on .ac-name{
  text-shadow:0 0 12px rgba(255,255,255,.3);
}

/* Focus highlight */
body.focus-on :focus-visible{
  outline:4px solid #FFD700!important;
  outline-offset:6px!important;
  border-radius:4px!important;
}

/* Readable font – overrides Fraunces and Jakarta */
body.rf-on,
body.rf-on *{
  font-family:Arial,Helvetica,sans-serif!important;
}
body.rf-on h1,body.rf-on h2,body.rf-on h3,
body.rf-on .ht,body.rf-on .sh,body.rf-on .sc-h,
body.rf-on .port-title,body.rf-on .ac-name,
body.rf-on .fb,body.rf-on .logo,body.rf-on .sq{
  font-family:Georgia,'Times New Roman',serif!important;
  font-style:normal!important;
  letter-spacing:normal!important;
}

/* ── WHATSAPP BUTTON ─────────────────────── */
.wa-btn{
  position:fixed;bottom:20px;left:20px;z-index:400;
  width:52px;height:52px;border-radius:50%;
  background:#25D366;
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;font-size:1.6rem;
  box-shadow:0 4px 20px rgba(37,211,102,.4);
  transition:transform .2s,box-shadow .3s;
}
.wa-btn:hover{transform:scale(1.1);box-shadow:0 8px 32px rgba(37,211,102,.5);}
.wa-label{
  position:absolute;left:60px;
  background:#0D2137;color:#fff;
  font-size:.75rem;font-weight:700;
  padding:6px 12px;border-radius:100px;
  white-space:nowrap;opacity:0;pointer-events:none;
  transition:opacity .2s;border:1px solid var(--border);
}
.wa-btn:hover .wa-label{opacity:1;}

/* ── AVAILABILITY BANNER ─────────────────── */
.avail-bar{
  position:fixed;
  top:50%;right:20px;transform:translateY(-50%);
  z-index:600;
  width:220px;
  background:#0f2b10;
  border:1px solid rgba(109,255,138,.25);
  border-radius:16px;
  padding:16px;
  box-shadow:0 8px 32px rgba(0,0,0,.45), 0 0 0 1px rgba(109,255,138,.08);
  display:flex;flex-direction:column;gap:10px;
  animation:avail-in .4s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes avail-in{
  from{opacity:0;transform:translateY(calc(-50% + 20px)) scale(.92);}
  to{opacity:1;transform:translateY(-50%) scale(1);}
}
.avail-bar.hidden{display:none;}
.avail-header{display:flex;align-items:center;gap:8px;}
.avail-dot{
  width:9px;height:9px;border-radius:50%;
  background:#6dff8a;flex-shrink:0;
  box-shadow:0 0 0 0 rgba(109,255,138,.5);
  animation:pulse-dot 2s ease-in-out infinite;
}
@keyframes pulse-dot{
  0%,100%{box-shadow:0 0 0 0 rgba(109,255,138,.5);}
  50%{box-shadow:0 0 0 5px rgba(109,255,138,0);}
}
.avail-label{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6dff8a;}
.avail-close{
  margin-left:auto;background:none;border:none;cursor:pointer;
  color:rgba(255,255,255,.35);font-size:13px;
  padding:0;line-height:1;transition:color .2s;
}
.avail-close:hover{color:rgba(255,255,255,.8);}
.avail-text{font-size:.82rem;color:rgba(255,255,255,.85);line-height:1.5;}
.avail-text strong{color:#fff;font-weight:700;}
.avail-cta{
  display:block;text-align:center;
  font-size:.8rem;font-weight:700;
  color:#0f2b10;text-decoration:none;
  background:#6dff8a;
  border-radius:999px;
  padding:7px 14px;
  transition:background .2s,transform .15s;
}
.avail-cta:hover{background:#8fffaa;transform:translateY(-1px);}
@media(max-width:480px){
  .avail-bar{bottom:80px;right:12px;left:12px;width:auto;}
}

/* ── COOKIE BANNER ───────────────────────── */
.cookie-bar{
  position:fixed;bottom:0;left:0;right:0;z-index:500;
  background:#0D2137;border-top:1px solid var(--border);
  padding:16px clamp(20px,4vw,56px);
  display:flex;align-items:center;justify-content:space-between;
  gap:20px;flex-wrap:wrap;
  transform:translateY(0);transition:transform .4s ease;
}
.cookie-bar.hidden{transform:translateY(110%);}
.cookie-text{font-size:.82rem;color:var(--t2);font-weight:500;line-height:1.6;flex:1;min-width:200px;}
.cookie-text a{color:var(--duck);text-decoration:none;border-bottom:1px solid rgba(245,197,24,.3);}
.cookie-btns{display:flex;gap:10px;flex-shrink:0;}
.cookie-accept{background:var(--duck);color:var(--duck-on);border:none;padding:9px 20px;border-radius:100px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:.82rem;cursor:pointer;transition:transform .2s;}
.cookie-accept:hover{transform:translateY(-1px);}
.cookie-decline{background:rgba(255,255,255,.07);color:var(--t2);border:1px solid rgba(255,255,255,.12);padding:9px 20px;border-radius:100px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:.82rem;cursor:pointer;transition:background .2s;}
.cookie-decline:hover{background:rgba(255,255,255,.14);}

/* Cookie-Bar: explizite Farb-Overrides */
.cookie-bar{background:#0D2137;border-top:1px solid rgba(255,255,255,.1);}
.cookie-accept{background:var(--duck);color:#031E36;}
.cookie-decline{background:rgba(255,255,255,.08);color:rgba(255,255,255,.7);}

/* ── KEYFRAMES ───────────────────────────── */
@keyframes bob  {0%,100%{transform:translateY(0);}50%{transform:translateY(-6px);}}
@keyframes sun-p{0%,100%{transform:translateX(-50%) scale(1);}50%{transform:translateX(-50%) scale(1.07);}}
@keyframes fly  {0%{left:-50px;opacity:0;}5%{opacity:.6;}90%{opacity:.6;}100%{left:110%;opacity:0;}}
@keyframes wv   {0%,100%{transform:translateX(0);}50%{transform:translateX(-4%);}}
@keyframes cam  {0%,100%{transform:translateX(0);}50%{transform:translateX(14px) scaleX(1.06);}}
@keyframes bs   {0%,100%{transform:skewX(-6deg);}50%{transform:skewX(6deg);}}
@keyframes br   {0%{transform:translateY(0);opacity:.3;}100%{transform:translateY(-100vh);opacity:0;}}
@keyframes fs   {0%{left:-50px;}100%{left:110%;}}

/* ── RESPONSIVE ──────────────────────────── */
@media(max-width:900px){
  .srv-top3{grid-template-columns:repeat(3,1fr)!important;}
  .srv-grid{grid-template-columns:repeat(2,1fr);}
  .srv-bot{grid-template-columns:repeat(2,1fr);}
  .pkg-grid{grid-template-columns:repeat(2,1fr);}
  .fp-grid{grid-template-columns:1fr;}
  .why-grid{grid-template-columns:repeat(2,1fr);}
  .sg,.about-grid,.testi-grid,.port-grid,.blog-grid{grid-template-columns:1fr;}
  .at .eye,.at .sh{text-align:center;}
  .at{display:flex;flex-direction:column;align-items:center;}
  .at p{text-align:center;}
  .form-grid{grid-template-columns:1fr;}
  .fg.full{grid-column:1;}
}
@media(max-width:600px){
  /* Disable animations on mobile for performance */
  .sun,.wv1,.wv2,.wv3,.plane-el,.ca,.ca1,.ca2,.bm1,.bm2,.bm3,.sbm1,.sbm2,.sbm3,.sbm4,.fish-el,.cta-sun{animation:none!important;}

  .nav-links{display:none;}
  .logo{font-size:1rem;}

  .ncta{padding:9px 14px;font-size:.8rem;}
  .hero{padding-top:90px;}
  h1.ht{font-size:clamp(2.8rem,11vw,3.8rem);}
  .srv-grid,.srv-top3,.srv-bot{grid-template-columns:1fr!important;gap:12px;}
  .why-grid{grid-template-columns:1fr;}
  .pkg-grid,.fp-grid{grid-template-columns:1fr;}
  .testi-grid,.port-grid,.blog-grid{grid-template-columns:1fr;}
  .calc-box{padding:20px 16px;}

  /* Hamburger-Menü */
  .nav-links{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:rgba(1,14,27,.97);backdrop-filter:blur(20px);padding:20px 24px;gap:0;border-bottom:1px solid rgba(255,255,255,.1);}
  .nav-links.mob-open{display:flex;}
  .nl{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:1rem;}
  .nl:last-child{border-bottom:none;}
  .ncta{display:none;}
  .nav-r{gap:8px;}
  .mob-toggle{display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:6px;background:none;border:none;}
  .mob-toggle span{display:block;width:22px;height:2px;background:#fff;border-radius:1px;transition:transform .3s,opacity .3s;}
  .mob-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .mob-toggle.open span:nth-child(2){opacity:0;}
  .mob-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

  /* Kontakt-Link im Mobile-Menü */
  .nl-mob-cta{color:var(--duck)!important;font-weight:700!important;}
  .nl-mob-cta:hover{color:#fff!important;}

  /* Hero-Abstände */
  .hero-inner{padding:0 8px;}
  .hero-chip{font-size:.75rem;padding:6px 14px;}
  h1.ht{font-size:clamp(2rem,9vw,3rem);}
  .hstats{gap:16px;}
  .hero-btns{padding:0 8px;}
  .by,.bw{font-size:.9rem;padding:12px 24px;}

  /* FAQ-Abstände */
  .faq-q{font-size:.9rem;padding:16px 18px;}
  .faq-a{padding:0 18px;}
  .faq-item.open .faq-a{padding:0 18px 16px;}
  .faq-wrap{padding:0;}
}
@media(min-width:601px){
  .mob-toggle{display:none;}
}
@media(min-width:960px){
  .srv-top3{grid-template-columns:repeat(3,1fr)!important;}
  .srv-bot{grid-template-columns:repeat(4,1fr);}
  .pkg-grid{grid-template-columns:repeat(4,1fr);}
  .fp-grid{grid-template-columns:repeat(3,1fr);}
  .why-grid{grid-template-columns:repeat(3,1fr);}
  .testi-grid{grid-template-columns:repeat(3,1fr);}
  .port-grid{grid-template-columns:repeat(3,1fr);}
  .blog-grid{grid-template-columns:repeat(3,1fr);}
}

/* ── WORDPRESS RESETS ────────────────────── */
/* Verhindert, dass WP-Standardstyles das Theme überschreiben */
.wp-block-image img { height: auto; }
h1,h2,h3,h4,h5,h6 { font-weight: inherit; }
p { margin: 0; }
ul, ol { list-style: none; padding: 0; margin: 0; }
a { color: inherit; }

/* ── ELEMENTOR HEADER OVERRIDES ──────────── */

/* Desktop: kompaktere Höhe */
.elementor-location-header .elementor-element-hdrcon1.e-con {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
  min-height: unset !important;
}

/* ── MOBILE NAVIGATION (≤ 767px) ─────────── */
@media(max-width:767px) {

  /* Header-Container: Logo links, Burger rechts */
  .elementor-location-header .elementor-element-hdrcon1.e-con {
    padding: 10px 16px !important;
    min-height: unset !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
  }

  /* Logo-Widget: links, volle Priorität */
  .elementor-element-logocont {
    flex: 0 0 auto !important;
    order: 1 !important;
  }
  .elementor-element-logocont img {
    width: 38px !important;
    height: 38px !important;
  }
  /* Logo-Text kleiner auf Mobile */
  .elementor-element-logocont span[style*="font-size:18px"] {
    font-size: 15px !important;
  }
  .elementor-element-logocont span[style*="font-size:11px"] {
    font-size: 10px !important;
  }

  /* CTA "Projekt starten": auf Mobile ausblenden */
  .elementor-element-ctacont {
    display: none !important;
  }

  /* Nav-Widget: nimmt den Rest, Burger ganz rechts */
  .elementor-element-navcont {
    flex: 1 1 auto !important;
    order: 2 !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
  }

  /* Horizontale Nav-Links im Widget: versteckt */
  .elementor-element-navcont .elementor-nav-menu--main {
    display: none !important;
  }

  /* Burger-Button: schön und prominent */
  .elementor-menu-toggle {
    width: 40px !important;
    height: 40px !important;
    background: rgba(255,255,255,0.08) !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    color: #fff !important;
  }
  .elementor-menu-toggle svg {
    width: 20px !important;
    height: 20px !important;
    fill: #fff !important;
  }

  /* Dropdown-Menü: dunkel, vollbreite, schöne Items */
  .elementor-nav-menu--dropdown {
    position: fixed !important;
    top: 62px !important;
    left: 0 !important;
    right: 0 !important;
    background: rgba(1,14,27,0.97) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    padding: 12px 0 !important;
    z-index: 9999 !important;
  }
  .elementor-nav-menu--dropdown .elementor-nav-menu {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }
  .elementor-nav-menu--dropdown .elementor-item {
    display: block !important;
    padding: 13px 24px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: rgba(255,255,255,0.85) !important;
    border-bottom: 1px solid rgba(255,255,255,0.05) !important;
    text-decoration: none !important;
    transition: color 0.2s, background 0.2s !important;
  }
  .elementor-nav-menu--dropdown .elementor-item:hover,
  .elementor-nav-menu--dropdown .elementor-item-active {
    color: #F5C518 !important;
    background: rgba(245,197,24,0.06) !important;
  }
  .elementor-nav-menu--dropdown .elementor-nav-menu li:last-child .elementor-item {
    border-bottom: none !important;
  }
}

/* ═══════════════════════════════════════════════
   ÜBER MICH PAGE — sd-* Komponenten
   ═══════════════════════════════════════════════ */

/* ── Container ──────────────────────────────── */
.sd-page { color:#e2e8f0; }
.sd-container { max-width:1100px; margin:0 auto; padding:0 clamp(20px,5vw,56px); }
.sd-container--medium { max-width:800px; }

/* ── Hero Section ────────────────────────────── */
.sd-about-hero {
  padding: clamp(60px,8vw,120px) clamp(20px,5vw,56px) clamp(40px,5vw,64px);
  background: linear-gradient(160deg,#031E36 0%,#010E1B 100%);
  border-bottom: 1px solid rgba(255,255,255,.07);
}
.sd-about-hero__grid {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(32px,5vw,80px);
  align-items: center;
}
.sd-hero__eyebrow {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--duck, #F5C518);
  margin: 0 0 14px;
}
.sd-about-hero__title {
  font-family: Fraunces, serif;
  font-size: clamp(2rem,4vw,3.2rem);
  font-weight: 900;
  color: #fff;
  line-height: 1.1;
  margin: 0 0 8px;
}
.sd-about-hero__title-accent {
  color: var(--duck, #F5C518);
  display: block;
}
.sd-about-hero__lead {
  font-size: clamp(1rem,1.5vw,1.125rem);
  color: rgba(255,255,255,.72);
  line-height: 1.7;
  margin: 16px 0 0;
}

/* ── Portrait ────────────────────────────────── */
.sd-about-hero__portrait { position: relative; display: flex; justify-content: center; }
.sd-portrait__wrap {
  position: relative;
  width: clamp(180px,22vw,280px);
  aspect-ratio: 1;
}
.sd-portrait__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  display: block;
  position: relative;
  z-index: 1;
}
.sd-portrait__ring {
  position: absolute;
  inset: -8px;
  border-radius: 50%;
  border: 2px solid rgba(245,197,24,.35);
  z-index: 0;
}

/* ── Content Section ─────────────────────────── */
.sd-section {
  padding: clamp(48px,7vw,96px) clamp(20px,5vw,56px);
  background: #010E1B;
}
.sd-section--content { background: #031E36; }
.sd-section__title {
  font-family: Fraunces, serif;
  font-size: clamp(1.6rem,3vw,2.4rem);
  font-weight: 900;
  color: #fff;
  margin: 0 0 clamp(24px,4vw,48px);
  text-align: center;
}
.sd-content {
  font-size: 1.0625rem;
  color: rgba(255,255,255,.8);
  line-height: 1.75;
  max-width: 700px;
  margin: 0 auto;
}
.sd-content p { margin: 0 0 1.2em; }
.sd-content strong { color: #fff; font-weight: 700; }

/* ── Timeline ────────────────────────────────── */
.sd-section--timeline { background: #010E1B; }
.sd-timeline {
  list-style: none;
  padding: 0;
  margin: 0;
  position: relative;
  max-width: 700px;
  margin: 0 auto;
}
.sd-timeline::before {
  content: '';
  position: absolute;
  left: 20px;
  top: 6px;
  bottom: 6px;
  width: 2px;
  background: linear-gradient(to bottom, rgba(245,197,24,.6) 0%, rgba(245,197,24,.1) 100%);
}
.sd-timeline__item {
  display: flex;
  gap: 24px;
  align-items: flex-start;
  padding: 0 0 40px;
  position: relative;
}
.sd-timeline__item:last-child { padding-bottom: 0; }
.sd-timeline__marker {
  flex-shrink: 0;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #031E36;
  border: 2px solid rgba(245,197,24,.6);
  position: relative;
  z-index: 1;
}
.sd-timeline__marker::after {
  content: '';
  position: absolute;
  inset: 6px;
  border-radius: 50%;
  background: var(--duck, #F5C518);
}
.sd-timeline__body { flex: 1; padding-top: 8px; }
.sd-timeline__year {
  font-family: Fraunces, serif;
  font-size: .9rem;
  font-weight: 700;
  color: var(--duck, #F5C518);
  letter-spacing: .06em;
  display: block;
  margin-bottom: 4px;
}
.sd-timeline__title {
  font-family: Fraunces, serif;
  font-size: 1.2rem;
  font-weight: 700;
  color: #fff;
  margin: 0 0 8px;
}
.sd-timeline__text {
  font-size: .9375rem;
  color: rgba(255,255,255,.68);
  line-height: 1.65;
  margin: 0;
}

/* ── Responsive ──────────────────────────────── */
@media(max-width:768px) {
  .sd-about-hero__grid { grid-template-columns: 1fr; }
  .sd-about-hero__portrait { order: -1; }
  .sd-portrait__wrap { width: clamp(140px,50vw,200px); }
  .sd-timeline::before { left: 16px; }
  .sd-timeline__marker { width: 34px; height: 34px; }
}

/* ═══════════════════════════════════════════════
   WOOCOMMERCE WRAPPER
   ═══════════════════════════════════════════════ */
.sd-woo-main {
  min-height: 60vh;
  background: #010E1B;
  padding: clamp(32px,5vw,64px) clamp(20px,5vw,56px);
}
.sd-woo-container {
  max-width: 1100px;
  margin: 0 auto;
}

/* WooCommerce product page dark theme */
.woocommerce div.product { color: #e2e8f0; }
.woocommerce div.product .product_title {
  font-family: Fraunces, serif;
  font-size: clamp(1.8rem,3vw,2.6rem);
  font-weight: 900;
  color: #fff;
  margin: 0 0 16px;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  font-family: Fraunces, serif;
  font-size: 2rem;
  font-weight: 900;
  color: var(--duck, #F5C518) !important;
}
.woocommerce div.product .woocommerce-product-details__short-description {
  color: rgba(255,255,255,.75);
  line-height: 1.7;
  font-size: 1rem;
  margin-bottom: 24px;
}
.woocommerce div.product form.cart { margin: 24px 0; }
.woocommerce div.product form.cart .single_add_to_cart_button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button {
  background: var(--duck, #F5C518) !important;
  color: #031E36 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  border-radius: 100px !important;
  padding: 14px 32px !important;
  border: none !important;
  transition: opacity .2s !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button:hover,
.woocommerce a.button:hover { opacity: .85 !important; }

/* Product tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs {
  padding: 0;
  border-bottom: 1px solid rgba(255,255,255,.1);
  margin-bottom: 24px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: transparent;
  border: none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  color: rgba(255,255,255,.6);
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 600;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--duck, #F5C518);
}
.woocommerce div.product .woocommerce-tabs .panel {
  color: rgba(255,255,255,.8);
  line-height: 1.7;
  background: transparent;
  padding: 24px 0 0;
}
.woocommerce div.product .woocommerce-tabs .panel h2 { color: #fff; }

/* Breadcrumb */
.woocommerce .woocommerce-breadcrumb {
  color: rgba(255,255,255,.4);
  font-size: .875rem;
  margin-bottom: 24px;
}
.woocommerce .woocommerce-breadcrumb a { color: rgba(255,255,255,.5); text-decoration: none; }
.woocommerce .woocommerce-breadcrumb a:hover { color: var(--duck, #F5C518); }

/* Product meta */
.woocommerce div.product .product_meta { color: rgba(255,255,255,.5); font-size: .875rem; }
.woocommerce div.product .product_meta a { color: rgba(255,255,255,.5); }
.woocommerce div.product .product_meta a:hover { color: var(--duck, #F5C518); }

/* Kein Produktbild: Gallery ausblenden, Summary full-width */
.woocommerce div.product .woocommerce-product-gallery--without-images { display: none !important; }
.woocommerce div.product .summary.entry-summary {
  float: none !important;
  width: 100% !important;
  max-width: 680px;
  clear: both;
}

/* Quantity field dark */
.woocommerce div.product form.cart .quantity input.qty {
  background: rgba(255,255,255,.08) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.2) !important;
  border-radius: 8px !important;
  width: 72px;
  text-align: center;
  font-size: 1rem;
}
.woocommerce div.product form.cart .quantity { margin-right: 12px; }
.woocommerce div.product form.cart { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }

/* Sensei-Duplikat im Beschreibungs-Tab ausblenden */
.woocommerce-Tabs-panel--description .woocommerce.single-product { display: none !important; }
.woocommerce-Tabs-panel--description .woocommerce > .woocommerce-notices-wrapper:first-child + .single-product { display: none !important; }

/* WC Notices dark */
.woocommerce-message, .woocommerce-info {
  background: rgba(245,197,24,.12) !important;
  border-top-color: var(--duck, #F5C518) !important;
  color: #fff !important;
}

/* Related products hidden (single-item course, not needed) */
.related.products { display: none; }
.upsells.products { display: none; }

/* ─────────────────────────────────────────
   Complianz Cookie-Banner — Brand-Override
   Default-Bootstrap-Rot raus, Snorkeling-Duck-Gelb rein
   ───────────────────────────────────────── */
.cmplz-btn.cmplz-accept,
.cmplz-cookiebanner .cmplz-btn.cmplz-accept,
#cmplz-cookiebanner-container .cmplz-btn.cmplz-accept {
    background: #FFC316 !important;
    border: 2px solid #FFC316 !important;
    color: #031E36 !important;
    font-weight: 700 !important;
    border-radius: 999px !important;
    padding: 10px 22px !important;
    transition: opacity .2s, transform .2s !important;
}
.cmplz-btn.cmplz-accept:hover,
.cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover {
    background: #F5C800 !important;
    border-color: #F5C800 !important;
    color: #031E36 !important;
    transform: translateY(-1px) !important;
}

.cmplz-btn.cmplz-deny,
.cmplz-cookiebanner .cmplz-btn.cmplz-deny,
#cmplz-cookiebanner-container .cmplz-btn.cmplz-deny {
    background: transparent !important;
    border: 2px solid #FFC316 !important;
    color: #FFC316 !important;
    font-weight: 700 !important;
    border-radius: 999px !important;
    padding: 10px 22px !important;
    transition: background .2s, color .2s !important;
}
.cmplz-btn.cmplz-deny:hover {
    background: rgba(255, 195, 22, 0.12) !important;
    color: #FFC316 !important;
}

.cmplz-btn.cmplz-view-preferences,
.cmplz-btn.cmplz-save-preferences,
.cmplz-btn.cmplz-manage-options,
.cmplz-btn.cmplz-manage-consent {
    background: transparent !important;
    border: 2px solid rgba(255, 195, 22, 0.4) !important;
    color: #FFC316 !important;
    font-weight: 600 !important;
    border-radius: 999px !important;
    padding: 8px 18px !important;
}
.cmplz-btn.cmplz-view-preferences:hover,
.cmplz-btn.cmplz-save-preferences:hover {
    background: rgba(255, 195, 22, 0.08) !important;
    border-color: #FFC316 !important;
}

/* Banner-Container Hintergrund (falls auch rot/auffällig) */
.cmplz-cookiebanner.banner-1 {
    background: #031E36 !important;
    color: #fff !important;
    border: 1px solid rgba(255, 195, 22, 0.25) !important;
    border-radius: 14px !important;
}
.cmplz-cookiebanner.banner-1 .cmplz-header,
.cmplz-cookiebanner.banner-1 .cmplz-title,
.cmplz-cookiebanner.banner-1 .cmplz-message {
    color: #fff !important;
}
.cmplz-cookiebanner.banner-1 a:not(.cmplz-btn) {
    color: #FFC316 !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}
