/* betűk (fonts.css) */
@font-face{font-family:'Barlow';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/barlow-italic-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/barlow-italic-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/barlow-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/barlow-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/barlow-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/barlow-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/barlow-condensed-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/barlow-condensed-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-condensed-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-condensed-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-condensed-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-condensed-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* CEBA Testőr Akadémia – prototípus. Lekerekítés max. 2px, szűk szekcióritmus, folyamatos nyitókép-mozgás. */
:root{
  --night:#101210; --night-2:#181b17; --night-3:#22261f; --olive:#3c4430; --olive-2:#59633f;
  --paper:#f3f0e8; --card:#fbfaf6; --sand:#e6e0d1; --ink:#141613; --ink-2:#4f544a; --line:#d9d2c2;
  --orange:#ff6a13; --orange-d:#b04000; --muted:#a6ab9c;
  --r:2px; --wrap:1200px; --pad:clamp(16px,4vw,40px);
  --cond:"Barlow Condensed","Arial Narrow",system-ui,sans-serif; --sans:"Barlow",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
h1,h2,h3,h4{font-family:var(--cond);font-weight:700;line-height:1.02;margin:0;text-transform:uppercase;letter-spacing:.01em}
h2{font-size:clamp(34px,4.6vw,56px)}
h3{font-size:26px;letter-spacing:.02em}
p{margin:0 0 14px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font:600 13px/1 var(--cond);letter-spacing:.22em;text-transform:uppercase;color:var(--orange-d);margin:0 0 14px}
.eyebrow::before{content:"";width:22px;height:2px;background:currentColor}
.dark .eyebrow,.hero .eyebrow,.phero .eyebrow{color:var(--orange)}
.lead{font-size:19px;color:var(--ink-2);max-width:62ch}
.dark{background:var(--night);color:#e7e9e1}
.dark .lead,.dark p{color:#b9bdb0}
.olive{background:var(--olive);color:#eef0e6}
section{padding:68px 0}
.tight{padding:54px 0}
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:var(--r);font:600 16px/1 var(--cond);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border:1.5px solid transparent;transition:background .2s,color .2s,border-color .2s;cursor:pointer}
.btn svg{width:18px;height:18px;flex:none}
.btn-or{background:var(--orange);color:#111}
.btn-or:hover{background:#ff8540}
.btn-ghost{background:transparent;border-color:rgba(255,255,255,.75);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.12)}
.btn-line{border-color:var(--ink);color:var(--ink)}
.btn-line:hover{background:var(--ink);color:var(--paper)}
.head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}
.head .lead{margin:0;max-width:48ch}

/* ---------- fejléc ---------- */
.hdr{position:fixed;inset:0 0 auto;z-index:50;transition:background .3s,box-shadow .3s}
.hdr .wrap{display:flex;align-items:center;gap:30px;height:96px;transition:height .3s}
.logo{display:block;height:46px;transition:height .3s;flex:none}
.logo img{height:100%;width:auto}
.nav{display:flex;gap:26px;margin-left:auto;align-items:center}
.nav a{font:600 17px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:#fff;opacity:.88;padding:8px 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a.on{opacity:1;border-color:var(--orange)}
.hdr .btn{padding:12px 18px}
.hdr.solid{background:rgba(16,18,16,.97);box-shadow:0 1px 0 rgba(255,255,255,.06)}
.hdr.solid .wrap{height:72px}
.hdr.solid .logo{height:36px}
.burger{display:none;margin-left:auto;background:none;border:0;padding:8px;color:#fff;cursor:pointer}
.burger svg{width:30px;height:30px}

/* ---------- nyitókép ---------- */
.hero{position:relative;min-height:92vh;min-height:92svh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--night)}
.kb{position:absolute;inset:0;background-size:cover;background-position:center;animation:kb 26s ease-in-out infinite alternate;transform-origin:60% 50%}
@keyframes kb{from{transform:scale(1.02) translate(0,0)}to{transform:scale(1.15) translate(-2%,-1%)}}
.hero::after,.phero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,12,10,.78) 0%,rgba(10,12,10,.42) 48%,rgba(10,12,10,.05) 75%),linear-gradient(180deg,rgba(10,12,10,.6) 0%,rgba(10,12,10,0) 26%,rgba(10,12,10,.15) 55%,rgba(10,12,10,.9) 100%)}
.hero .wrap{position:relative;z-index:2;width:100%;padding-bottom:70px}
.hero h1{font-size:clamp(46px,6.6vw,96px);max-width:11ch;line-height:.92}
.hero h1 small{display:block;font-size:.42em;letter-spacing:.06em;color:var(--orange);margin-top:12px;line-height:1}
.hero p{font-size:clamp(18px,1.7vw,22px);max-width:46ch;margin:22px 0 32px;color:rgba(255,255,255,.9)}
.cta{display:flex;flex-wrap:wrap;gap:12px}
.scroll-hint{position:absolute;right:var(--pad);bottom:70px;z-index:2;font:600 12px/1 var(--cond);letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.7);writing-mode:vertical-rl;display:flex;align-items:center;gap:14px}
.scroll-hint::after{content:"";width:2px;height:70px;background:linear-gradient(var(--orange),transparent);animation:drip 2.4s ease-in-out infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* aloldali nyitókép */
.phero{position:relative;min-height:440px;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--night)}
.phero .wrap{position:relative;z-index:2;width:100%;padding-top:130px;padding-bottom:50px}
.phero h1{font-size:clamp(44px,6.4vw,86px);max-width:16ch;line-height:.96}
.phero p{max-width:60ch;margin:18px 0 0;font-size:19px;color:rgba(255,255,255,.88)}
.crumbs{font:600 13px/1 var(--cond);letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:18px}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--orange)}

/* ---------- számsáv ---------- */
.facts{background:var(--night-2);color:#e7e9e1;border-top:2px solid var(--orange)}
.facts .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.fact{padding:26px 0}
.fact + .fact{border-left:1px solid rgba(255,255,255,.1);padding-left:28px}
.fact b{display:block;font:700 40px/1 var(--cond);color:#fff}
.fact b i{font-style:normal;color:var(--orange)}
.fact span{font-size:15px;color:var(--muted)}

/* ---------- szolgáltatások ---------- */
.svc{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.scard{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:400px;border-radius:var(--r);overflow:hidden;color:#fff;text-decoration:none;background:var(--night)}
.scard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s}
.scard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,12,10,.05) 30%,rgba(10,12,10,.88) 82%)}
.scard:hover img{transform:scale(1.06)}
.scard .tx{position:relative;z-index:2;padding:24px}
.scard h3{font-size:28px}
.scard p{font-size:15.5px;color:rgba(255,255,255,.82);margin:10px 0 14px}
.more{display:inline-flex;align-items:center;gap:8px;font:600 14px/1 var(--cond);letter-spacing:.16em;text-transform:uppercase;color:var(--orange);text-decoration:none}
.more svg{width:16px;height:16px;transition:transform .2s}
a:hover .more svg,.more:hover svg{transform:translateX(4px)}

/* ---------- táborok ---------- */
.camps{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.camp{display:grid;grid-template-columns:.82fr 1fr;background:var(--night-2);border-radius:var(--r);overflow:hidden;text-decoration:none;color:#e7e9e1;border:1px solid rgba(255,255,255,.06)}
.camp figure{margin:0;overflow:hidden;background:#000}
.camp figure img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .9s}
.camp:hover figure img{transform:scale(1.04)}
.camp .tx{padding:28px 28px 30px;display:flex;flex-direction:column}
.camp h3{font-size:32px;color:#fff}
.camp .tag{align-self:flex-start;font:600 12px/1 var(--cond);letter-spacing:.2em;text-transform:uppercase;padding:7px 10px;background:var(--olive);color:#dfe5cc;border-radius:var(--r);margin-bottom:16px}
.camp p{color:#b9bdb0;font-size:16px;margin:12px 0 18px}
.camp dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0 0 22px;font-size:15px}
.camp dt{font:600 13px/1.6 var(--cond);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.camp dd{margin:0;color:#fff}
.camp .more{margin-top:auto}

/* ---------- csomagok ---------- */
.bonus{display:flex;gap:14px;align-items:center;padding:16px 20px;border-left:3px solid var(--orange);background:var(--card);margin:0 0 30px;font-size:16.5px}
.bonus b{font-family:var(--cond);font-size:19px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.dark .bonus{background:var(--night-2)}
.pkgs{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.pkg{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.pkg figure{margin:0;aspect-ratio:3/2;overflow:hidden;background:#222}
.pkg img{width:100%;height:100%;object-fit:cover;transition:transform .8s;cursor:zoom-in}
.pkg:hover img{transform:scale(1.05)}
.pkg .tx{padding:18px 18px 20px;display:flex;flex-direction:column;flex:1}
.pkg h3{font-size:24px}
.pkg .sub{font-size:14.5px;color:var(--ink-2);margin:8px 0 12px;line-height:1.45}
.pkg ul{list-style:none;padding:0;margin:0 0 16px;font-size:14.5px;display:grid;gap:5px}
.pkg li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--line);padding-bottom:5px}
.pkg li span:last-child{white-space:nowrap;color:var(--ink-2)}
.price{margin-top:auto;font:700 30px/1 var(--cond);color:var(--ink)}
.price small{font-size:16px;font-weight:600;color:var(--ink-2);letter-spacing:.06em}
.pkg.hl{border-color:var(--orange);box-shadow:inset 0 3px 0 var(--orange)}

/* ---------- videók ---------- */
.vids{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:auto auto;gap:18px}
.vid{position:relative;border-radius:var(--r);overflow:hidden;background:#000}
.vid:first-child{grid-row:1/3}
.vid video{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:16/9}
.vid:first-child video{aspect-ratio:auto}
.vid .play{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:22px;border:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.75));color:#fff;cursor:pointer;text-align:left}
.vid .play b{display:block;font:700 26px/1.05 var(--cond);text-transform:uppercase}
.vid .play small{font-size:14px;color:rgba(255,255,255,.75)}
.vid .play i{flex:none;width:64px;height:64px;border-radius:50%;background:var(--orange);display:grid;place-items:center;transition:transform .2s}
.vid .play:hover i{transform:scale(1.08)}
.vid .play svg{width:24px;height:24px;color:#111;margin-left:3px}
.vid.playing .play,.vid.playing .vp{display:none}
.vid .vp{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vid:first-child{min-height:420px}
.vid:first-child video{position:absolute;inset:0}

/* ---------- osztott blokk ---------- */
.split{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center}
.split.rev .media{order:-1}
.split .media{position:relative}
.split .media img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}
.split .media .stamp{position:absolute;left:-14px;bottom:-14px;background:var(--orange);color:#111;padding:16px 20px;font:700 34px/1 var(--cond);border-radius:var(--r)}
.split .media .stamp small{display:block;font-size:13px;letter-spacing:.18em;text-transform:uppercase;margin-top:4px}
.timeline{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:0;border-left:2px solid var(--line)}
.timeline li{position:relative;padding:0 0 16px 22px}
.timeline li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;background:var(--orange);border-radius:var(--r)}
.timeline b{font:700 21px/1 var(--cond);display:block;margin-bottom:4px}
.dark .timeline{border-color:rgba(255,255,255,.14)}
.flags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0}
.flags span{font:600 13px/1 var(--cond);letter-spacing:.12em;text-transform:uppercase;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r)}
.dark .flags span{border-color:rgba(255,255,255,.18);color:#dfe2d6}

.facil{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.1);margin-top:26px;border:1px solid rgba(255,255,255,.1)}
.facil div{background:var(--night);padding:16px 18px;display:flex;gap:12px;align-items:center;font-size:15.5px;color:#dfe2d6}
.facil svg{width:22px;height:22px;color:var(--orange);flex:none}

/* ---------- sín (galéria-előzetes) ---------- */
.rail-wrap{position:relative}
.rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
.rail figure{margin:0;flex:0 0 clamp(240px,28vw,340px);scroll-snap-align:start}
.rail img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r);cursor:zoom-in}
.arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:0;background:rgba(251,250,246,.95);color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 14px rgba(0,0,0,.25);z-index:3}
.arrow svg{width:20px;height:20px}
.arrow.prev{left:-12px}.arrow.next{right:-12px}
.arrow[disabled]{opacity:0;pointer-events:none}

/* ---------- felhívás ---------- */
.band{position:relative;overflow:hidden;color:#fff;background:var(--night)}
.band .kb{opacity:.5}
.band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,12,10,.92) 0%,rgba(10,12,10,.7) 50%,rgba(10,12,10,.45) 100%)}
.band .wrap{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:62px;padding-bottom:62px}
.band h2{max-width:18ch}
.band p{color:rgba(255,255,255,.82);margin:12px 0 0;max-width:52ch}

/* ---------- tartalmi oldalak ---------- */
.prose{max-width:760px}
.prose h2{font-size:clamp(30px,3.6vw,44px);margin:0 0 16px}
.prose h3{margin:28px 0 10px}
.prose p,.prose li{color:var(--ink-2)}
.ticks{list-style:none;padding:0;margin:14px 0 22px;display:grid;gap:9px}
.ticks li{position:relative;padding-left:26px}
.ticks li::before{content:"";position:absolute;left:0;top:.78em;width:14px;height:2px;background:var(--orange)}
.ticks.two{grid-template-columns:1fr 1fr;column-gap:30px}
.ticks b{color:var(--ink)}
.dark .ticks li{color:#c9ccc0}
.dark .ticks b{color:#fff}
.layout{display:grid;grid-template-columns:1fr 360px;gap:56px;align-items:start}
.side{position:sticky;top:96px;display:grid;gap:16px}
.box{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.box h3{font-size:22px;margin-bottom:14px}
.box dl{display:grid;gap:12px;margin:0 0 20px}
.box dt{font:600 12.5px/1 var(--cond);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);margin-bottom:4px}
.box dd{margin:0;font-weight:500}
.box .btn{width:100%;justify-content:center}
.box.dark-box{background:var(--night);color:#e7e9e1;border-color:var(--night)}
.box.dark-box dt{color:var(--muted)}
.poster{border-radius:var(--r);overflow:hidden;cursor:zoom-in}
.course{display:grid;grid-template-columns:300px 1fr;gap:40px;padding:44px 0;border-top:1px solid var(--line)}
.course:first-of-type{border-top:0;padding-top:0}
.course .media img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
.course h2{font-size:clamp(30px,3.4vw,42px);margin-bottom:12px}
.course .meta{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 18px}
.course .meta span{font:600 14px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;padding:9px 12px;background:var(--sand);border-radius:var(--r)}
.course .meta span.or{background:var(--orange);color:#111}
.note{font-size:14.5px;color:var(--ink-2);border-left:3px solid var(--olive-2);padding:10px 14px;background:var(--card);margin:16px 0}
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.icard{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.icard svg{width:30px;height:30px;color:var(--orange-d);margin-bottom:12px}
.icard h3{font-size:22px;margin-bottom:8px}
.icard p{font-size:15.5px;color:var(--ink-2);margin:0}

/* ---------- galéria ---------- */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.filters button{font:600 15px/1 var(--cond);letter-spacing:.14em;text-transform:uppercase;padding:12px 16px;border:1.5px solid var(--line);background:none;border-radius:var(--r);cursor:pointer;color:var(--ink)}
.filters button.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.filters button span{color:var(--orange-d);margin-left:6px}
.grid{columns:4 260px;column-gap:12px}
.grid figure{margin:0 0 12px;break-inside:avoid;border-radius:var(--r);overflow:hidden;cursor:zoom-in;background:#ddd}
.grid img{width:100%;height:auto;transition:transform .7s}
.grid figure:hover img{transform:scale(1.04)}
.grid figure.hide{display:none}

/* ---------- űrlap ---------- */
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form .full{grid-column:1/-1}
.form label{display:block;font:600 13px/1 var(--cond);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);margin-bottom:8px}
.form input[type=text],.form input[type=email],.form input[type=tel],.form textarea,.form select{width:100%;font:400 17px/1.4 var(--sans);padding:13px 14px;border:1.5px solid var(--line);border-radius:var(--r);background:#fff;color:var(--ink)}
.form input:focus,.form textarea:focus,.form select:focus{outline:none;border-color:var(--orange)}
.form textarea{min-height:140px;resize:vertical}
.choices{display:grid;gap:10px}
.choice{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1.5px solid var(--line);border-radius:var(--r);background:#fff;cursor:pointer}
.choice input{margin-top:4px;accent-color:var(--orange);width:18px;height:18px}
.choice b{display:block;font:700 19px/1.1 var(--cond);text-transform:uppercase}
.choice small{color:var(--ink-2);font-size:14.5px}
.choice:has(input:checked){border-color:var(--orange);box-shadow:inset 3px 0 0 var(--orange)}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:var(--ink-2)}
.consent input{margin-top:4px;accent-color:var(--orange);width:18px;height:18px;flex:none}
.hp{position:absolute;left:-9999px}
.form .ok{display:none;padding:16px 18px;background:#e9f1dd;border-left:3px solid var(--olive-2)}

/* ---------- kapcsolat ---------- */
.contacts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:30px}
.contacts a,.contacts div{display:flex;gap:16px;align-items:center;padding:24px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);text-decoration:none}
.contacts svg{width:30px;height:30px;color:var(--orange-d);flex:none}
.contacts b{display:block;font:700 22px/1.1 var(--cond)}
.contacts span{font-size:14.5px;color:var(--ink-2)}
.map{position:relative;aspect-ratio:21/8;border-radius:var(--r);overflow:hidden;background:var(--night) url(../img/helyszin-loter.jpg) center/cover;display:grid;place-items:center}
.map::before{content:"";position:absolute;inset:0;background:rgba(10,12,10,.62)}
.map .in{position:relative;text-align:center;color:#fff;padding:20px}
.map .in p{color:rgba(255,255,255,.82);margin:8px 0 18px}

/* ---------- lábléc ---------- */
.ftr{background:var(--night);color:#b9bdb0;padding:62px 0 0;font-size:15.5px}
.ftr .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.ftr h3{font-size:17px;letter-spacing:.16em;color:#fff;margin-bottom:16px}
.ftr a{text-decoration:none}
.ftr a:hover{color:var(--orange)}
.ftr ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.ftr .flogo{height:34px;width:auto;margin-bottom:18px}
.ftr .partner img{height:64px;width:auto;margin-top:8px;opacity:.9}
.ftr .bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.08);margin-top:46px;padding:20px 0;font-size:13.5px;color:#7f8577}

/* ---------- nagyító ---------- */
.lb{position:fixed;inset:0;z-index:100;background:rgba(8,9,8,.95);display:none;align-items:center;justify-content:center}
.lb.open{display:flex}
.lb img{max-width:92vw;max-height:86vh;border-radius:var(--r)}
.lb button{position:absolute;border:0;background:rgba(255,255,255,.1);color:#fff;width:52px;height:52px;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.lb button svg{width:22px;height:22px}
.lb .x{top:18px;right:18px}.lb .l{left:18px}.lb .r{right:18px}
.lb .cnt{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#aaa;font:600 14px/1 var(--cond);letter-spacing:.2em}

/* ---------- megjelenés görgetéskor ---------- */
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}
.rv.in{opacity:1;transform:none}

/* ---------- reszponzív ---------- */
@media (max-width:1180px){
  .hdr .wrap{gap:20px}
  .nav{gap:16px}
  .nav a{font-size:15px;letter-spacing:.08em}
  .logo{height:38px}
  .hdr .btn{padding:11px 14px}
}
@media (max-width:1100px){
  .pkgs{grid-template-columns:repeat(3,1fr)}
  .svc{grid-template-columns:1fr 1fr}
  .camp{grid-template-columns:1fr}
  .camp figure{aspect-ratio:3/2}
  .layout{grid-template-columns:1fr}
  .side{position:static}
}
@media (max-width:900px){
  .nav,.hdr .wrap>.btn{display:none}
  .burger{display:block}
  .hdr.open{background:var(--night)}
  .hdr.open .nav{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--night);padding:8px var(--pad) 22px;border-top:1px solid rgba(255,255,255,.08)}
  .hdr.open .nav a{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:20px}
  .hdr.open .nav .btn{margin-top:14px;justify-content:center;display:flex}
  .facts .wrap{grid-template-columns:1fr 1fr}
  .fact:nth-child(3){border-left:0;padding-left:0}
  .fact:nth-child(n+3){border-top:1px solid rgba(255,255,255,.1)}
  .camps,.split,.vids,.course{grid-template-columns:1fr}
  .split.rev .media{order:0}
  .vid:first-child{grid-row:auto}
  .vid:first-child video{aspect-ratio:4/3}
  .facil,.cols3,.contacts{grid-template-columns:1fr 1fr}
  .ftr .cols{grid-template-columns:1fr 1fr}
  .head{flex-direction:column;align-items:flex-start}
  .band .wrap{flex-direction:column;align-items:flex-start}
  .course .media img{aspect-ratio:3/2}
  .scroll-hint{display:none}
}
@media (max-width:600px){
  body{font-size:16.5px}
  section{padding:54px 0}
  .tight{padding:44px 0}
  .hdr .wrap{height:76px}
  .logo{height:32px}
  .hdr.solid .logo{height:28px}
  .hero{min-height:88svh}
  .hero .wrap{padding-bottom:46px}
  .pkgs,.svc,.facil,.cols3,.contacts,.form{grid-template-columns:1fr}
  .scard{min-height:320px}
  .ticks.two{grid-template-columns:1fr}
  .ftr .cols{grid-template-columns:1fr}
  .map{aspect-ratio:4/5}
  .bonus{flex-direction:column;align-items:flex-start;gap:6px}
  .split .media .stamp{left:10px;bottom:10px}
}
@media (prefers-reduced-motion:reduce){.kb,.scroll-hint::after{animation:none}.rv{opacity:1;transform:none}}

.nav [data-m]{display:none}
.ticks .full{grid-column:1/-1}
.partner small{display:block;font-size:13px;color:#7f8577}

.form label.choice{display:flex;font:inherit;letter-spacing:0;text-transform:none;color:inherit;margin:0}
.choice small{display:block;margin-top:4px}
.sand{background:#ebe6da}
.legal{max-width:820px}
.legal h2{font-size:clamp(24px,2.6vw,32px);margin:34px 0 12px}
.legal h2:first-of-type{margin-top:10px}
.legal h3{font-size:21px;margin:22px 0 8px}
.legal a{color:var(--orange-d)}
.msg{grid-column:1/-1;padding:16px 18px;border-left:3px solid var(--olive-2);background:#e9f1dd;font-size:16px}
.msg.err{border-color:#c0392b;background:#f8e3df}
/* mobilon a kisebb háttérkép (a sablon az inline stílusba teszi a --m változót) */
@media (max-width:700px){.kb[style*="--m"]{background-image:var(--m)!important}}

/* sütisáv (a ceba.js kezeli) és a lábléc „Sütibeállítások” gombja */
.suti{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;max-width:780px;margin:0 auto;background:var(--night-2);color:#e7e9e1;border:1px solid rgba(255,255,255,.1);border-top:2px solid var(--orange);border-radius:var(--r);box-shadow:0 10px 34px rgba(0,0,0,.4);padding:18px 20px;display:flex;align-items:center;gap:18px}
.suti[hidden]{display:none}
.suti p{margin:0;font-size:15px;line-height:1.5;color:#c9ccc0}
.suti a{color:var(--orange)}
.suti-g{display:flex;gap:10px;flex:none}
.suti .btn{padding:11px 16px;font-size:15px}
.ftr-suti{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left}
.ftr-suti:hover{color:var(--orange)}
@media (max-width:640px){.suti{flex-direction:column;align-items:stretch;gap:12px;left:10px;right:10px;bottom:10px}.suti-g .btn{flex:1;justify-content:center}}