/* Patirk — Journal J2 "Lauko užrašai" design system (public site), Akvarelė background. One file, no framework.
   Fonts are self-hosted (Caveat, Courier Prime, Nunito — SIL OFL) because the CSP allows no third-party hosts. */
@font-face{font-family:"Caveat";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/caveat-cyrillic-600-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Caveat";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/caveat-latin-ext-600-normal.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Caveat";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/caveat-latin-600-normal.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:"Caveat";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/caveat-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Caveat";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/caveat-latin-ext-700-normal.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Caveat";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/caveat-latin-700-normal.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:"Courier Prime";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/courier-prime-latin-ext-400-normal.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Courier Prime";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/courier-prime-latin-400-normal.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:"Courier Prime";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/courier-prime-latin-ext-700-normal.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Courier Prime";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/courier-prime-latin-700-normal.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:"Nunito";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/nunito-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Nunito";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/nunito-latin-ext-400-normal.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/nunito-latin-400-normal.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:"Nunito";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/nunito-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Nunito";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/nunito-latin-ext-700-normal.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/nunito-latin-700-normal.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:"Nunito";font-style:normal;font-weight:800;font-display:swap;src:url(fonts/nunito-cyrillic-800-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Nunito";font-style:normal;font-weight:800;font-display:swap;src:url(fonts/nunito-latin-ext-800-normal.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:normal;font-weight:800;font-display:swap;src:url(fonts/nunito-latin-800-normal.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:"Nunito";font-style:normal;font-weight:900;font-display:swap;src:url(fonts/nunito-cyrillic-900-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Nunito";font-style:normal;font-weight:900;font-display:swap;src:url(fonts/nunito-latin-ext-900-normal.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:normal;font-weight:900;font-display:swap;src:url(fonts/nunito-latin-900-normal.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}

/* ---------- J2 tokens ---------- */
:root{--pap:#F4ECDC;--map:#F4ECDC;--card:#FFFDF6;--ink:#2E2A22;--ink2:#575043;--ink3:#857B68;--ln:#DCCDB0;--kr:#D5B98C;--krd:#B39566;--stampc:#B8452E;--warn:#B8452E;--a:#3F6E36;
 --fh:"Caveat","Segoe Print","Bradley Hand",cursive;--fm:"Courier Prime","Courier New",monospace;--fb:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;--f:var(--fb);
 --r:8px;--sh:0 2px 0 rgba(46,42,34,.08),0 10px 22px -12px rgba(46,42,34,.35);--shb:0 2px 0 var(--krd),0 12px 20px -12px rgba(46,42,34,.55);
 --kfib:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E %3Cfilter id='a' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='2' seed='4' stitchTiles='stitch'/%3E %3CfeColorMatrix values='0 0 0 0 .36 0 0 0 0 .25 0 0 0 0 .12 1.2 0 0 0 -.5'/%3E%3C/filter%3E %3Cfilter id='b' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.02 .5' numOctaves='2' seed='9' stitchTiles='stitch'/%3E %3CfeColorMatrix values='0 0 0 0 .99 0 0 0 0 .94 0 0 0 0 .84 1.1 0 0 0 -.56'/%3E%3C/filter%3E %3Crect width='300' height='300' filter='url(%23a)'/%3E%3Crect width='300' height='300' filter='url(%23b)'/%3E%3C/svg%3E") 0 0/300px;
 --clip:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 72'%3E %3Cpath d='M10 50 V15 a4 4 0 0 1 8 0 V56 a7 7 0 0 1 -14 0 V11 a7 7 0 0 1 14 0' fill='none' stroke='%236F7780' stroke-width='3.2' stroke-linecap='round'/%3E %3Cpath d='M10 50 V15 a4 4 0 0 1 8 0 V56 a7 7 0 0 1 -14 0 V11 a7 7 0 0 1 14 0' fill='none' stroke='%23E4E8EC' stroke-width='1.1' stroke-linecap='round' transform='translate(-.5 -.6)'/%3E%3C/svg%3E") center/contain no-repeat;
 color-scheme:light}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px;overflow-x:clip}
body{margin:0;color:var(--ink);font-family:var(--fb);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;background-color:var(--pap);overflow-x:clip;position:relative}
h1,h2,h3{margin:0;font-weight:800;letter-spacing:-.02em;line-height:1.08;text-wrap:balance}
p{margin:0} a{color:inherit} img{display:block;max-width:100%;height:auto} figure{margin:0} ul,ol{margin:0;padding:0;list-style:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
strong{font-weight:800}
.w{max-width:1140px;margin:0 auto;padding-inline:22px}
@media(max-width:560px){.w{padding-inline:16px}}
.sec{padding-block:50px}
.sec.after-conn{padding-top:8px}
:focus-visible{outline:2.5px solid var(--a);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--ink);color:var(--card);padding:10px 16px;border-radius:8px}
.skip:focus{left:12px}
.small{font-size:13.5px;color:var(--ink3);line-height:1.55}

/* watercolour page background + paper grain (fixed, behind everything) */
.page-bg{position:fixed;inset:0;z-index:-2;pointer-events:none;background-color:var(--pap);background-image:var(--bg-image);background-size:var(--bg-size,auto)}
[data-bg="watercolor"] .page-bg{--bg-image:radial-gradient(ellipse at 0% 18%,color-mix(in srgb,var(--a) 11%,transparent),transparent 40%),radial-gradient(ellipse at 99% 60%,#e9ac3924,transparent 34%),radial-gradient(ellipse at 40% 90%,color-mix(in srgb,var(--a) 6%,transparent),transparent 40%);--bg-size:100% 100%}
.texture{position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.1' d='M0 0h180v180H0z'/%3E%3C/svg%3E");opacity:.15;mix-blend-mode:multiply}

.ic{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ic.sm{width:18px;height:18px;stroke-width:2}.ic.xs{width:15px;height:15px;stroke-width:2.2}.ic.lg{width:28px;height:28px;stroke-width:1.6}
.ic.up{transform:rotate(-90deg)}

/* reveal */
.anim .rv{opacity:0;transform:translateY(18px);transition:opacity .55s cubic-bezier(.2,.7,.3,1),transform .55s cubic-bezier(.2,.7,.3,1)}
.anim .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* ---------- type ---------- */
.hand{font-family:var(--fh);font-weight:700;font-size:26px;line-height:1.15;color:var(--a);display:inline-flex;gap:8px;align-items:center;letter-spacing:0}
.hand .ic{width:20px;height:20px}
.hand.lg{font-size:30px}
.hand2{font-family:var(--fh);font-weight:600;font-size:20px;line-height:1.2;color:var(--ink2);text-align:center;padding:10px 6px 4px}
.ovl{font-family:var(--fh);font-weight:700;font-size:30px;line-height:1.1;color:var(--a);letter-spacing:0;text-transform:lowercase}
.sh{max-width:64ch;margin-bottom:28px;display:grid;gap:8px}
.sh h2,.team h2,.book h2,.infra h2,.contact h2,.gr-head h2{font-size:clamp(25px,3.4vw,37px)}
.shp{font-size:17px;color:var(--ink2);max-width:62ch}
.display{font-family:var(--fb);font-size:clamp(42px,6.6vw,76px);font-weight:900;letter-spacing:-.03em;line-height:1;margin-top:8px;text-wrap:balance;position:relative;display:inline-block}
.u{display:block;color:var(--a);line-height:0;margin-top:6px}
.under{width:min(100%,340px);height:16px;display:block}
.bh{font-size:18px;font-weight:800;color:var(--a);line-height:1.3}

/* ---------- buttons ---------- */
.tbtn{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--a);color:#fff;border-radius:10px;padding:13px 24px;font-weight:900;font-size:15.5px;text-decoration:none;min-height:50px;
 outline:1.5px dashed rgba(255,255,255,.6);outline-offset:-6px;box-shadow:0 3px 0 color-mix(in srgb,var(--a) 55%,#000);transition:transform .13s ease,box-shadow .13s ease;text-align:center}
.tbtn:hover{transform:translate(-1px,-2px) rotate(-.6deg);box-shadow:0 5px 0 color-mix(in srgb,var(--a) 55%,#000)}
.tbtn:active{transform:translateY(2px);box-shadow:0 1px 0 color-mix(in srgb,var(--a) 55%,#000)}
.tbtn:focus-visible{outline:2.5px solid var(--ink);outline-offset:3px}
.tbtn.big{min-height:56px;padding:15px 28px;font-size:16.5px}
.tbtn.ghost{background:var(--ink3);box-shadow:0 3px 0 color-mix(in srgb,var(--ink3) 55%,#000)}
span.tbtn.ghost{cursor:default}span.tbtn.ghost:hover{transform:none}
.tbtn.line{background:var(--card);color:var(--ink);outline:0;border:1.5px dashed var(--krd);box-shadow:0 2px 0 var(--krd)}
.tbtn.line:hover{border-style:solid;border-color:var(--a);color:var(--a)}
.more{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:14px;color:var(--a);text-decoration:none;margin-top:12px}
.more:hover{text-decoration:underline;text-decoration-style:wavy;text-underline-offset:4px}
.cta-row{margin-top:30px;display:flex;justify-content:center}

/* ---------- header ---------- */
.top{position:sticky;top:0;z-index:60;background:rgba(244,236,220,.93);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:2px dashed var(--krd)}
.top-in{display:flex;align-items:center;gap:14px;height:66px}
.brand{font-weight:900;font-size:20px;display:flex;align-items:center;gap:10px;letter-spacing:-.02em;text-decoration:none;flex:none}
.logo{width:40px;height:40px;border-radius:999px;display:block;flex:none;transform:rotate(-6deg);box-shadow:2px 3px 0 rgba(46,42,34,.2);background:#fff}
.mnav{margin-left:auto}
.mnav-l{display:flex;align-items:center;gap:2px}
.mi{position:relative}
.mt{display:inline-flex;align-items:center;gap:4px;padding:8px 10px;border:1.5px dashed transparent;border-radius:8px;font-size:14px;font-weight:800;color:var(--ink2);text-decoration:none;white-space:nowrap;min-height:42px}
.mt:hover,.mi.open>.mt{border-color:var(--krd);background:var(--card);color:var(--ink)}
.mi.on>.mt{color:var(--a)}
.chev{transition:transform .2s}
.mi.open .chev{transform:rotate(180deg)}
.sub{position:absolute;left:0;top:calc(100% + 8px);min-width:290px;background:var(--card);border:1.5px solid var(--ink);border-radius:8px;box-shadow:4px 6px 0 rgba(46,42,34,.14);padding:8px;display:none}
.mi.open>.sub{display:block}
.sub a{display:block;padding:9px 12px;border-radius:6px;font-size:14px;font-weight:700;text-decoration:none;color:var(--ink2);line-height:1.35}
.sub a:hover,.sub a[aria-current]{background:color-mix(in srgb,var(--a) 9%,#fff);color:var(--a)}
.sub-top a{font-weight:900;color:var(--ink);display:flex;align-items:center;gap:6px;border-bottom:1.5px dashed var(--ln);border-radius:6px 6px 0 0;margin-bottom:4px}
.sub2{padding-left:12px;border-left:2px dashed var(--ln);margin:2px 0 6px 14px}
.sub2 a{font-size:13px;padding:6px 10px}
.sub .nolink{display:block;padding:9px 12px;font-size:14px;font-weight:700;color:var(--ink2);line-height:1.35;opacity:.75}
.mi:nth-last-child(-n+3)>.sub{left:auto;right:0}
.mnav-foot{display:none}
.an{display:inline-flex;align-items:center;gap:8px;border:2px solid var(--ink);border-radius:10px;padding:8px 14px;font-size:13.5px;font-weight:900;background:#FFF3B0;color:var(--ink);text-decoration:none;min-height:44px;box-shadow:2px 3px 0 rgba(46,42,34,.2);flex:none;transition:transform .13s}
.an:hover{transform:rotate(-1.2deg)}
.burger{display:none;width:46px;height:46px;border:1.5px dashed var(--krd);border-radius:10px;background:var(--card);flex-direction:column;justify-content:center;align-items:center;gap:4px;flex:none}
.burger span{display:block;width:20px;height:2.5px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
@media(max-width:1180px){
 .top{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--pap)}
 .burger{display:flex}
 .an{margin-left:auto}
 .mnav{position:fixed;inset:66px 0 0 0;background:var(--pap);overflow-y:auto;padding:14px 16px 30px;display:none;border-top:2px dashed var(--krd);margin:0;z-index:2}
 .mnav.open{display:block}
 .mnav-l{flex-direction:column;align-items:stretch;gap:6px}
 .mt{width:100%;justify-content:space-between;font-size:17px;padding:14px;background:var(--card);border:1.5px dashed var(--krd);border-radius:8px;white-space:normal;text-align:left}
 .sub{position:static;box-shadow:none;border:0;background:transparent;padding:4px 0 8px 10px;min-width:0}
 .sub a{font-size:15.5px;padding:11px 12px}
 .mnav-foot{display:grid;gap:10px;margin-top:18px}
 .mnav-foot a{display:flex;align-items:center;gap:10px;font-weight:800;text-decoration:none;padding:6px 4px}
 body.nav-open{overflow:hidden}
}
@media(max-width:480px){.an span{display:none}.an{padding:8px 11px}.brand span{display:none}}

/* ---------- hero ---------- */
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;padding-block:46px 30px}
.hl{position:relative;min-width:0}
.hl>.hand,.phead-t>.hand,.bk-main>.hand,.bk>.hand{display:flex}
.h1s{margin-top:16px;font-size:clamp(18px,2vw,22px);font-weight:800;letter-spacing:-.01em;line-height:1.3;max-width:34ch;color:var(--ink2)}
.say{margin-top:14px;font-family:var(--fh);font-weight:600;font-size:clamp(24px,2.8vw,31px);line-height:1.22;color:var(--ink2);max-width:28ch}
.say.long{font-family:var(--fb);font-weight:400;font-size:17.5px;line-height:1.6;max-width:48ch}
.sticks{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px}
.stick{display:inline-block;background:var(--kfib),var(--kr);border:0;border-radius:5px;color:var(--ink);font:700 13.5px/1.3 var(--fm);text-transform:uppercase;letter-spacing:.04em;
 outline:1.5px dashed rgba(255,250,238,.9);outline-offset:-5px;padding:10px 16px;margin-top:14px;text-decoration:none;box-shadow:0 2px 0 var(--krd),2px 7px 10px -4px rgba(46,42,34,.35);transform:rotate(-2deg)}
.stick.s2{background:var(--kfib),#C9D2AA;transform:rotate(1.5deg)}.stick.s3{background:var(--kfib),#E3BE9C;transform:rotate(-1deg)}
.anim .stick{animation:bob 5s ease-in-out infinite alternate}
.anim .stick.s2{animation-delay:.7s}.anim .stick.s3{animation-delay:1.3s}
@keyframes bob{to{transform:translateY(-5px) rotate(0deg)}}
.hero-cta{margin-top:24px;display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center;position:relative}
.arr{color:var(--a);width:96px;display:block;transform:rotate(12deg) translateY(18px)}
.doodle{width:100%;height:auto}
.legend{margin-top:22px;display:flex;flex-wrap:wrap;gap:6px 18px}
.legend>*{display:inline-flex;gap:7px;align-items:center;font:700 13px/1.3 var(--fm);color:var(--ink2);text-decoration:none}
.legend .ic{color:var(--a)}
.legend a:hover{color:var(--a);text-decoration:underline}
.hr{position:relative;min-height:470px}
.pol{background:#fff;padding:10px 10px 2px;position:absolute;box-shadow:0 1px 0 rgba(46,42,34,.08),0 14px 28px -8px rgba(46,42,34,.34);transition:transform .22s ease}
.pol img{width:100%;aspect-ratio:1/1;object-fit:cover}
.pol.p1{width:66%;top:0;left:2%;transform:rotate(-3.4deg);z-index:2}
.pol.p1 img{aspect-ratio:4/4.6}
.pol.p2{width:50%;bottom:0;right:0;transform:rotate(2.8deg)}
.pol:hover{transform:rotate(0) scale(1.03);z-index:5}
.tape{position:absolute;width:24px;height:66px;top:-30px;left:24%;transform:rotate(-6deg);background:var(--clip);z-index:3}
.tape.t2{left:auto;right:16%;transform:rotate(7deg)}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:34px;padding-top:28px}.hr{min-height:0;display:grid;grid-template-columns:1.2fr 1fr;gap:16px;align-items:start;padding-top:22px}.pol,.pol.p1,.pol.p2{position:relative;width:100%;top:auto;left:auto;right:auto;bottom:auto}.pol.p2{margin-top:40px}.arr{display:none}}
@media(max-width:480px){.hr{grid-template-columns:1fr}.pol.p2{width:78%;margin:0 0 0 auto}.display{font-size:44px}}
.hero-sym{margin-top:28px;display:flex;align-items:center;gap:14px}
.symbols{width:min(380px,100%);opacity:.9}
.game{width:40px;height:auto;flex:none}

/* ---------- footprints connector ---------- */
.conn{display:grid;justify-items:center;position:relative;height:168px;color:var(--a)}
.stp{display:block;width:80px;height:168px;overflow:visible;color:var(--a)}
.stp use{opacity:.72}
.anim .conn.rv{opacity:1;transform:none}
.anim .conn .stp use{opacity:0;transition:opacity .3s ease calc(var(--i)*120ms)}
.anim .conn.in .stp use{opacity:.72}
.mark{position:absolute;top:50%;left:50%;width:46px;height:46px;transform:translate(-50%,-50%);border-radius:999px;display:grid;place-items:center;
 background:var(--kfib),var(--kr);border:2px solid var(--ink);color:var(--ink);outline:1.5px dashed rgba(255,250,238,.95);outline-offset:-6px}
.mark .ic{width:19px;height:19px}
.anim .conn .mark{opacity:0;transform:translate(-50%,-50%) scale(.35) rotate(-30deg);transition:opacity .3s ease .45s,transform .65s cubic-bezier(.34,1.56,.64,1) .45s}
.anim .conn.in .mark{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}

/* ---------- kraft notes (facts, why) ---------- */
.facts{padding-block:16px 0}
.notes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:n}
.note{counter-increment:n;position:relative;background:var(--kfib),var(--kr);border-radius:6px;padding:20px;transform:rotate(var(--rot,0deg));transition:transform .18s ease;
 outline:2px dashed rgba(255,250,238,.85);outline-offset:-8px;box-shadow:0 2px 0 var(--krd),0 12px 20px -12px rgba(46,42,34,.6)}
.note:nth-child(3n+2){background:var(--kfib),#CBD3B0}.note:nth-child(3n){background:var(--kfib),#E0C3A4}
.note::after{content:"Nr. " counter(n,decimal-leading-zero);position:absolute;top:14px;right:15px;font:700 11px/1 var(--fm);color:var(--stampc);border:1.5px solid currentColor;border-radius:3px;padding:3px 6px;transform:rotate(5deg);opacity:.85}
.anim .note.rv.in,.note{transform:rotate(var(--rot,0deg))}
.note:hover,.anim .note.rv.in:hover{transform:rotate(0) translateY(-3px)}
.ni{width:38px;height:38px;border-radius:999px;background:#FFFDF6;color:var(--a);display:grid;place-items:center;box-shadow:0 0 0 1.5px var(--ink)}
.note p{margin-top:11px;font-size:14px;font-weight:700;color:#4A4335;line-height:1.45}
.note h3{margin-top:11px;font-size:17px}
.note h3 a{text-decoration:none}.note h3 a:hover{text-decoration:underline}
.why .note p{font-weight:400;font-size:14px}
@media(max-width:960px){.notes{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.notes{gap:14px}.note{padding:16px}.note p{font-size:13.5px}}
/* kept for content pages */
.wpg{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.wp{background:var(--card);border:1.5px solid var(--ln);border-radius:var(--r);padding:18px;box-shadow:var(--sh)}
.wn{width:42px;height:42px;border-radius:999px;background:color-mix(in srgb,var(--a) 11%,#fff);color:var(--a);display:grid;place-items:center}
.wp p{margin-top:12px;font-size:14.5px;font-weight:600;color:var(--ink2);line-height:1.45}
@media(max-width:960px){.wpg{grid-template-columns:1fr 1fr}}

/* ---------- activities: little polaroids ---------- */
.acts{display:flex;flex-wrap:wrap;justify-content:center;gap:22px 18px}
.acts>.act{flex:0 0 calc((100% - 54px)/4)}
.act{background:#fff;padding:9px 9px 14px;box-shadow:0 1px 0 rgba(46,42,34,.08),0 12px 22px -10px rgba(46,42,34,.32);display:flex;flex-direction:column;transform:rotate(var(--r2,-1deg));transition:transform .2s}
.act:nth-child(2n){--r2:1.2deg}.act:nth-child(3n){--r2:-.4deg}
.anim .act.rv.in{transform:rotate(var(--r2,-1deg))}
.act:hover,.anim .act.rv.in:hover{transform:rotate(0) translateY(-3px)}
.act-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.act-b{padding:10px 4px 0}
.act h3{font-family:var(--fh);font-weight:700;font-size:24px;line-height:1.05;letter-spacing:0}
.act p{margin-top:4px;font-size:13.5px;color:var(--ink3);line-height:1.45}
@media(max-width:960px){.acts>.act{flex-basis:calc((100% - 36px)/3)}}
@media(max-width:700px){.acts{gap:16px 12px}.acts>.act{flex-basis:calc((100% - 12px)/2)}.act h3{font-size:21px}}

/* ---------- gallery ---------- */
.gal{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:16px;grid-auto-flow:dense}
.g{display:block;background:#fff;padding:7px;box-shadow:0 10px 20px -10px rgba(46,42,34,.4);transform:rotate(var(--r2,.8deg));transition:transform .2s}
.g:nth-child(2n){--r2:-1deg}.g:nth-child(3n){--r2:.3deg}
.anim .g.rv.in{transform:rotate(var(--r2,.8deg))}
.g:hover,.anim .g.rv.in:hover{transform:rotate(0) scale(1.02);z-index:2}
.g.wide{grid-column:span 2;grid-row:span 2}
.g img{width:100%;height:100%;object-fit:cover}
@media(max-width:700px){.gal{grid-template-columns:1fr 1fr;grid-auto-rows:140px;gap:10px}}
.lb{position:fixed;inset:0;z-index:90;background:rgba(30,26,20,.93);display:none;align-items:center;justify-content:center;padding:20px}
.lb.open{display:flex}
.lb img{max-width:min(1200px,100%);max-height:86vh;object-fit:contain;border:8px solid #fff}
.lb button{position:absolute;color:#fff;width:52px;height:52px;border-radius:999px;background:rgba(255,255,255,.14);display:grid;place-items:center;font-size:24px}
.lb .x{top:16px;right:16px}.lb .pv{left:12px;top:50%}.lb .nx{right:12px;top:50%}
.lb .cap{position:absolute;bottom:14px;left:0;right:0;text-align:center;color:#eee;font:600 22px var(--fh)}

/* ---------- testimonials ---------- */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.quote{position:relative;background:var(--card);border-radius:4px;padding:30px 24px 22px;box-shadow:0 1px 0 rgba(46,42,34,.08),0 14px 24px -12px rgba(46,42,34,.4);display:flex;flex-direction:column;transform:rotate(var(--r2,-.8deg));
 background-image:repeating-linear-gradient(transparent 0 27px,rgba(43,111,140,.12) 27px 28px);background-position:0 18px}
.quote:nth-child(2){--r2:.9deg}.quote:nth-child(3){--r2:-.3deg}
.anim .quote.rv.in{transform:rotate(var(--r2,-.8deg))}
.quote::before{content:"";position:absolute;width:24px;height:66px;top:-30px;left:22px;transform:rotate(-6deg);background:var(--clip)}
.qm{color:var(--a);opacity:.9}
.quote blockquote{margin:8px 0 0;flex:1}
.qh{font-family:var(--fh);font-weight:700;font-size:27px;letter-spacing:0;line-height:1.1;margin-bottom:8px;color:var(--ink)}
.quote blockquote p:not(.qh){font-size:14.5px;color:var(--ink2);line-height:1.6}
.quote figcaption{margin-top:16px;padding-top:12px;border-top:1.5px dashed var(--ln);display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--fm);font-size:14px}
.stars{display:inline-flex;gap:2px;color:#E8A317}
.stars svg{width:15px;height:15px;fill:currentColor}
@media(max-width:900px){.quotes{grid-template-columns:1fr;gap:34px}}
.greviews{margin-top:40px;background:var(--card);border:1.5px dashed var(--krd);border-radius:8px;padding:24px;box-shadow:var(--sh)}
.gr-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.gr-head h3{font-size:22px}.gr-head p{color:var(--ink3);margin-top:4px}
.gbadge{display:inline-flex;align-items:center;gap:10px;border:1.5px solid var(--ink);border-radius:8px;padding:10px 14px;background:#fff;transform:rotate(-1.5deg);box-shadow:3px 4px 0 rgba(46,42,34,.15)}
.gbadge b{font-size:26px;font-weight:900;letter-spacing:-.02em}
.gbadge span{font:700 12.5px var(--fm);color:var(--ink3)}
.gr-list{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,1fr);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;scrollbar-width:none}
.gr-list::-webkit-scrollbar{display:none}
.gr{scroll-snap-align:start;border:1.5px solid var(--ln);border-radius:6px;padding:16px;background:#fff}
.gr-top{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.gr-top b{font-size:14.5px;flex:1}
.av{width:34px;height:34px;border-radius:999px;background:color-mix(in srgb,var(--a) 16%,#fff);color:var(--a);display:grid;place-items:center;font-weight:900}
.gr p{margin-top:8px;font-size:13.5px;color:var(--ink2);line-height:1.55;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}

/* ---------- team ---------- */
.team{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.team-t{display:grid;gap:10px}
.lead-card{margin-top:10px;display:flex;gap:16px;align-items:flex-start;background:var(--kfib),var(--kr);border-radius:6px;padding:20px;outline:2px dashed rgba(255,250,238,.85);outline-offset:-8px;box-shadow:var(--shb)}
.lead-img{width:96px;height:96px;object-fit:cover;flex:none;border:5px solid #fff;box-shadow:0 6px 12px -6px rgba(46,42,34,.5);transform:rotate(-3deg)}
.lead-card b{font-size:18px}
.lead-card p{margin-top:6px;font-size:14px;color:#4A4335}
.team-img{background:#fff;padding:10px 10px 30px;box-shadow:0 14px 28px -8px rgba(46,42,34,.34);transform:rotate(2deg)}
@media(max-width:900px){.team{grid-template-columns:1fr}}
@media(max-width:480px){.lead-card{flex-direction:column}}

/* ---------- location ---------- */
.addr{display:inline-flex;align-items:center;gap:8px;font:700 14px var(--fm);color:var(--a)}
.places{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.place{position:relative;background:#fff;padding:7px 7px 34px;box-shadow:0 10px 20px -10px rgba(46,42,34,.4)}
.place:nth-child(odd){transform:rotate(-.8deg)}.place:nth-child(even){transform:rotate(.9deg)}
.place.big{grid-column:span 2;grid-row:span 2}.place.s2{grid-column:span 2}.place.s4{grid-column:span 4}
.place.s2 img,.place.s4 img{aspect-ratio:16/6.4}
.place img{width:100%;height:100%;aspect-ratio:16/10;object-fit:cover}
.place span{position:absolute;left:0;right:0;bottom:4px;text-align:center;font:600 21px/1.1 var(--fh);color:var(--ink2)}
@media(max-width:700px){.places{grid-template-columns:1fr 1fr;gap:12px}.place.s4{grid-column:span 2}}

/* ---------- tickets (live sessions) ---------- */
.tickets{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 22px;align-items:start;filter:drop-shadow(0 2px 0 var(--krd)) drop-shadow(3px 10px 9px rgba(46,42,34,.24))}
.tickets.two{grid-template-columns:repeat(2,minmax(0,360px))}
.tickets.one{grid-template-columns:minmax(0,380px)}
.ticket{position:relative;background:var(--kfib),var(--kr);border-radius:10px;padding:58px 24px 24px;transform:rotate(var(--rot,0deg));
 clip-path:polygon(18% 0,82% 0,100% 10%,100% 100%,0 100%,0 10%);-webkit-mask:radial-gradient(circle 8px at 50% 27px,#0000 95%,#000);mask:radial-gradient(circle 8px at 50% 27px,#0000 95%,#000)}
.ticket::before{content:"";position:absolute;left:50%;top:27px;width:32px;height:32px;margin:-16px 0 0 -16px;border-radius:50%;border:7px solid #F1E5C9;box-shadow:inset 0 0 0 1px rgba(46,42,34,.18),0 0 0 1px rgba(46,42,34,.14)}
.anim .ticket.rv.in{transform:rotate(var(--rot,0deg))}
.ticket:hover,.anim .ticket.rv.in:hover{transform:rotate(0)}
.tk{font:700 12.5px/1.3 var(--fm);letter-spacing:.08em;text-transform:uppercase;color:#5A5040}
.ticket h3{margin-top:8px;font-size:26px;font-weight:900}
.tm{margin-top:6px;font:400 13px/1.45 var(--fm);color:#5A5040}
.tav{display:inline-block;margin-top:14px;font:900 13px/1.2 var(--fb);text-transform:uppercase;letter-spacing:.06em;padding:6px 10px;border:2.5px solid currentColor;border-radius:6px;transform:rotate(-3deg);color:var(--a);
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='90'%3E%3Cfilter id='g' x='0' y='0' width='100%25' height='100%25'%3E %3CfeTurbulence type='fractalNoise' baseFrequency='.6' numOctaves='3' seed='5' stitchTiles='stitch'/%3E %3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2.8 2.25'/%3E%3C/filter%3E%3Crect width='180' height='90' filter='url(%23g)'/%3E%3C/svg%3E") 0 0/180px 90px;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='90'%3E%3Cfilter id='g' x='0' y='0' width='100%25' height='100%25'%3E %3CfeTurbulence type='fractalNoise' baseFrequency='.6' numOctaves='3' seed='5' stitchTiles='stitch'/%3E %3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2.8 2.25'/%3E%3C/filter%3E%3Crect width='180' height='90' filter='url(%23g)'/%3E%3C/svg%3E") 0 0/180px 90px}
.tav.low{color:var(--stampc)}.tav.out{color:#5A5040}
.tp{margin-top:12px;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 9px}
.tp b{font-size:32px;font-weight:900;letter-spacing:-.02em}
.tp span{font-size:12.5px;color:#5A5040}
.tdue{font-size:12.5px;color:#5A5040;margin-top:2px}
.ticket .tbtn{margin-top:14px;width:100%}
.ticket .more{display:flex;justify-content:center;color:var(--ink2)}
.ticket.gone h3{color:#6E6350}
@media(max-width:920px){.tickets{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.tickets,.tickets.two,.tickets.one{grid-template-columns:1fr;gap:22px}}
.paysplit{margin-top:34px;max-width:760px;display:grid;gap:12px}
.step{display:flex;align-items:center;gap:10px;font-weight:800;font-size:15px}
.step span{width:28px;height:28px;border-radius:999px;background:var(--a);color:#fff;display:grid;place-items:center;font-size:13px;flex:none}
.kids{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.kid{display:grid;gap:2px;border:1.5px dashed var(--krd);border-radius:6px;padding:12px 14px;background:var(--card)}
.kid b{font:700 13px var(--fm);text-transform:uppercase;letter-spacing:.04em;color:var(--ink2)}
.kid .dep{font-weight:900;font-size:22px;color:var(--a)}
.kid .rest{font-size:12.5px;color:var(--ink3)}
@media(max-width:700px){.kids{grid-template-columns:1fr 1fr}}
.nolive{max-width:560px;display:grid;gap:10px;justify-items:start}
.nolive h3{font-size:20px}.nolive p{font-weight:400}
.nolive.note::after{display:none}
.poster{position:relative;margin-top:44px;max-width:380px}

/* booking box (inquiry camps and fallback) */
.book{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;background:var(--card);border:1.5px dashed var(--krd);border-radius:8px;padding:30px;box-shadow:var(--sh)}
.book-h{display:grid;gap:10px;align-content:start}
.bnote{color:var(--ink2);font-size:15px}
.book .poster{margin-top:10px;background:#fff;padding:8px;box-shadow:var(--sh)}
.book-b{display:grid;gap:16px;align-content:start}
.book .tickets{grid-template-columns:1fr}
.book .kids{grid-template-columns:1fr 1fr}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:6px}
.camp-card{position:relative;background:var(--kfib),var(--kr);border-radius:8px;padding:22px 18px 16px;box-shadow:var(--shb)}
.pinb{display:none}
.ck{font:700 12px var(--fm);letter-spacing:.08em;text-transform:uppercase;color:#5A5040}
.camp-card h3{margin-top:6px;font-size:22px}
.cav{margin-top:10px;font-size:13.5px;font-weight:900;color:var(--a)}
.cav.out{color:var(--warn)}
.book-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}
@media(max-width:960px){.book{grid-template-columns:1fr;padding:22px}}
@media(max-width:520px){.cards,.book .kids{grid-template-columns:1fr}.book{padding:18px}}

/* ---------- faq ---------- */
.faq{max-width:860px}
details{background:var(--card);border:0;border-left:10px solid var(--kr);border-radius:4px;margin-bottom:10px;box-shadow:0 1px 0 rgba(46,42,34,.12)}
summary{list-style:none;cursor:pointer;padding:15px 18px;font-weight:800;font-size:15.5px;display:flex;justify-content:space-between;gap:14px;align-items:center}
summary::-webkit-details-marker{display:none}
summary b{font-family:var(--fh);color:var(--a);font-size:30px;line-height:.8;font-weight:700;transition:transform .2s;flex:none}
details[open] summary b{transform:rotate(45deg)}
.ans{padding:0 18px 18px;font-size:15px;color:var(--ink2);display:grid;gap:10px;max-width:72ch}
.sched{display:grid;gap:0;border-left:2.5px dashed var(--krd);margin-left:6px;padding-left:18px}
.sched li{position:relative;display:flex;gap:12px;padding:6px 0;font-size:14.5px}
.sched li::before{content:"";position:absolute;left:-25px;top:13px;width:11px;height:11px;border-radius:99px;background:var(--card);border:2.5px solid var(--a)}
.sched time{font:700 14px var(--fm);color:var(--ink);min-width:52px}
.sched .blk{font-weight:900;color:var(--a);letter-spacing:.04em}
.sched li.det{padding:0 0 8px 64px;font-size:13.5px;color:var(--ink3)}
.sched li.det::before{display:none}

/* ---------- contact strip ---------- */
.contact{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;background:var(--ink);color:var(--pap);border-radius:8px;padding:30px;outline:2px dashed rgba(244,236,220,.35);outline-offset:-10px}
.contact p{color:#D9CFB8;margin-top:8px;max-width:52ch}
.contact-a{display:grid;gap:10px;justify-items:start}
.contact .small{color:#D9CFB8}
.tel{display:inline-flex;gap:8px;align-items:center;color:#fff;font-weight:900;font-size:18px;text-decoration:none;margin-top:4px}

/* ---------- home ---------- */
.home-hero .display{font-size:clamp(42px,6.2vw,72px)}
.home-hero .say{font-size:clamp(22px,2.4vw,27px)}
.ccards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.ccard{transform:rotate(var(--rot,0deg));transition:transform .18s}
.anim .ccard.rv.in{transform:rotate(var(--rot,0deg))}
.ccard:hover,.anim .ccard.rv.in:hover{transform:rotate(0) translateY(-4px)}
.ccard a{position:relative;display:flex;flex-direction:column;gap:6px;height:100%;padding:22px 18px 18px;background:var(--kfib),var(--kr);border-radius:8px;text-decoration:none;
 outline:2px dashed rgba(255,250,238,.85);outline-offset:-8px;box-shadow:0 2px 0 var(--krd),0 14px 22px -12px rgba(46,42,34,.6)}
.ccard:nth-child(4n+2) a{background:var(--kfib),#CBD3B0}.ccard:nth-child(4n+3) a{background:var(--kfib),#E0C3A4}
.cc-img{display:block;margin:-6px -4px 8px;background:#fff;padding:7px 7px 4px;transform:rotate(-1.5deg);box-shadow:0 8px 16px -8px rgba(46,42,34,.5)}
.cc-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.cc-ic{width:44px;height:44px;border-radius:999px;background:var(--a);color:#fff;display:grid;place-items:center;margin-bottom:4px;box-shadow:0 0 0 3px #FFFDF6,0 0 0 4.5px var(--ink)}
.ccard b{font-size:22px;font-weight:900;letter-spacing:-.02em;line-height:1.1;color:var(--ink)}
.cs-k{font-size:13.5px;color:#4A4335;margin-bottom:6px;line-height:1.4}
.cs-m{display:flex;gap:7px;align-items:center;font:700 12.5px/1.35 var(--fm);color:#4A4335}
.cs-m .ic{color:var(--a)}
.cs-p{margin-top:6px;font-size:13px;color:#4A4335}.cs-p b{font-size:22px;font-weight:900;color:var(--ink)}
.cs-go{margin-top:auto;padding-top:10px;display:inline-flex;gap:6px;align-items:center;font-family:var(--fh);font-weight:700;font-size:23px;color:var(--a)}
@media(max-width:1000px){.ccards{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.ccards{grid-template-columns:1fr}}
.proj{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;background:var(--card);border:1.5px dashed var(--krd);border-radius:8px;padding:24px;box-shadow:var(--sh)}
.proj figure{background:#fff;padding:8px 8px 26px;box-shadow:0 12px 22px -10px rgba(46,42,34,.4);transform:rotate(-1.5deg)}
.proj p{font-size:16.5px;color:var(--ink2)}
@media(max-width:900px){.proj{grid-template-columns:1fr}}
.infra{margin-top:30px;display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap;border:2px dashed var(--a);border-radius:8px;padding:24px 26px;background:color-mix(in srgb,var(--a) 5%,var(--card))}
.infra>div{max-width:64ch;display:grid;gap:8px}
.infra h2{font-size:clamp(21px,2.4vw,27px)}
.infra p{color:var(--ink2)}
.svc{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
#adults .svc{grid-template-columns:repeat(3,1fr)}
.svc-c{background:#fff;padding:8px 8px 4px;box-shadow:0 1px 0 rgba(46,42,34,.08),0 12px 22px -10px rgba(46,42,34,.32);display:flex;flex-direction:column}
.svc-c:nth-child(odd){transform:rotate(-.6deg)}.svc-c:nth-child(even){transform:rotate(.7deg)}
.svc-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.svc-b{padding:12px 8px 12px;display:flex;flex-direction:column;flex:1}
.svc-b h3{font-size:17px;line-height:1.25}
.svc-b h3 a{text-decoration:none}.svc-b h3 a:hover{color:var(--a)}
.svc-b p{margin-top:8px;font-size:13.8px;color:var(--ink2);flex:1}
@media(max-width:960px){.svc,#adults .svc{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.svc,#adults .svc{grid-template-columns:1fr}}
.rent{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rent-c{background:var(--card);border:1.5px solid var(--ink);border-radius:8px;overflow:hidden;box-shadow:4px 5px 0 rgba(46,42,34,.14);display:flex;flex-direction:column}
.rent-img{position:relative}
.rent-img img{width:100%;aspect-ratio:16/10;object-fit:cover;border-bottom:1.5px dashed var(--krd)}
.tag{position:absolute;left:12px;top:12px;background:var(--kfib),var(--kr);border-radius:4px;padding:4px 10px;font:700 11.5px var(--fm);letter-spacing:.1em;text-transform:uppercase;transform:rotate(-3deg)}
.rent-b{padding:18px;display:flex;flex-direction:column;flex:1}
.rent-b h3{font-size:20px}
.rs{margin-top:4px;font-size:14px;color:var(--ink3)}
.rp{margin-top:8px;font-size:26px;font-weight:900;color:var(--a);letter-spacing:-.02em}
.rent-b>p:not(.rs):not(.rp){margin-top:8px;font-size:14px;color:var(--ink2);flex:1}
@media(max-width:860px){.rent{grid-template-columns:1fr}}

/* 404 */
.nf{padding-block:80px 40px}
.nf .display{margin-top:10px}

/* ---------- footer ---------- */
.foot{border-top:2px dashed var(--krd);padding-block:40px 22px;margin-top:50px;background:color-mix(in srgb,var(--kr) 14%,transparent)}
.foot-g{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:34px}
.foot .brand{margin-bottom:14px}
.fh{font:700 12.5px var(--fm);letter-spacing:.14em;color:var(--a);margin-bottom:10px}
.fcol p{font-size:14px;color:var(--ink2);line-height:1.7}
.fcol p+p{margin-top:12px}
.flinks{margin-top:12px;display:grid;gap:4px;font-size:14px}
.foot a{text-decoration:none}
.foot a:hover{text-decoration:underline}
.fbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:30px;padding-top:16px;border-top:1.5px dashed var(--ln);font-size:13px;color:var(--ink3)}
.fbar .hand{font-size:24px}
.fbar a{display:inline-flex;gap:6px;align-items:center}
@media(max-width:820px){.foot-g{grid-template-columns:1fr;gap:24px}}

/* sticky mobile CTA */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:50;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(244,236,220,.96);backdrop-filter:blur(8px);border-top:2px dashed var(--krd);transform:translateY(110%);transition:transform .25s ease;display:none}
.sticky-cta .tbtn{width:100%}
.sticky-cta.show{transform:none}
@media(max-width:760px){.sticky-cta{display:block}.k-camp .foot{padding-bottom:90px}}

/* staging gate */
.gate{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;margin:0}
.gate-card{margin:auto;width:min(420px,100%);background:var(--card);border:1.5px solid var(--ink);border-radius:8px;padding:28px;box-shadow:4px 6px 0 rgba(46,42,34,.16);display:grid;gap:12px}
.gate-card img{border-radius:999px}
.gate-card h1{font-size:24px}
.gate-card p{color:var(--ink2);font-size:14.5px}
.gate-card label{font-weight:800;font-size:13px;margin-top:6px}
.gate-card input{font:inherit;padding:12px 14px;border:1.5px solid var(--ink);border-radius:8px;background:#fff}
.gate-err{color:var(--warn)!important;font-weight:700}

/* ---------- generic content pages, booking, parent pages ---------- */
.phead{display:grid;grid-template-columns:1fr;gap:34px;align-items:center;padding-block:40px 18px}
.phead.has-hero{grid-template-columns:1.1fr .9fr}
.phead h1{font-size:clamp(34px,5vw,58px);letter-spacing:-.03em;line-height:1.02;margin-top:14px}
.crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px;font-weight:700;color:var(--ink3)}
.crumbs a{color:var(--a);text-decoration:none}.crumbs a:hover{text-decoration:underline}
.crumbs .sep{opacity:.5}
.pmeta{margin-top:12px;display:inline-flex;gap:8px;align-items:center;font-size:13.5px;font-weight:700;color:var(--ink2);background:var(--card);border:1.5px solid var(--ln);border-radius:999px;padding:6px 12px}
.phead-img{border:2.5px solid var(--ink);border-radius:22px;overflow:hidden;box-shadow:8px 10px 0 rgba(40,49,31,.16);background:var(--card)}
.phead-img img{width:100%;aspect-ratio:16/11;object-fit:cover}
@media(max-width:900px){.phead.has-hero{grid-template-columns:1fr;gap:22px}}
.prose-wrap{padding-bottom:30px}
.prose{max-width:820px;background:var(--card);border:1.5px solid var(--ln);border-radius:22px;padding:34px 40px;box-shadow:var(--sh);font-size:16.5px;color:var(--ink2);display:flow-root}
.prose>*+*{margin-top:16px}
.prose h2{font-size:clamp(23px,2.6vw,30px);color:var(--ink);margin-top:38px}
.prose h3{font-size:20px;color:var(--ink);margin-top:28px}
.prose h4{font-size:17px;color:var(--ink);margin-top:22px}
.prose>h2:first-child,.prose>h3:first-child{margin-top:0}
.prose a:not(.tbtn):not(.more){color:var(--a);font-weight:700}
.prose strong{color:var(--ink)}
.prose .ovl{margin-top:28px}
.ticks{display:grid;gap:9px}
.ticks li{position:relative;padding-left:30px}
.ticks li::before{content:"";position:absolute;left:0;top:.3em;width:18px;height:18px;border-radius:6px;background:color-mix(in srgb,var(--a) 13%,#fff) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F6B3F' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat}
.pfig{width:min(46%,360px);border:2px solid var(--ink);border-radius:16px;overflow:hidden;margin-bottom:10px}
.pfig.r{float:right;margin-left:24px}.pfig.l{float:left;margin-right:24px}
.pfig img{width:100%}
@media(max-width:700px){.pfig,.pfig.r,.pfig.l{float:none;width:100%;margin:16px 0}}
.pgal{display:grid;gap:10px;clear:both}
.pgal.c2{grid-template-columns:1fr 1fr}.pgal.c3{grid-template-columns:repeat(3,1fr)}
.pgal.c1{grid-template-columns:1fr}
.pgal a{display:block;border:2px solid var(--ink);border-radius:14px;overflow:hidden}
.pgal img{width:100%;aspect-ratio:4/3;object-fit:cover}
@media(max-width:560px){.pgal.c3{grid-template-columns:1fr 1fr}}
.logos{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;clear:both}
.logos li{background:#fff;border:1.5px solid var(--ln);border-radius:14px;padding:14px;display:grid;place-items:center;min-height:100px}
.logos img{max-height:72px;width:auto;object-fit:contain}
.pfacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;clear:both}
.pfacts li{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1.5px solid var(--ln);border-radius:14px;padding:14px}
.pfacts b{display:block;color:var(--ink);font-size:14.5px}
.pfacts span:not(.wn){display:block;font-size:14px}
.chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
.chips li{background:#fff;border:1.5px solid var(--ln);border-radius:12px;padding:10px 12px;font-size:14.5px;font-weight:600;color:var(--ink)}
.pbtns{display:flex;flex-wrap:wrap;gap:12px;clear:both;padding-top:6px}
.lcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;clear:both}
.lcards a{display:grid;gap:6px;height:100%;background:#fff;border:2px solid var(--ink);border-radius:16px;padding:16px;text-decoration:none!important;box-shadow:var(--sh);transition:transform .15s}
.lcards a:hover{transform:translateY(-2px)}
.lcards b{color:var(--ink);font-size:16px;letter-spacing:-.01em}
.lcards span{font-size:14px;color:var(--ink2);font-weight:400}
.lcards em{font-style:normal;font-size:13.5px;color:var(--a);font-weight:800;display:inline-flex;gap:6px;align-items:center;margin-top:4px}
.svc.wide{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.prose .faq{max-width:none}
.yt{clear:both;position:relative;border:2px solid var(--ink);border-radius:16px;overflow:hidden;aspect-ratio:16/9;background:#111}
.yt-btn{position:absolute;inset:0;width:100%;height:100%;padding:0}
.yt-btn img{width:100%;height:100%;object-fit:cover;opacity:.9;transition:opacity .2s}
.yt-btn:hover img{opacity:1}
.yt-play{position:absolute;left:50%;top:50%;width:68px;height:48px;transform:translate(-50%,-50%)}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.pcontact{clear:both;margin-top:26px}
.pcontact h2{color:var(--map)!important;margin-top:0!important}
.pcontact .tbtn{color:#fff!important}
.ptable{overflow-x:auto}.ptable table{border-collapse:collapse;width:100%;font-size:14.5px}.ptable td{border:1px solid var(--ln);padding:8px 10px}
@media(max-width:600px){.prose{padding:22px 18px;border-radius:16px;font-size:16px}}
/* hub */
.pick{font-size:22px;margin-bottom:16px}
.hubs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hub a{display:flex;flex-direction:column;height:100%;background:var(--card);border:2px solid var(--ink);border-radius:18px;overflow:hidden;box-shadow:var(--shb);text-decoration:none;transition:transform .15s}
.hub a:hover{transform:translateY(-3px)}
.hub-img{position:relative;border-bottom:2px solid var(--ink)}
.hub-img img{width:100%;aspect-ratio:16/10;object-fit:cover}
.hub-st{position:absolute;right:12px;bottom:12px;background:var(--warn);color:#fff;border-radius:999px;padding:4px 11px;font-size:12px;font-weight:800;letter-spacing:.03em}
.hub-b{padding:16px 18px 18px;display:grid;gap:7px}
.hub-b b{font-size:21px;letter-spacing:-.02em;color:var(--ink)}
.hub-b .more{margin-top:4px;color:var(--a)}
@media(max-width:960px){.hubs{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.hubs{grid-template-columns:1fr}}

.pfacts .wn{background:#fff;border:1.5px solid var(--ln)}
.ficon{width:28px;height:28px;object-fit:contain}

.pcontact .tel{color:#fff!important}
.hub-img img{aspect-ratio:auto;height:auto}
.ptable{border:1.5px solid var(--ln);border-radius:14px;overflow:auto;background:#fff}
.ptable table{border-collapse:collapse;min-width:520px}
.ptable th,.ptable td{border:0;border-bottom:1px solid var(--ln);padding:10px 12px;text-align:left;font-size:14px}
.ptable thead th{background:color-mix(in srgb,var(--a) 8%,#fff);color:var(--ink);font-weight:800}
.ptable tbody th{color:var(--ink);font-weight:700;width:34%}
.ptable td{font-weight:800;color:var(--a);white-space:nowrap}
.ptable tr:last-child th,.ptable tr:last-child td{border-bottom:0}
/* ===== live sessions (DB) ===== */
.cards.live .camp-card{display:grid;gap:4px;align-content:start}
.lv-meta{font-size:13px;color:var(--ink3)}
.lv-price{margin-top:6px;display:grid;gap:2px}
.lv-price b{font-size:22px;font-weight:800}
.lv-price span{font-size:12.5px;color:var(--ink2)}
.cav.low{color:var(--warn)}
.camp-card .tbtn{margin-top:10px;min-height:44px;padding:10px 18px;font-size:14px}
.nolive{border:2px dashed var(--ln);border-radius:16px;padding:22px;display:grid;gap:10px;justify-items:start;background:#fff}
.nolive h3{font-size:19px}
.prevbar{background:var(--warn);color:#fff;text-align:center;font-weight:800;font-size:13.5px;padding:9px 16px}
/* ===== booking / parent pages ===== */
.bk{padding-top:28px;padding-bottom:70px}
.bk h1{font-size:clamp(26px,4vw,38px);line-height:1.1;margin:6px 0 6px}
.bk-lead{color:var(--ink2);font-size:16px;margin-bottom:20px}
.crumbs{font-size:13px;color:var(--ink3);margin-bottom:8px}.crumbs a{color:var(--a);font-weight:700}
.bk-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:26px;align-items:start}
@media(max-width:900px){.bk-grid{grid-template-columns:1fr}.bk-sum{order:-1}}
.bk-main{display:grid;gap:16px;min-width:0}
.bk-box{background:var(--card);border:2px solid var(--ink);border-radius:18px;padding:20px 20px 16px;box-shadow:var(--shb);margin:0;min-width:0}
.bk-box h2{font-size:20px;margin-bottom:8px}
.bk-box legend{display:flex;align-items:center;gap:10px;font-weight:800;font-size:17px;padding:0 6px;margin-left:-6px}
.bk-box legend span{width:28px;height:28px;border-radius:99px;background:var(--a);color:#fff;display:grid;place-items:center;font-size:13px}
.bkf{display:grid;gap:16px}
.bkf label{display:grid;gap:5px;font-size:13px;font-weight:700;color:var(--ink2);margin-top:10px}
.bkf input:not([type=radio]):not([type=checkbox]),.bkf select,.bkf textarea{font:inherit;font-size:15px;font-weight:500;color:var(--ink);background:#fff;border:1.5px solid var(--ln);border-radius:10px;padding:11px 12px;min-height:46px;width:100%}
.bkf textarea{min-height:0;resize:vertical}
.bkf input:focus,.bkf select:focus,.bkf textarea:focus{outline:2.5px solid var(--a);outline-offset:0;border-color:var(--a)}
.bkf .g2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
@media(max-width:560px){.bkf .g2{grid-template-columns:1fr}}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.seg-n{display:flex;gap:10px;margin-top:6px}
.seg-n label{margin:0}
.seg-n input{position:absolute;opacity:0}
.seg-n span{display:grid;place-items:center;width:56px;height:56px;border:2px solid var(--ink);border-radius:14px;font-size:20px;font-weight:800;background:#fff;cursor:pointer}
.seg-n input:checked+span{background:var(--a);border-color:var(--a);color:#fff}
.seg-n input:focus-visible+span{outline:2.5px solid var(--a);outline-offset:3px}
.seg-n input:disabled+span{opacity:.35;cursor:not-allowed}
.sublbl{margin-top:14px;font-size:13px;font-weight:800;color:var(--ink2)}.sublbl span,.opt{font-weight:500;color:var(--ink3)}
.ex{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}
@media(max-width:560px){.ex{grid-template-columns:1fr}}
.bkf .exi{display:flex;align-items:center;gap:9px;margin:0;border:1.5px solid var(--ln);border-radius:10px;padding:10px 12px;background:#fff;font-weight:600;color:var(--ink);cursor:pointer}
.exi b{margin-left:auto}.exi em{font-style:normal;font-size:11.5px;color:var(--warn);font-weight:800}
.exi.off{opacity:.55;cursor:not-allowed}
.bkf input[type=checkbox],.bkf input[type=radio]{accent-color:var(--a);width:18px;height:18px;flex:none}
.pay,.radios{display:grid;gap:8px;margin-top:6px}
.bkf label + .pay,.bkf label + .payfull{margin-top:16px}
.bkf .pay label,.bkf .radios label{display:flex;gap:10px;align-items:center;margin:0;border:1.5px solid var(--ln);border-radius:10px;padding:12px;background:#fff;font-weight:500;color:var(--ink);cursor:pointer}
.bkf .pay label:has(input:checked),.bkf .radios label:has(input:checked){border-color:var(--a);background:color-mix(in srgb,var(--a) 7%,#fff)}
.bkf .agree{display:flex;gap:10px;align-items:flex-start;font-weight:500;color:var(--ink2);font-size:13.5px}
.bkf .agree a,.hint a,.files a{color:var(--a);font-weight:700}
.files label{align-content:start}.files em.ok,.kl em.ok{font-style:normal;color:var(--a);font-weight:800}
.bkf .code{max-width:280px}
.tbtn.wide{width:100%}
.hint{font-size:13px;color:var(--ink3);margin-top:8px}.hint.center{text-align:center}
.bk-err{background:#FBEAE8;border:2px solid var(--warn);color:#8C2F1E;border-radius:14px;padding:13px 16px;font-weight:700;margin-bottom:14px}
.bk-ok{display:flex;gap:12px;align-items:flex-start;background:color-mix(in srgb,var(--a) 10%,#fff);border:2px solid var(--a);border-radius:14px;padding:14px 16px;margin-bottom:18px}
.bk-ok .ic{color:var(--a);flex:none;margin-top:2px}
.sum{background:var(--card);border:2px solid var(--ink);border-radius:18px;padding:20px;box-shadow:var(--shb);position:sticky;top:90px}
.sum h2{font-size:20px;margin:4px 0 2px}
.sum .sm{font-size:12.5px;color:var(--ink3);margin-top:10px}
.sum dl{display:grid;grid-template-columns:1fr auto;gap:7px 12px;margin-top:14px;font-size:14px}
.sum dt{color:var(--ink2)}.sum dd{margin:0;text-align:right;font-weight:700}
.sum .tot{border-top:1.5px solid var(--ln);padding-top:9px;font-weight:800;color:var(--ink);font-size:16px}
.sum .x{color:var(--ink3);font-weight:500}
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}
.steps3.two{grid-template-columns:repeat(2,1fr)}
@media(max-width:700px){.steps3,.steps3.two{grid-template-columns:1fr}}
.st{display:grid;grid-template-columns:auto 1fr;gap:0 10px;align-items:center;border:2px solid var(--ln);border-radius:14px;padding:12px 14px;background:#fff}
.st span{grid-row:span 2;width:30px;height:30px;border-radius:99px;display:grid;place-items:center;font-weight:800;background:var(--ln);color:var(--ink)}
.st em{font-style:normal;font-size:12.5px;color:var(--ink3)}
.st.done{border-color:var(--a)}.st.done span{background:var(--a);color:#fff}
.bank{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:12px 0;font-size:14.5px;background:#fff;border:1.5px dashed var(--ln);border-radius:12px;padding:14px}
.bank dt{color:var(--ink3)}.bank dd{margin:0;font-weight:700}.mono{font-variant-numeric:tabular-nums;letter-spacing:.02em}
.kl{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:8px}
.kl li{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;border-bottom:1px solid var(--ln);padding-bottom:8px}
.kl span{color:var(--ink3);font-size:13px}.kl em{margin-left:auto;font-style:normal;font-size:13px;font-weight:800}.kl em.no{color:var(--warn)}
.pay-box{border-color:var(--a)}
/* demo checkout */
.ckout{max-width:640px}
.ckbox{background:var(--card);border:2px solid var(--ink);border-radius:20px;padding:26px;box-shadow:var(--shb);display:grid;gap:14px}
.ckhead h1{font-size:40px;margin:6px 0 4px}.ckhead p{color:var(--ink2)}.ckhead .mut{color:var(--ink3);font-size:13px}
.ckdemo{display:table;margin-bottom:8px;background:var(--warn);color:#fff;font-size:11px;font-weight:800;letter-spacing:.12em;padding:4px 10px;border-radius:99px}
.banks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.banks span{border:1.5px solid var(--ln);border-radius:10px;padding:12px 8px;text-align:center;font-weight:700;font-size:13px;background:#fff;color:var(--ink2)}
.ckbtns{display:flex;gap:10px;flex-wrap:wrap}
.paynow{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.bankd{margin-top:14px}.bankd summary{cursor:pointer;font-weight:700;color:var(--a);font-size:14px}
/* cookie consent */
.cc{position:fixed;left:16px;right:16px;bottom:16px;z-index:200;display:flex;justify-content:center;pointer-events:none}
.cc[hidden]{display:none}
.cc-in{pointer-events:auto;max-width:760px;width:100%;background:var(--card);border:2px solid var(--ink);border-radius:18px;box-shadow:var(--shb);padding:18px 20px;display:grid;gap:10px}
.cc-t{font-weight:800;font-size:16px}.cc-p{font-size:13.5px;color:var(--ink2)}.cc-p a{color:var(--a);font-weight:700}
.cc-opts{display:grid;gap:8px;font-size:13.5px}.cc-opts label{display:flex;gap:10px;align-items:flex-start}.cc-opts input{accent-color:var(--a);width:18px;height:18px;margin-top:1px}
.cc-b{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.cc-b .tbtn{min-height:44px;padding:10px 18px;font-size:14px}
.linkbtn{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.cc-b .linkbtn{color:var(--ink2);font-weight:700;font-size:14px}
.cc [hidden]{display:none!important}
.inq{margin-top:22px;clear:both}
.inq h2{margin:0 0 4px}
.inq .hint{margin:0 0 4px;color:var(--ink2)}
.inq .x{font-weight:500;color:var(--ink2)}
.inq .tbtn{justify-self:start;margin-top:6px}
@media (max-width:640px){.inq.bkf .g2{grid-template-columns:1fr}}
.inq-price{font-weight:800;font-size:19px;margin:0 0 14px;color:var(--ink)}
.book-b .inq{margin-top:0}
.xq[hidden]{display:none!important}.req{color:#B3261E}
/* kid-info form questions (drawn from the form builder) */
.fq[hidden]{display:none!important}
.bkf .lt{display:block}.bkf .hlp{display:block;font-weight:500;font-size:12.5px;color:var(--ink3)}.bkf p.hlp{margin:2px 0 0}
.bkf .sublbl .opt{font-weight:500}
.xinfo{margin-top:14px;padding:12px 14px;border-left:4px solid var(--a);background:color-mix(in srgb,var(--a) 6%,#fff);border-radius:6px;font-size:14px;color:var(--ink2)}
.xinfo p{margin:0}.xinfo p+p{margin-top:4px}.xinfo .xinfo-t{font-weight:800;color:var(--ink)}
/* self-hosted video: nothing loads until the visitor presses play */
.vid{position:relative;border:2px solid var(--ink);border-radius:18px;overflow:hidden;aspect-ratio:1280/544;background:#111;box-shadow:var(--shb)}
.vid video{width:100%;height:100%;display:block;background:#000}
.vid-play{position:absolute;left:50%;top:50%;width:76px;height:76px;transform:translate(-50%,-50%);transition:transform .2s}
.vid-btn:hover .vid-play{transform:translate(-50%,-50%) scale(1.08)}
.vid-len{position:absolute;right:12px;bottom:10px;background:rgba(0,0,0,.65);color:#fff;font-size:13px;font-weight:700;padding:3px 8px;border-radius:6px}
.payfull{margin:0 0 10px;padding:12px 14px;border:1.5px solid var(--a);border-radius:10px;background:color-mix(in srgb,var(--a) 7%,#fff)}
.vid-btn{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:none;cursor:pointer}.vid-btn img{width:100%;height:100%;object-fit:cover;opacity:.92;transition:opacity .2s}.vid-btn:hover img{opacity:1}.vid-btn:focus-visible{outline:3px solid var(--a);outline-offset:-3px}

/* ===== J2 layer for content, booking and parent pages ===== */
.phead h1{font-weight:900;margin-top:8px}
.phead .hand{margin-top:14px}
.phead h1 .u{margin-top:8px}
.crumbs{font:700 12.5px var(--fm);color:var(--ink3)}
.pmeta{font-family:var(--fm);border:1.5px dashed var(--krd);border-radius:6px;background:var(--card)}
.phead-img{border:0;border-radius:0;background:#fff;padding:10px 10px 30px;box-shadow:0 14px 28px -8px rgba(46,42,34,.34);transform:rotate(2deg)}
.prose{border:0;border-radius:4px;background:var(--card);box-shadow:0 1px 0 rgba(46,42,34,.08),0 18px 34px -18px rgba(46,42,34,.4)}
.prose .ovl{font-size:28px}
.ticks li::before{border-radius:4px;background-color:var(--kr)}
.pfig,.pgal a{border:0;border-radius:0;background:#fff;padding:7px;box-shadow:0 10px 20px -10px rgba(46,42,34,.4)}
.pfig.r{transform:rotate(1.2deg)}.pfig.l{transform:rotate(-1.2deg)}
.logos li,.pfacts li,.chips li{border-radius:6px}
.chips li{border-style:dashed;border-color:var(--krd)}
.lcards a{border:0;border-radius:6px;background:var(--kfib),var(--kr);outline:2px dashed rgba(255,250,238,.85);outline-offset:-7px;box-shadow:var(--shb)}
.lcards span{color:#4A4335}
.yt,.vid{border:0;border-radius:0;outline:8px solid #fff;box-shadow:0 18px 30px -14px rgba(46,42,34,.5)}
.vid{margin:8px}
.ptable{border-radius:6px}
.hubs .hub a,.hub a{border:0;border-radius:6px;background:var(--kfib),var(--kr);box-shadow:var(--shb)}
.hub-img{border:0;padding:7px 7px 0}
.hub-st{border-radius:4px;font-family:var(--fm)}
.bk .hand{margin-bottom:2px}
.bk-box,.sum,.ckbox{border:0;border-radius:6px;background:var(--card);box-shadow:0 1px 0 rgba(46,42,34,.08),0 14px 26px -14px rgba(46,42,34,.4);border-top:6px solid var(--kr)}
.bk-box legend{font-size:18px}
.bk-box legend span,.step span{background:var(--a)}
.bkf input:not([type=radio]):not([type=checkbox]),.bkf select,.bkf textarea{border-radius:6px;border-color:var(--ln);background:#fff}
.seg-n span{border:1.5px dashed var(--krd);border-radius:8px;font-weight:900}
.seg-n input:checked+span{border-style:solid}
.bkf .exi,.bkf .pay label,.bkf .radios label{border-radius:6px}
.st{border-style:dashed;border-radius:6px}
.st.done{border-style:solid}
.bank{border-radius:6px}
.bk-err{border-radius:6px}
.bk-ok{border-radius:6px}
.ckdemo{border-radius:4px;font-family:var(--fm)}
.cc-in{border:1.5px solid var(--ink);border-radius:8px;box-shadow:4px 6px 0 rgba(46,42,34,.18)}
.cc-t{font-family:var(--fh);font-size:26px;font-weight:700;color:var(--a)}
.pcontact h2{color:var(--pap)!important}

/* ===== J2 content pages (views/page.php) ===== */
.j-hero{grid-template-columns:1.15fr .85fr;gap:44px;padding-block:40px 6px;align-items:center}
.j-hero:not(.has-hero){grid-template-columns:1fr 330px}
.j-hero .phead-t{min-width:0}
.j-hero h1{font-size:clamp(36px,5.2vw,62px);font-weight:900;letter-spacing:-.03em;line-height:1.02;margin-top:6px;display:inline-block}
.j-hero .hand{margin-top:16px}
.j-hero .hero-cta{margin-top:22px}
.tellink{display:inline-flex;align-items:center;gap:7px;font:700 14px var(--fm);color:var(--ink2);text-decoration:none}
.tellink:hover{color:var(--a);text-decoration:underline}
.hr-one{min-height:0;padding:28px 6px 0}
.hr-one .pol.p1{position:relative;width:100%;left:auto;top:auto;transform:rotate(2.2deg)}
.hr-one .pol.p1 img{aspect-ratio:4/3}
.hero-note{display:grid;gap:8px;justify-items:start;padding:24px 22px}
.hero-note::after{display:none}
.hn-h{font-family:var(--fh);font-weight:700;font-size:28px;line-height:1.05;color:var(--ink)}
.hero-note p:not(.hn-h){margin:0;font-size:14px;font-weight:400}
.hero-note a,.side-cta a:not(.tbtn){display:inline-flex;gap:8px;align-items:center;font:700 14px var(--fm);color:var(--ink);text-decoration:none}
.hero-note a:hover,.side-cta a:not(.tbtn):hover{text-decoration:underline}
@media(max-width:900px){.j-hero,.j-hero:not(.has-hero){grid-template-columns:1fr;gap:22px}.hero-note{max-width:420px}.hr-one{padding:20px 4px 0;max-width:520px}}
.pmeta{margin-top:14px;font:700 12.5px var(--fm);color:var(--stampc);border:1.5px solid currentColor;border-radius:4px;padding:5px 10px;background:transparent;transform:rotate(-2deg);display:inline-flex;gap:7px;align-items:center}
/* body: paper sheets + side card */
.pbody{display:grid;grid-template-columns:minmax(0,1fr);gap:34px;align-items:start;padding-bottom:20px}
.pbody.has-side{grid-template-columns:minmax(0,1fr) 290px}
.pbody:not(.has-side) .pmain{max-width:none}
.pmain{display:grid;gap:26px;min-width:0}
.pbody.has-side .pmain{max-width:800px}
.sheet{position:relative;background:var(--card);border-radius:3px;padding:34px 38px 32px;font-size:16.5px;color:var(--ink2);display:flow-root;
 box-shadow:0 1px 0 rgba(46,42,34,.08),0 18px 34px -20px rgba(46,42,34,.45)}
.sheet::before{content:"";position:absolute;top:-11px;left:34px;width:92px;height:24px;background:var(--kfib),var(--kr);opacity:.9;transform:rotate(-3deg);box-shadow:0 1px 2px rgba(46,42,34,.15)}
.sheet:nth-child(even)::before{left:auto;right:40px;transform:rotate(4deg);background:var(--kfib),#CBD3B0}
.sheet>*+*{margin-top:16px}
.sheet h2{font-size:clamp(23px,2.6vw,31px);color:var(--ink);font-weight:900;padding-bottom:12px;border-bottom:2px dashed var(--ln);margin-bottom:6px}
.sheet h3{font-size:20px;color:var(--ink);margin-top:28px;font-weight:900}
.sheet h4{font-size:17px;color:var(--ink);margin-top:22px}
.sheet>h3:first-child{margin-top:0}
.sheet a:not(.tbtn):not(.more):not(.addr-card){color:var(--a);font-weight:800;text-decoration-thickness:1.5px;text-underline-offset:3px}
.sheet strong{color:var(--ink)}
.sheet .ovl{margin-top:26px;font-size:28px}
.stamp{display:inline-block;font:700 12.5px/1.2 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--stampc);border:1.5px solid currentColor;border-radius:4px;padding:5px 9px;transform:rotate(-2deg);margin-top:22px!important}
.stamp+p{margin-top:8px}
.ticks{display:grid;gap:10px}
.ticks li{position:relative;padding-left:32px}
.ticks li::before{content:"";position:absolute;left:0;top:.18em;width:20px;height:20px;border-radius:4px;transform:rotate(-4deg);background:var(--kfib),var(--kr)}
.ticks li::after{content:"✓";position:absolute;left:4px;top:-.12em;font:700 22px/1 var(--fh);color:var(--a)}
.pfig{width:min(44%,330px);background:#fff;padding:8px 8px 2px;border:0;border-radius:0;box-shadow:0 12px 22px -10px rgba(46,42,34,.45);margin-bottom:12px;overflow:visible}
.pfig .hand2{font-size:18px;padding:6px 4px 4px}
.pfig.r{float:right;margin-left:26px;transform:rotate(1.8deg)}.pfig.l{float:left;margin-right:26px;transform:rotate(-1.6deg)}
@media(max-width:700px){.pfig,.pfig.r,.pfig.l{float:none;width:100%;margin:18px 0;transform:rotate(-1deg)}}
.pgal{gap:14px;padding-top:6px}
.pgal a{border:0;border-radius:0;background:#fff;padding:7px;box-shadow:0 10px 20px -10px rgba(46,42,34,.45);transition:transform .2s}
.pgal a:nth-child(odd){transform:rotate(-1deg)}.pgal a:nth-child(even){transform:rotate(1.2deg)}
.pgal a:hover{transform:rotate(0) scale(1.02)}
.pfacts{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:start;gap:16px;counter-reset:n;padding-top:6px}
.pfacts li{counter-increment:n;position:relative;display:flex;gap:12px;align-items:flex-start;background:var(--kfib),var(--kr);border:0;border-radius:6px;padding:18px 16px;outline:2px dashed rgba(255,250,238,.85);outline-offset:-7px;box-shadow:0 2px 0 var(--krd),0 10px 18px -12px rgba(46,42,34,.55)}
.pfacts li:nth-child(3n+2){background:var(--kfib),#CBD3B0}.pfacts li:nth-child(3n){background:var(--kfib),#E0C3A4}
.pfacts li:nth-child(odd){transform:rotate(-.8deg)}.pfacts li:nth-child(even){transform:rotate(.9deg)}
.pfacts .wn{width:38px;height:38px;flex:none;background:#FFFDF6;border:0;box-shadow:0 0 0 1.5px var(--ink);color:var(--a)}
.pfacts b{font:700 12px var(--fm);letter-spacing:.08em;text-transform:uppercase;color:#5A5040;margin-bottom:3px}
.pfacts span:not(.wn){font-size:14px;color:var(--ink);font-weight:700;line-height:1.45}
.chips{display:flex;flex-wrap:wrap;gap:10px 12px;padding-top:4px}
.chips li{background:var(--kfib),var(--kr);border:0;border-radius:5px;padding:8px 13px;font:700 13px/1.3 var(--fm);color:var(--ink);outline:1.5px dashed rgba(255,250,238,.9);outline-offset:-4px;box-shadow:0 2px 0 var(--krd)}
.chips li:nth-child(3n+2){background:var(--kfib),#C9D2AA;transform:rotate(1deg)}.chips li:nth-child(3n){background:var(--kfib),#E3BE9C;transform:rotate(-1deg)}
.pbtns{padding-top:8px}
.lcards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;padding-top:6px}
.lcards li:nth-child(odd) a{transform:rotate(-.8deg)}.lcards li:nth-child(even) a{transform:rotate(.8deg)}
.lcards li:nth-child(3n+2) a{background:var(--kfib),#CBD3B0}.lcards li:nth-child(3n) a{background:var(--kfib),#E0C3A4}
.lcards a{padding:20px;gap:8px;transition:transform .18s}
.lcards a:hover{transform:rotate(0) translateY(-3px)!important}
.lcards b{font-size:18px;font-weight:900}
.lcards em{font-family:var(--fh);font-weight:700;font-size:22px;margin-top:auto}
.svc.wide{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px;padding-top:6px}
/* video wall */
.vgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px 22px;padding-top:8px}
.vgrid.one{grid-template-columns:1fr}
.vcard{background:#fff;padding:9px 9px 4px;box-shadow:0 12px 24px -12px rgba(46,42,34,.5);transform:rotate(-.7deg)}
.vcard:nth-child(even){transform:rotate(.8deg)}
.vcard .yt{outline:0;box-shadow:none;border-radius:0}
.vcard .hand2{font-size:21px}
@media(max-width:700px){.vgrid{grid-template-columns:1fr}}
.addr-card{display:inline-grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:center;background:var(--card);border:1.5px dashed var(--krd);border-radius:6px;padding:12px 16px;text-decoration:none;color:var(--ink);box-shadow:0 2px 0 var(--krd)}
.addr-card .ic{color:var(--a);grid-row:span 2}
.addr-card span{font-weight:900}
.addr-card em{font-style:normal;font-family:var(--fh);font-weight:700;font-size:19px;color:var(--a)}
.addr-card:hover{border-style:solid;border-color:var(--a)}
/* contact strip + inquiry form inside a sheet */
.pcontact{clear:both;margin-top:26px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:var(--kfib),var(--kr);color:var(--ink);border-radius:8px;padding:26px 28px;outline:2px dashed rgba(255,250,238,.85);outline-offset:-9px;box-shadow:0 2px 0 var(--krd),0 14px 24px -14px rgba(46,42,34,.55)}
.pcontact .hand{font-size:24px;color:var(--a)!important}
.pcontact h2{color:var(--ink)!important;margin:0!important;border:0;padding:0;font-size:28px}
.pcontact p{color:#4A4335;margin-top:4px}
.pcontact .tel{color:var(--ink)!important}
.contact-a{display:grid;gap:10px;justify-items:start}
.sheet .inq{margin-top:22px;border-top:0;background:#fff;box-shadow:0 1px 0 rgba(46,42,34,.06),0 12px 24px -16px rgba(46,42,34,.5);background-image:repeating-linear-gradient(transparent 0 31px,rgba(43,111,140,.08) 31px 32px)}
.inq h2{border:0;padding:0;font-family:var(--fh);font-size:32px;font-weight:700;color:var(--a);letter-spacing:0}
/* side card */
.pside{position:sticky;top:92px;display:grid;gap:22px}
.side-card{padding:20px}
.toc{background:var(--card);border-radius:3px;box-shadow:0 1px 0 rgba(46,42,34,.08),0 14px 26px -18px rgba(46,42,34,.45);border-left:8px solid var(--kr)}
.toc .hand{font-size:24px;margin-bottom:8px}
.toc ol{counter-reset:t;display:grid;gap:6px}
.toc li{counter-increment:t;display:flex;gap:9px;font-size:14px;line-height:1.35}
.toc li::before{content:counter(t,decimal-leading-zero);font:700 11.5px/1.7 var(--fm);color:var(--stampc)}
.toc a{text-decoration:none;color:var(--ink2);font-weight:700}
.toc a:hover{color:var(--a);text-decoration:underline}
.side-cta{display:grid;gap:9px;justify-items:start}
.side-cta::after{display:none}
.side-cta .tbtn{margin-top:6px;min-height:44px;padding:10px 18px;font-size:14px}
@media(max-width:980px){.pbody.has-side{grid-template-columns:1fr}.pside{position:static}.toc{display:none}}
@media(max-width:600px){.pside{grid-template-columns:1fr}.sheet{padding:26px 20px 24px;font-size:16px}.sheet::before{left:20px}}
.logos li{background:#fff;border:0;box-shadow:0 8px 16px -10px rgba(46,42,34,.4);border-radius:3px}
.ptable{background:#fff;border:1.5px dashed var(--krd);border-radius:6px}
.ptable thead th{background:var(--kfib),var(--kr)}
.yt{border:0;border-radius:0}

/* ===== J2 booking path, parent pages, checkout, 404 ===== */
.bk h1 .u{margin-top:6px}
.bk h1{display:inline-block}
.stamp-in{display:inline-block;font:700 13px/1 var(--fm);letter-spacing:.08em;color:var(--stampc);border:1.5px solid currentColor;border-radius:4px;padding:5px 8px;transform:rotate(-3deg);margin-left:6px}
.steps3{gap:14px}
.st{border:0;border-radius:6px;background:var(--kfib),var(--kr);outline:2px dashed rgba(255,250,238,.85);outline-offset:-6px;box-shadow:0 2px 0 var(--krd),0 10px 18px -12px rgba(46,42,34,.5)}
.st:nth-child(2){background:var(--kfib),#CBD3B0;transform:rotate(.6deg)}.st:nth-child(3){background:var(--kfib),#E0C3A4;transform:rotate(-.5deg)}.st:nth-child(1){transform:rotate(-.6deg)}
.st span{background:#FFFDF6;color:var(--ink);box-shadow:0 0 0 1.5px var(--ink)}
.st.done span{background:var(--a);color:#fff;box-shadow:none}
.st em{color:#4A4335}
.st:not(.done){opacity:1}
.sum{position:sticky;border-top:0;padding-bottom:28px;
 -webkit-mask:linear-gradient(#000,#000) top/100% calc(100% - 10px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/16px 10px repeat-x;
 mask:linear-gradient(#000,#000) top/100% calc(100% - 10px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/16px 10px repeat-x}
.sum h2{font-family:var(--fb)}
.sum dl{font-family:var(--fm);font-size:13.5px}
.sum .tot{border-top:1.5px dashed var(--ln)!important}
.bk-ok{background:var(--kfib),#CBD3B0;border:0;outline:2px dashed rgba(255,250,238,.85);outline-offset:-6px;box-shadow:0 2px 0 var(--krd)}
.bk-err{border-style:dashed}
.bank{background:var(--card);border:1.5px dashed var(--krd)}
.bank dd{font-family:var(--fm)}
.kl em.ok{color:var(--a)}
.ckbox{-webkit-mask:linear-gradient(#000,#000) top/100% calc(100% - 10px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/16px 10px repeat-x;mask:linear-gradient(#000,#000) top/100% calc(100% - 10px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/16px 10px repeat-x;padding-bottom:34px}
.ckhead h1{font-weight:900}
.banks span{border-style:dashed;border-color:var(--krd);border-radius:6px;font-family:var(--fm)}
/* 404 */
.nf{padding-block:56px 20px}
.nf-art{position:relative;display:grid;place-items:center;min-height:320px;color:var(--a)}
.nf-comp{width:min(260px,70%);height:auto;filter:drop-shadow(0 10px 16px rgba(46,42,34,.25));background:#FFFDF6;border-radius:50%}
.nf-art .stick{position:absolute}
.nf-art .s1{top:12%;left:10%}.nf-art .s2{bottom:12%;right:8%}
@media(max-width:900px){.nf-art{min-height:240px}}
/* mobile drawer in J2 */
@media(max-width:1180px){.mnav-l .mt{box-shadow:0 2px 0 var(--ln)}.mnav-foot{border-top:2px dashed var(--krd);padding-top:14px}.mnav-foot a{font-family:var(--fm)}}

/* ================================================================================================
   UX pass 2026-10-13 — layout, legibility and booking-path fixes on top of J2 (see docs/TECHNICAL.md §15).
   Grids whose item count varies take the column count from the template (--c, lib.php cols_for())
   and centre their last row, so a block of 5, 7 or 11 never ends with a lone card on the left.
   ================================================================================================ */
/* a wide table scrolls inside its own box instead of stretching the sheet off the screen */
.pmain,.pmain>*,.sheet{min-width:0}
.ptable{max-width:100%;-webkit-overflow-scrolling:touch}

/* small print: nothing below 13.5px, darker ink on kraft */
.crumbs{font-size:13.5px}
.tk{font-size:13.5px;color:#463F32}
.tm{font-size:14px;color:#463F32}
.tp span,.tdue{font-size:13.5px;color:#463F32}
.cs-m{font-size:13.5px;color:#3F382C}
.legend>*{font-size:13.5px}
.stamp{font-size:13.5px}
.pmeta{font-size:13.5px;transform:rotate(-1.5deg)}
.sum .sm{font-size:13.5px}
.small,.hint{font-size:14px}

/* fact labels on programme pages (Vieta / Trukmė / Kaina…) */
.pfacts{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;padding-top:8px}
.pfacts li{flex:0 1 calc((100% - (var(--c,4) - 1)*18px)/var(--c,4));min-width:0;padding:20px 18px;gap:14px}
.pfacts .wn{width:44px;height:44px;display:grid;place-items:center;border-radius:999px}
.pfacts .wn .ic{width:22px;height:22px}
.pfacts b{font-size:13.5px;letter-spacing:.1em;color:#3B3428;margin-bottom:4px}
.pfacts span:not(.wn){font-size:16.5px;font-weight:800;line-height:1.4;color:var(--ink)}
@media(max-width:960px){.pfacts li{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:540px){.pfacts li{flex-basis:100%}}

/* "Turite klausimų?" note: the heading is the heading */
.note .hn-h{margin-top:4px;font-family:var(--fh);font-weight:700;font-size:32px;line-height:1.05;color:var(--ink)}
.hero-note p:not(.hn-h){font-size:15.5px;color:#3F382C}
.hero-note a,.side-cta a:not(.tbtn){font-size:15px;min-height:32px}
@media(max-width:900px){.hero-note{display:none}}   /* on phones it pushed the content a full screen down; the footer and side card carry the contacts */

/* session tickets */
.tickets,.tickets.one,.tickets.two{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start}
.tickets>.ticket{flex:0 1 calc((100% - (var(--c,3) - 1)*22px)/var(--c,3));max-width:400px;min-width:0}
@media(max-width:1000px){.tickets>.ticket{flex-basis:calc((100% - 22px)/2)}}
@media(max-width:600px){.tickets>.ticket{flex-basis:100%;max-width:none}}
.book .tickets>.ticket{flex-basis:100%;max-width:none}

/* activities, camp cards, photo walls, logos */
@media(min-width:961px){.acts>.act{flex-basis:calc((100% - (var(--c,4) - 1)*18px)/var(--c,4))}}
@media(min-width:1001px){.ccards{grid-template-columns:repeat(var(--c,4),minmax(0,1fr))}}
.pgal,.pgal.c1,.pgal.c2,.pgal.c3{display:flex;flex-wrap:wrap;justify-content:center}
.pgal>a{flex:0 1 calc((100% - (var(--c,3) - 1)*14px)/var(--c,3));min-width:0}
@media(max-width:560px){.pgal>a{flex-basis:calc((100% - 14px)/2)}.pgal.c1>a{flex-basis:100%}}
.logos{display:flex;flex-wrap:wrap;justify-content:center}
.logos li{flex:0 0 150px}
@media(max-width:480px){.logos li{flex-basis:calc((100% - 12px)/2)}}

/* video walls: three across; a leftover one or two become a wider first row */
.vgrid{grid-template-columns:repeat(6,minmax(0,1fr))}
.vgrid>.vcard{grid-column:span 2}
.vgrid.r1>.vcard:first-child{grid-column:2/span 4}
.vgrid.r2>.vcard:nth-child(-n+2),.vgrid.two>.vcard{grid-column:span 3}
.vgrid.one{grid-template-columns:minmax(0,1fr);max-width:760px;margin-inline:auto}
.vgrid.one>.vcard{grid-column:auto}
@media(max-width:900px){
 .vgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .vgrid>.vcard,.vgrid.r2>.vcard:nth-child(-n+2),.vgrid.two>.vcard,.vgrid.r1>.vcard:first-child{grid-column:auto}
 .vgrid>.vcard:first-child:nth-last-child(odd){grid-column:span 2}
}
@media(max-width:700px){.vgrid{grid-template-columns:minmax(0,1fr)}.vgrid>.vcard:first-child:nth-last-child(odd){grid-column:auto}}

/* camp page: dates and prices right under the hero */
.quick{padding-block:10px 6px}
.qk{background:var(--card);border:1.5px dashed var(--krd);border-radius:8px;box-shadow:var(--sh);padding:16px 18px 8px}
.qk-h{display:flex;justify-content:space-between;align-items:baseline;gap:6px 16px;flex-wrap:wrap}
.qk-h a{display:inline-flex;gap:6px;align-items:center;min-height:32px;font:700 13.5px var(--fm);color:var(--ink2);text-decoration:none}
.qk-h a:hover{color:var(--a);text-decoration:underline}
.qk-l{margin-top:4px}
.qk-l li+li{border-top:1.5px dashed var(--ln)}
.qk-r{display:grid;grid-template-columns:minmax(0,1.7fr) 88px minmax(0,1fr) 84px 136px;gap:6px 18px;align-items:center;min-height:60px;padding:10px 8px;border-radius:6px;text-decoration:none;color:var(--ink)}
a.qk-r:hover{background:color-mix(in srgb,var(--a) 7%,#fff)}
a.qk-r:hover .qk-go{transform:translateX(2px)}
.qk-d{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap;font-size:17.5px;min-width:0}
.qk-d b{font-weight:900;letter-spacing:-.01em}
.qk-d .ic{color:var(--a)}
.qk-d em{font:700 12.5px/1.2 var(--fm);font-style:normal;text-transform:uppercase;letter-spacing:.06em;color:var(--ink2);border:1.5px solid currentColor;border-radius:4px;padding:3px 7px}
.qk-m{font:700 14px var(--fm);color:var(--ink2)}
.qk-s{font-size:14px;font-weight:800;color:var(--a)}
.qk-s.low{color:var(--stampc)}.qk-s.out{color:var(--ink3)}
.qk-p{font-size:21px;font-weight:900;text-align:right;white-space:nowrap}
.qk-go{display:inline-flex;gap:6px;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border-radius:8px;background:var(--a);color:#fff;font-weight:900;font-size:14px;transition:transform .13s}
.qk-l .gone .qk-r{color:var(--ink3)}
.qk-l .gone .qk-d .ic{color:var(--ink3)}
@media(max-width:820px){
 .qk{padding:14px 12px 6px}
 .qk-r{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:12px 4px}
 .qk-d{grid-column:1;font-size:16.5px}.qk-p{grid-column:2;grid-row:1}
 .qk-m{display:none}
 .qk-s{grid-column:1}.qk-go{grid-column:2;grid-row:2;justify-self:end}
}
.camp-inq{max-width:760px;margin:26px auto 0}
.own-inq{padding-top:22px}.own-inq .inq{margin-top:0}

/* sticky phone bar: price and number of sessions beside the button */
.sticky-cta{align-items:center;gap:14px}
.sticky-cta .tbtn{flex:1;width:auto}
.sc-i{display:grid;line-height:1.25;font-size:12.5px;color:var(--ink2);white-space:nowrap}
.sc-i b{font-size:17px;font-weight:900;color:var(--ink)}
@media(max-width:760px){.sticky-cta{display:flex}}

/* camp cards: a real button, an availability stamp */
.cs-go{margin-top:auto;align-self:flex-start;padding:9px 14px;font-family:var(--fb);font-size:14px;font-weight:900;color:var(--ink);background:var(--card);border:1.5px solid var(--ink);border-radius:8px;box-shadow:2px 3px 0 rgba(46,42,34,.18)}
.ccard a>:nth-last-child(2){margin-bottom:12px}
.ccard a:hover .cs-go{background:#FFF3B0}
.cs-st{align-self:flex-start;margin-top:6px;font:900 12.5px/1.2 var(--fb);text-transform:uppercase;letter-spacing:.05em;border:2px solid currentColor;border-radius:5px;padding:4px 8px;transform:rotate(-2deg)}
.cs-st.low{color:var(--stampc)}.cs-st.out{color:#5A5040}
.hub-intro{margin-top:46px;margin-bottom:0}
.gr-write{display:inline-flex;gap:6px;align-items:center;min-height:32px;margin-top:4px;font:700 13.5px var(--fm);color:var(--a);text-decoration:none}
.gr-write:hover{text-decoration:underline}
.endcta{display:flex;justify-content:space-between;align-items:center;gap:22px 30px;flex-wrap:wrap;background:var(--kfib),var(--kr);border-radius:8px;padding:30px 32px;outline:2px dashed rgba(255,250,238,.85);outline-offset:-9px;box-shadow:0 2px 0 var(--krd),0 14px 24px -14px rgba(46,42,34,.55)}
.endcta h2{font-size:clamp(24px,3vw,32px);font-weight:900;margin-top:2px}
.endcta p:not(.hand){margin-top:6px;color:#3F382C;max-width:52ch}
.endcta-sec{padding-bottom:10px}
.linkchips li{padding:0}
.linkchips a{display:flex;align-items:center;min-height:42px;padding:8px 14px;text-decoration:none;font-size:14px}
.linkchips li:hover{box-shadow:0 2px 0 var(--ink)}
.acts-more{padding-bottom:10px}

/* header: one clear action; long dropdowns in two columns */
.an i{font-style:normal}
@media(max-width:480px){.an span{display:inline}.an i{display:none}.an{padding:8px 11px;font-size:13px}}
@media(min-width:1181px){
 .sub.cols{min-width:600px}
 .sub.cols>ul{columns:2;column-gap:10px}
 .sub.cols>ul>li{break-inside:avoid}
 .sub.cols .sub-top{column-span:all}
 .mi:nth-child(n+3)>.sub.cols{left:auto;right:0}
 .mi:nth-child(-n+2)>.sub.cols{left:0;right:auto}
}
@media(max-width:1180px){.mnav-foot .tbtn{justify-content:center;color:#fff;padding:13px 24px}}

/* footer: four columns, links you can hit with a thumb, social links */
.foot-g{grid-template-columns:1.25fr 1fr 1fr 1.15fr}
@media(max-width:980px){.foot-g{grid-template-columns:1fr 1fr;gap:28px 24px}}
@media(max-width:560px){.foot-g{grid-template-columns:1fr}}
.flinks{gap:0;margin-top:0}
.flinks a,.flinks .linkbtn,.fcol p a{display:inline-flex;align-items:center;min-height:40px}
.flinks.legal{margin-top:8px;padding-top:8px;border-top:1.5px dashed var(--ln)}
.fsoc{display:flex;gap:10px;margin-top:16px}
.fsoc a{width:44px;height:44px;display:grid;place-items:center;border:1.5px dashed var(--krd);border-radius:10px;background:var(--card);color:var(--ink)}
.fsoc a:hover{border-style:solid;border-color:var(--a);color:var(--a)}

/* booking form */
.bkf label{font-size:14px}
.bkf input:not([type=radio]):not([type=checkbox]),.bkf select,.bkf textarea{font-size:16px}   /* below 16px iOS zooms the page on focus */
.req{font-style:normal;font-weight:900;color:var(--stampc)}
.bkf label .x{font-weight:500;color:var(--ink3)}
.reqnote{margin:0}
.dobsel{display:grid;grid-template-columns:1.15fr 1.6fr 1fr;gap:8px}
.dobsel select{min-width:0;padding-inline:10px}
.bk-sum{align-self:stretch}   /* gives the sticky summary room to follow the form */
@media(max-width:900px){
 .sum{position:static;padding:16px 18px}
 .sum dl{margin-top:10px}
 .sum dt:nth-of-type(-n+2),.sum dd:nth-of-type(-n+2),.sum dl+.sm{display:none}
 .sum .tot{border-top:0;padding-top:0}
}

/* phones: shorter pages */
@media(max-width:700px){
 .conn{height:104px}.stp{width:50px;height:104px}
 .mark{width:40px;height:40px}.mark .ic{width:17px;height:17px}
 .sec{padding-block:38px}
}
/* the dates strip sits in the hero grid: full width on desktop, between the text and the photos on phones */
.hero>.quick{grid-column:1/-1;padding-block:0;min-width:0}
@media(max-width:900px){.hero>.hl{order:1}.hero>.quick{order:2}.hero>.hr{order:3}}
@media(max-width:760px){.k-camp .an{display:none}.k-camp .burger{margin-left:auto}}   /* the bottom bar already books this camp */
/* service card walls and review badge */
.svc.wide{display:flex;flex-wrap:wrap;justify-content:center}
.svc.wide>.svc-c{flex:0 1 calc((100% - 3*var(--svg,22px))/4);min-width:0}
@media(max-width:960px){.svc.wide>.svc-c{flex-basis:calc((100% - var(--svg,22px))/2)}}
@media(max-width:560px){.svc.wide>.svc-c{flex-basis:100%}}
.gbadge{flex-wrap:wrap;max-width:100%}
.kid .rest,.rent-img .tag,.qk-d em{font-size:13px}
.gbadge span:not(.stars),.sc-i{font-size:13px}
@media(max-width:1180px){.mnav-foot a.tbtn{font-family:var(--fb);font-size:16px}}

/* temporary staging-only link to the back office analytics */
.an-tmp{display:inline-flex;align-items:center;gap:7px;border:1.5px dashed var(--krd);border-radius:10px;padding:8px 12px;font:700 13px/1 var(--fm);color:var(--ink2);background:var(--card);text-decoration:none;min-height:44px;flex:none}
.an-tmp .ic{color:#117C8D}
.an-tmp:hover{border-style:solid;border-color:#117C8D;color:#117C8D}
@media(max-width:1180px){.an-tmp{margin-left:auto}.an-tmp+.an{margin-left:0}}
@media(max-width:560px){.an-tmp span{display:none}.an-tmp{padding:8px 10px}}
@media(max-width:760px){.k-camp .an-tmp~.burger{margin-left:0}}

/* ---------- builder: text block (title, subtitle, text, optional photo) ---------- */
.txtb{display:grid;gap:40px;align-items:center;max-width:64ch}
.txtb.has-img{grid-template-columns:1.1fr .9fr;max-width:none}
.txtb.img-l .txtb-img{order:-1}
.txtb-t{display:grid;gap:12px;align-content:start}
.txtb-t h2{font-size:clamp(25px,3.4vw,37px)}
.txtb-t>p:not(.ovl):not(.shp):not(.txtb-cta){font-size:16.5px;line-height:1.65;color:var(--ink2)}
.txtb-t .shp{margin-bottom:4px}
.txtb-cta{margin-top:8px}
.txtb-img{position:relative;padding:10px 10px 4px;transform:rotate(1.6deg);max-width:460px;justify-self:center;width:100%}
.txtb.img-l .txtb-img{transform:rotate(-1.6deg)}
.txtb-img img{aspect-ratio:4/3.2}
.txtb-img figcaption{text-align:center;padding:6px 0 2px}
@media(max-width:900px){.txtb.has-img{grid-template-columns:1fr;gap:28px}.txtb.img-l .txtb-img{order:0}.txtb-img{max-width:520px}}
.sib[hidden]{display:none}
.bkf .sibbox{margin-top:12px;font-size:14px;color:var(--ink);cursor:pointer}
.bkf .sibbox input{accent-color:var(--a)}

/* ---------- builder: programme pages (educational programmes, other activities) ---------- */
.display.long{font-size:clamp(34px,4.8vw,58px)}
h1.display{font-family:var(--fb)}
.phero .crumbs{margin-bottom:12px}
.phero .hero-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.psec{padding-block:18px}
.psec .sheet{max-width:none}
.psec+.psec{padding-top:8px}
.psec .pfacts{padding-top:0}
.gal.one{grid-template-columns:minmax(0,560px);grid-auto-rows:auto;justify-content:center}
.gal.one .g{grid-column:auto;grid-row:auto}
.gal.one .g img{aspect-ratio:4/3;height:auto}
.book-c{display:flex;flex-wrap:wrap;gap:8px 18px;font:700 14px var(--fm);margin-top:4px}
.book-c a{display:inline-flex;align-items:center;gap:7px;color:var(--ink2);text-decoration:none}.book-c a:hover{color:var(--a);text-decoration:underline}
.txtb-t h3{font-size:20px;color:var(--ink);margin-top:14px;font-weight:900}
.txtb-t .ticks{margin-top:4px}

/* booking form: a child is first name, surname and gender (the rest comes in the kid-info form) */
.bkf .g3k{display:grid;grid-template-columns:1fr 1fr minmax(130px,.7fr);gap:0 14px}
@media(max-width:560px){.bkf .g3k{grid-template-columns:1fr 1fr}.bkf .g3k>label:last-child{grid-column:1/-1}}
/* kid-info form: documents to download, sign and upload */
.bkf .docs{display:grid;gap:10px;margin-top:12px}
.bkf .docs .doc{border:1px dashed var(--ln);border-radius:var(--r);padding:10px 12px;background:var(--card)}
.bkf .docs .doc b{font-size:14px}
.bkf .docs .doc a.dl{font-weight:700;font-size:13px;white-space:nowrap;color:var(--a)}
.bkf .docs .doc .row{display:flex;gap:10px;align-items:baseline;justify-content:space-between;flex-wrap:wrap}
.bkf .docs .doc em.ok{font-style:normal;color:var(--a);font-weight:800;font-size:13px}
.bkf .docs .doc input[type=file]{margin-top:6px}
.bkf .readdocs{font-size:13px;color:var(--ink2)}
.ckrent{display:grid;gap:8px}.ckrent h2{font-size:18px;margin:4px 0 0}.ckrent .tbtn{justify-self:start}

/* ---------- camp & programme pages: centred section heads, one spacing rhythm (Nov 2026) ---------- */
.k-camp .sec{padding-block:72px}
.k-camp .sec.after-conn{padding-top:28px}
.k-camp .conn{height:132px}
.k-camp .sh{max-width:780px;margin:0 auto 44px;text-align:center;justify-items:center}
.k-camp .sh .shp{margin-inline:auto}
.k-camp .sh .addr{justify-content:center}
.k-camp .faq{max-width:none}
.k-camp .faq summary{padding:18px 22px;font-size:16px}
.k-camp .faq .ans{padding:0 22px 20px}
.k-camp .paysplit{margin:44px auto 0;max-width:880px;justify-items:center;text-align:center}
.k-camp .paysplit .kids{width:100%;text-align:left}
.k-camp .paysplit .small{max-width:62ch}
.k-camp .tickets{justify-content:center}
.k-camp .nolive{margin-inline:auto}
.k-camp .contact{padding:36px 40px}
@media(max-width:700px){
 .k-camp .sec{padding-block:44px}.k-camp .sec.after-conn{padding-top:18px}
 .k-camp .conn{height:96px}
 .k-camp .sh{margin-bottom:28px}
 .k-camp .contact{padding:26px 22px}
 /* shorter pages on phones: swipeable rows, fewer photos */
 .k-camp .acts{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 16px 14px;margin-inline:-16px;scrollbar-width:none}
 .k-camp .acts::-webkit-scrollbar{display:none}
 .k-camp .acts>.act{flex:0 0 68%;scroll-snap-align:center}
 .k-camp .quotes{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:86%;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:26px 16px 14px;margin-inline:-16px;scrollbar-width:none}
 .k-camp .quotes::-webkit-scrollbar{display:none}
 .k-camp .quotes>.quote{scroll-snap-align:center}
 .k-camp .gal.clip .g:nth-child(n+9){display:none}
}
.gal-more{display:none;justify-content:center;margin-top:18px}
@media(max-width:700px){.gal.clip+.gal-more{display:flex}}
/* Google reviews: arrows */
.gr-wrap{position:relative}
.gr-nav{position:absolute;top:50%;z-index:2;width:40px;height:40px;border-radius:999px;border:1.5px solid var(--krd);background:var(--card);color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(46,42,34,.12);transform:translateY(-50%)}
.gr-nav.prev{left:-14px}.gr-nav.prev .ic{transform:rotate(180deg)}.gr-nav.next{right:-14px}
.gr-nav:hover{border-color:var(--a);color:var(--a)}.gr-nav[disabled]{opacity:0;pointer-events:none}
@media(max-width:700px){.gr-nav{display:none}}
/* question form as a pop-up */
.ask-dlg{border:0;padding:0;background:transparent;width:min(680px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto}
.ask-dlg::backdrop{background:rgba(46,42,34,.55)}
.ask-dlg .inq{margin:0;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.ask-x{position:absolute;right:12px;top:12px;z-index:3;width:38px;height:38px;border-radius:999px;border:0;background:transparent;font-size:28px;line-height:1;color:var(--ink2);cursor:pointer}
.ask-x:hover{background:rgba(46,42,34,.08)}
.ask-dlg[open]{animation:askin .2s ease}
@keyframes askin{from{opacity:0;transform:translateY(12px)}}
.k-camp .book-b{align-self:center;display:grid;gap:14px;justify-items:start}
.k-camp .book-b>.tbtn{width:auto}

/* ---------- header: more room on desktop (Nov 2026) ---------- */
@media(min-width:1181px){
 .top-in{max-width:1320px;height:78px;gap:18px}
 .brand{margin-right:12px}
 .mnav-l{gap:6px}
 .mt{padding:10px 14px;font-size:15px;gap:6px}
 .mnav{margin-left:auto;margin-right:18px}
 .sub{top:calc(100% + 14px);padding:12px;min-width:320px;border-radius:12px}
 .sub a{padding:10px 14px}
 .sub-top a{margin-bottom:8px;padding-bottom:12px}
 .sub.cols{min-width:660px}.sub.cols>ul{column-gap:18px}
 .sub2{margin:4px 0 8px 16px}
}
@media(min-width:1181px) and (max-width:1520px){.mt{padding:9px 9px;font-size:14.5px}.mnav-l{gap:0}.an-tmp span{display:none}}

/* ---------- camp & programme pages: footprints never overlap content; centred phone hero (Nov 2026) ---------- */
.k-camp .conn{margin-block:24px}
.k-camp .conn .stp{width:63px;height:132px}
.k-camp .facts+.conn{margin-top:40px}
@media(max-width:700px){
 .k-camp .conn{margin-block:16px}
 .k-camp .conn .stp{width:46px;height:96px}
 .k-camp .facts+.conn{margin-top:40px}
}

/* ---------- phones: every page head centred, main buttons full width (Nov 2026) ----------
   heads of camp, programme, home, hub and content pages, the booking, parent's page and form; form fields stay left-aligned */
@media(max-width:700px){
 .hero .hl,.phead-t,.bk>.crumbs,.bk-main>.hand,.bk-main>h1,.bk-main>.bk-lead,.bk>.hand,.bk>h1,.bk>.bk-lead{text-align:center}
 .hero .hl,.phead-t{display:grid;justify-items:center}
 .hero .crumbs,.phead-t .crumbs,.bk>.crumbs{justify-content:center}
 .hero .hl>.hand,.phead-t>.hand,.bk-main>.hand,.bk>.hand{justify-content:center}
 .hero .display .u svg,.phead-t h1 .u svg,.bk h1 .u svg{margin-inline:auto}
 .bk h1{display:table;margin-inline:auto}
 .hero .h1s,.hero .say,.phead-t .pmeta{margin-inline:auto}
 .hero .sticks,.hero .legend{width:100%;justify-content:center}
 .sec>.ovl{display:flex;justify-content:center;text-align:center}
 .hero .hero-cta,.phead-t .hero-cta{width:100%;flex-direction:column;align-items:stretch;gap:12px}
 .hero .hero-cta .tbtn,.phead-t .hero-cta .tbtn,.cta-row .tbtn{width:100%;justify-content:center}
 .hero .hero-cta .arr{display:none}
 .hero .hero-cta .tellink{justify-content:center}
 .hero .legend{justify-content:center}
 .sh{margin-inline:auto;text-align:center;justify-items:center}
 .sh .shp{margin-inline:auto}
}


/* Google rating in the camp/programme hero: five yellow stars, larger than the address line (Nov 2026) */
.legend .rv-stars{gap:8px;font-size:15px;color:var(--ink)}
.legend .rv-stars b{font-weight:800}
.rv-stars .st5{display:inline-flex;gap:2px}
.rv-stars .st5 svg{width:19px;height:19px;fill:#F4B400;stroke:#C98F00;stroke-width:1;stroke-linejoin:round}
@media(max-width:700px){.legend .rv-stars{font-size:14.5px}.rv-stars .st5 svg{width:18px;height:18px}}

/* booking: child-count cards with the price per child; the family tick as a highlighted box (Nov 2026) */
.seg-n{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.seg-n label{min-width:0}
.seg-n span{width:auto;height:auto;min-height:92px;padding:12px 6px;display:grid;justify-items:center;align-content:center;gap:2px;text-align:center;line-height:1.15}
.seg-n span b{font-size:24px;font-weight:900}
.seg-n span em{font-style:normal;font-size:13px;font-weight:700}
.seg-n span i{font-style:normal;font:700 13px/1.25 var(--fm);margin-top:4px;color:var(--ink2)}
.seg-n input:checked+span i{color:#fff}
@media(max-width:700px){.seg-n{grid-template-columns:repeat(2,1fr)}}
.bkf .sibbox{display:flex;gap:12px;align-items:center;margin-top:16px;padding:14px 16px;border:2px dashed var(--a);border-radius:10px;background:color-mix(in srgb,var(--a) 8%,#fff)}
.bkf .sibbox[hidden]{display:none}
.bkf .sibbox input{width:22px;height:22px;flex:none}
.bkf .sibbox span{display:grid;gap:2px}
.bkf .sibbox b{font-size:16px;font-weight:800}
.bkf .sibbox em{font-style:normal;font-size:14px;font-weight:700;color:var(--a)}

/* booking summary: centred head, no total row, "Mokėti dabar" large (Nov 2026) */
.bk-sum .sum>.ovl,.bk-sum .sum>h2,.bk-sum .sum>.sm{text-align:center}
.bk-sum .sum dt[hidden],.bk-sum .sum dd[hidden]{display:none}
.bk-sum .sum .now{border-top:1.5px dashed var(--ln);padding-top:12px;margin-top:4px;align-self:center}
.bk-sum .sum dt.now{font:800 17px/1.2 var(--fb);color:var(--ink)}
.bk-sum .sum dd.now{font:900 26px/1.1 var(--fb);color:var(--ink)}
@media(max-width:700px){.bk-sum .sum .now{border-top:0;padding-top:0;margin-top:0}}

/* ---------- camps overview (/stovyklos-2/): one section per camp (Nov 2026) ---------- */
.hub-head .phead-t{display:grid;justify-items:center;text-align:center}
.hub-head .crumbs{justify-content:center}
.hub-head .phead-t>.hand{justify-content:center}
.hub-head h1 .u svg{margin-inline:auto}
.hubc-g{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:center;max-width:1040px;margin:0 auto}
.hubc.flip .hubc-img{order:2}
.hubc-img{display:block;padding:18px 10px 10px}
.hubc-img .pol{position:relative;transform:rotate(-2.4deg);padding:10px}
.hubc.flip .hubc-img .pol{transform:rotate(2.2deg)}
.hubc-img .pol img{aspect-ratio:4/3.2}
.hubc-img .pol:hover{transform:rotate(0) scale(1.02)}
.hubc-t{display:grid;gap:12px;justify-items:center;text-align:center}
.hubc-t .cc-ic{position:static;margin:0}
.hubc-t h2{font-size:clamp(28px,3.6vw,42px);line-height:1.05}
.hubc-t h2 a{color:inherit;text-decoration:none}
.hubc-t h2 a:hover{color:var(--a)}
.hubc-k{font-size:23px;color:var(--a);margin-top:-4px}
.hubc-t .shp{max-width:52ch;margin-inline:auto}
.hubc-m{display:flex;gap:8px 18px;flex-wrap:wrap;justify-content:center;font:700 13.5px var(--fm);color:var(--ink2)}
.hubc-m span{display:inline-flex;gap:6px;align-items:center}
.hubc-m .ic{color:var(--a)}
.hubc>.qk{max-width:1040px;margin:34px auto 0}
.qk-none{padding:14px 8px 12px;font-weight:700;color:var(--ink3)}
.k-hub .hub-intro{max-width:780px;margin:0 auto;text-align:center;justify-items:center}
.k-hub .hub-intro .shp{margin-inline:auto}
@media(max-width:900px){
 .hubc-g{grid-template-columns:1fr;gap:18px}
 .hubc.flip .hubc-img{order:0}
 .hubc-img{max-width:440px;margin:0 auto;width:100%}
}

/* ---------- desktop too: camp page heads centred (reviews, team, contact) (Nov 2026) ---------- */
.k-camp .gr-head{flex-direction:column;align-items:center;text-align:center}
.k-camp .gr-head p{margin-inline:auto}
.k-camp .team-t{justify-items:center;text-align:center}
.k-camp .team-t .shp{margin-inline:auto}
.k-camp .lead-card{text-align:left}
.k-camp .contact{flex-direction:column;text-align:center;justify-content:center}
.k-camp .contact p{margin-inline:auto}
.k-camp .contact-a{justify-items:center}
.k-home .gr-head,.k-page .gr-head{flex-direction:column;align-items:center;text-align:center}
/* camp sections on home and /stovyklos-2/: photos from the camp's album cross-fade (Nov 2026) */
.rot{display:block;position:relative;aspect-ratio:4/3.2;overflow:hidden;background:#EFE6D2}
.rot-i{position:absolute;inset:0;opacity:0;transition:opacity 1.1s ease,transform 4.5s ease;transform:scale(1.04)}
.rot-i.on{opacity:1;transform:scale(1)}
.rot-i img,.rot-i picture{display:block;width:100%;height:100%}
.hubc-img .pol .rot-i img{aspect-ratio:auto;height:100%;object-fit:cover}
.hubcs{display:grid;gap:72px}
.hubc-n{font-size:clamp(28px,3.6vw,42px);line-height:1.05}
.hubc-n a{color:inherit;text-decoration:none}.hubc-n a:hover{color:var(--a)}
.k-home .sh{margin-inline:auto;text-align:center;justify-items:center}
.k-home .sh .shp{margin-inline:auto}
.k-home .sec>.ovl{display:flex;justify-content:center;text-align:center}
@media(prefers-reduced-motion:reduce){.rot-i{transition:none;transform:none}}
@media(max-width:900px){.hubcs{gap:48px}}
/* hero polaroids with several photos (home, camps): fixed frame, photos and captions cross-fade */
.pol .rot{aspect-ratio:1/1}
.pol.p1 .rot{aspect-ratio:4/4.6}
.hr-one .pol.p1 .rot{aspect-ratio:4/3}
.hubc-img .pol .rot{aspect-ratio:4/3.2}
.pol .rot-i img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
.pol figcaption{display:grid}
.rot-c{grid-area:1/1;opacity:0;transition:opacity .9s ease}
.rot-c.on{opacity:1}
/* hero collage: up to 5 polaroids, each cycling through its share of the camp's (or all camps') photos (Nov 2026) */
.hr5{min-height:0;aspect-ratio:1/1.02;max-width:620px;width:100%;justify-self:end}
.hr5 .pol{position:absolute;width:auto}
.hr5 .pol .rot,.hr5 .pol>picture img,.hr5 .pol>img{aspect-ratio:1/1}
.hr5 .pol.p1{width:52%;top:6%;left:8%;transform:rotate(-3deg);z-index:4}
.hr5 .pol.p1 .rot{aspect-ratio:4/4.5}
.hr5 .pol.p2{width:38%;top:0;right:2%;left:auto;bottom:auto;transform:rotate(3.4deg);z-index:2}
.hr5 .pol.p3{width:36%;bottom:4%;left:0;top:auto;transform:rotate(2.6deg);z-index:3}
.hr5 .pol.p4{width:40%;bottom:0;right:0;top:auto;transform:rotate(-2.4deg);z-index:2}
.hr5 .pol.p5{width:32%;top:40%;left:42%;transform:rotate(4.2deg);z-index:5}
.hr5.n2 .pol.p2{top:auto;bottom:6%;width:48%}
.hr5.n3 .pol.p3{left:6%}
.hr5 .pol:hover{transform:rotate(0) scale(1.04);z-index:6}
.hr5 .pol figcaption{font-size:16px;padding:6px 4px 2px;min-height:26px}
.hr5 .tape{height:52px;top:-24px}
@media(max-width:900px){
 .hr5{display:block;position:relative;justify-self:center;padding-top:0;max-width:560px}
 .hr5 .pol,.hr5 .pol.p1,.hr5 .pol.p2,.hr5 .pol.p3,.hr5 .pol.p4,.hr5 .pol.p5{position:absolute;margin:0}
 .hr5 .pol figcaption{font-size:13px;min-height:20px}
}

/* ---------- content pages, standard layout (Nov 2026): camp-style hero, sections as folds ---------- */
.p2-hero .p2-h1{font-size:clamp(40px,5.4vw,72px)}
.p2-hero.p2-solo{grid-template-columns:1fr}
.p2-hero.p2-solo .hl{display:grid;justify-items:center;text-align:center;max-width:860px;margin:0 auto}
.p2-hero.p2-solo .crumbs,.p2-hero.p2-solo .hl>.hand{justify-content:center}
.p2-hero.p2-solo .display .u svg{margin-inline:auto}
.p2-sec{max-width:1120px}
.fold{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center;max-width:1040px;margin:0 auto}
.fold.flip .fold-t{order:2}
.fold.nofig{grid-template-columns:minmax(0,1fr);max-width:760px}
.fold-t{display:grid;gap:14px;font-size:17px;line-height:1.65;color:var(--ink2);min-width:0}
.fold-t>h2{font-size:clamp(26px,3.2vw,38px);line-height:1.12;color:var(--ink);margin-bottom:4px}
.fold.nofig .fold-t>h2{text-align:center}
.fold-t h3{font-size:20px;color:var(--ink);margin-top:8px}
.fold-t strong{color:var(--ink)}
.fold-t a:not(.tbtn):not(.more){color:var(--a);font-weight:800;text-underline-offset:3px}
.fold-t .ticks{display:grid;gap:8px}
.fold-f{position:relative;padding:10px 10px 4px;transform:rotate(2deg)}
.fold.flip .fold-f{transform:rotate(-2deg)}
.fold-f img{width:100%;height:auto;aspect-ratio:auto;max-height:560px;object-fit:cover}
.fold-f a{display:block}
.fold-f:hover{transform:rotate(0) scale(1.02)}
.p2-gal{display:grid;grid-template-columns:repeat(var(--c,3),minmax(0,1fr));gap:18px;max-width:1040px;margin:34px auto 0}
.p2-gal a{display:block;background:#fff;padding:8px;box-shadow:0 10px 20px -10px rgba(46,42,34,.45);transition:transform .2s}
.p2-gal a:nth-child(odd){transform:rotate(-1deg)}.p2-gal a:nth-child(even){transform:rotate(1.1deg)}
.p2-gal a:hover{transform:rotate(0) scale(1.02)}
.p2-gal img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.p2-form{max-width:760px;margin:0 auto}
@media(max-width:900px){
 .fold,.fold.flip{grid-template-columns:1fr;gap:22px}
 .fold.flip .fold-t{order:0}
 .fold-f{max-width:440px;margin:0 auto;width:100%}
 .p2-gal{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
}
.k-page .sh{margin-inline:auto;text-align:center;justify-items:center}
.k-page .sh .shp{margin-inline:auto}
.p2-hero .p2-h1{font-size:clamp(38px,4.6vw,62px)}
/* content pages: text on a paper card, lists as tiles, sub-headings with an accent bar */
.p2-sec .fold-t{background:var(--card);border:1.5px dashed var(--krd);border-radius:10px;box-shadow:var(--sh);padding:34px 38px;color:var(--ink);font-size:16.5px;line-height:1.65}
.p2-sec .fold-t>p{color:#3E392F}
.p2-sec .fold-t>h2{padding-bottom:12px;border-bottom:2px dashed var(--ln);margin-bottom:6px}
.p2-sub{display:flex;align-items:center;gap:10px;font-size:18px!important;font-weight:900;color:var(--ink);margin-top:10px!important}
.p2-sub::before{content:"";width:6px;height:22px;border-radius:3px;background:var(--a);flex:none}
.p2-ticks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:2px 0 6px}
.p2-ticks.one{grid-template-columns:minmax(0,1fr)}
.p2-ticks li{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1.5px solid var(--ln);border-radius:10px;padding:11px 14px;font-weight:600;font-size:15.5px;line-height:1.45;color:var(--ink);box-shadow:0 2px 0 rgba(46,42,34,.05)}
.p2-ticks .ck{flex:none;width:24px;height:24px;border-radius:999px;background:var(--a);color:#fff;display:grid;place-items:center;margin-top:-1px}
.p2-ticks .ck .ic{width:13px;height:13px;stroke-width:3}
.fold.nofig .fold-t{max-width:860px;margin:0 auto}
@media(max-width:700px){.p2-sec .fold-t{padding:24px 18px}.p2-ticks{grid-template-columns:minmax(0,1fr)}}
.fold:not(.nofig) .p2-ticks{grid-template-columns:minmax(0,1fr);gap:8px}
.p2-ticks li{align-items:center}
.p2-wide{max-width:1120px;margin:30px auto 0}
.p2-wide.one,.p2-wide.p2-form{max-width:860px}
.p2-sec>.p2-wide:first-child{margin-top:0}
.p2-wide .svc.wide{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
/* builder text blocks (programmes) in the same fold + card; their lists as tiles */
.p2-sec .fold-t .ticks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.p2-sec .fold:not(.nofig) .fold-t .ticks{grid-template-columns:minmax(0,1fr);gap:8px}
.p2-sec .fold-t .ticks li{display:flex;align-items:center;gap:12px;background:#fff;border:1.5px solid var(--ln);border-radius:10px;padding:11px 14px 11px 14px;font-weight:600;font-size:15.5px;line-height:1.45;color:var(--ink);box-shadow:0 2px 0 rgba(46,42,34,.05)}
.p2-sec .fold-t .ticks li::before{content:"";position:static;flex:none;width:24px;height:24px;border-radius:999px;transform:none;background:var(--a) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/14px no-repeat}
.p2-sec .fold-t .ticks li::after{content:none}
.p2-sec .fold-t>h3{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:900;margin-top:10px}
.p2-sec .fold-t>h3::before{content:"";width:6px;height:22px;border-radius:3px;background:var(--a);flex:none}
@media(max-width:700px){.p2-sec .fold-t .ticks{grid-template-columns:minmax(0,1fr)}}
.p2-sec .fold-t .ticks li{display:block;position:relative;padding:12px 14px 12px 50px}
.p2-sec .fold-t .ticks li::before{position:absolute;left:14px;top:11px}
.fold.figonly{grid-template-columns:minmax(0,1fr);max-width:640px}
/* tighter rhythm between sections */
.p2-sec{padding-block:26px}
.hr5.n3 .pol.p1{top:4%;left:0;width:56%}
.hr5.n3 .pol.p2{top:2%;right:0;width:42%}
.hr5.n3 .pol.p3{bottom:6%;top:auto;left:auto;right:6%;width:44%}
.p2-sec .fold-t .ticks li:last-child:nth-child(odd){grid-column:1/-1}
.p2-ticks li:last-child:nth-child(odd){grid-column:1/-1}

/* ---------- content pages v3 (Nov 2026): heads outside cards, feature cards, included / not included, slogans ---------- */
.p2-sec{padding-block:30px}
.p2-head{max-width:820px;margin:0 auto 26px;text-align:center;justify-items:center}
.p2-head h2{font-size:clamp(26px,3.2vw,38px);line-height:1.15}
.p2-sec .fold-t>h2{display:none}
.p2-slogan{font-size:clamp(26px,3vw,34px)!important;color:var(--a)!important;text-align:center;line-height:1.2;margin:4px 0}
.p2-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:26px auto 0;max-width:1040px}
.p2-feats{display:grid;grid-template-columns:repeat(var(--c,3),minmax(0,1fr));gap:18px;max-width:1080px;margin:26px auto 0}
.p2-feats li{background:var(--card);border:1.5px dashed var(--krd);border-radius:12px;box-shadow:var(--sh);padding:22px 22px 20px;display:grid;align-content:start;gap:8px;font-size:15px;line-height:1.6;color:#3E392F}
.p2-feats .fi{width:48px;height:48px;border-radius:999px;background:var(--a);color:#fff;display:grid;place-items:center;box-shadow:0 0 0 3px #FFFDF6,0 0 0 4.5px var(--ink);margin-bottom:6px}
.p2-feats .fi .ic{width:22px;height:22px}
.p2-feats li:nth-child(3n+2) .fi{background:color-mix(in srgb,var(--a) 70%,#B7791F)}
.p2-feats li:nth-child(3n+3) .fi{background:color-mix(in srgb,var(--a) 55%,#2B6CB0)}
.p2-feats b{font-size:18px;font-weight:900;color:var(--ink);line-height:1.25}
.p2-feats p{margin:0}
.p2-feats a{color:var(--a);font-weight:800}
.p2-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:1040px;margin:0 auto;align-items:start}
.p2-pair .fold-t{max-width:none}
.p2-pair .p2-ticks{grid-template-columns:minmax(0,1fr)}
.p2-pair .fold-t.neg{background:color-mix(in srgb,var(--card) 70%,#EDE6D6)}
.p2-ticks.neg .ck{background:#9B8F79}
.p2-ticks.neg li{color:var(--ink2);font-weight:500}
@media(max-width:900px){.p2-feats{grid-template-columns:repeat(2,minmax(0,1fr))}.p2-pair{grid-template-columns:1fr}}
@media(max-width:600px){.p2-feats{grid-template-columns:minmax(0,1fr)}.p2-head{margin-bottom:18px}}
.p2-lead{max-width:760px;margin:-8px auto 0;text-align:center;font-size:18px;line-height:1.6;color:var(--ink2)}
.p2-pair .p2-sub{font-size:20px!important;margin-top:0!important}
/* spacing on an 8-px scale (Nov 2026): sections 48, heads 24, cards 32/20, grids 24, tiles 12 */
.p2-sec{padding-block:48px}
.p2-sec.after-conn{padding-top:24px}
.p2-head{margin:0 auto 24px}
.p2-sec .fold{gap:48px}
.p2-sec .fold-t{padding:32px;gap:16px}
.p2-ticks,.p2-sec .fold-t .ticks{gap:12px}
.p2-btns{margin-top:24px;gap:12px}
.p2-gal{margin-top:32px;gap:24px}
.p2-wide{margin-top:32px}
.p2-feats{gap:24px;margin-top:24px}
.p2-feats li{justify-items:center;text-align:center;padding:32px 24px 28px;gap:8px}
.p2-feats .fi{width:56px;height:56px;margin:0 0 8px}
.p2-feats .fi .ic{width:24px;height:24px}
.p2-feats b{font-size:18.5px;margin-bottom:4px}
.p2-feats p{max-width:34ch}
.p2-lead{margin:0 auto 8px}
.p2-pair{gap:24px}
@media(max-width:700px){
 .p2-sec{padding-block:32px}
 .p2-sec .fold-t{padding:24px 20px}
 .p2-sec .fold{gap:24px}
 .p2-feats{gap:16px}
 .p2-feats li{padding:24px 20px}
}

/* content pages: intro line, heading note, icon tiles, icon rows, document cards, numbered cards, warning box (Nov 2026) */
.p2-intro{max-width:760px;margin:0 auto;text-align:center;display:grid;gap:12px;font-size:clamp(18px,1.6vw,20.5px);line-height:1.6;color:var(--ink);font-weight:600;text-wrap:pretty}
.p2-hsub{margin-top:10px;font-family:var(--fm);font-size:14px;letter-spacing:.02em;color:var(--ink3)}
.p2-tiles{--g:24px;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--g);max-width:1080px;margin:24px auto 0}
.p2-tiles li{flex:0 1 calc((100% - (var(--c) - 1) * var(--g)) / var(--c));display:grid;justify-items:center;align-content:start;gap:12px;text-align:center;background:var(--card);border:1.5px dashed var(--krd);border-radius:12px;box-shadow:var(--sh);padding:28px 20px 24px;font-weight:700;font-size:16px;line-height:1.4;color:var(--ink)}
.p2-tiles .fi,.p2-irows .fi,.p2-docs .fi{width:56px;height:56px;border-radius:999px;background:var(--a);color:#fff;display:grid;place-items:center;box-shadow:0 0 0 3px #FFFDF6,0 0 0 4.5px var(--ink);flex:none}
.p2-tiles .fi .ic{width:26px;height:26px}
.p2-tiles li:nth-child(3n+2) .fi,.p2-irows li:nth-child(3n+2) .fi{background:color-mix(in srgb,var(--a) 70%,#B7791F)}
.p2-tiles li:nth-child(3n+3) .fi,.p2-irows li:nth-child(3n+3) .fi{background:color-mix(in srgb,var(--a) 55%,#2B6CB0)}
.p2-tiles .tx{max-width:26ch}
.p2-irows{display:grid;gap:12px}
.p2-irows li{display:flex;align-items:center;gap:16px;background:#fff;border:1.5px solid var(--ln);border-radius:12px;padding:12px 16px;font-weight:600;font-size:15.5px;line-height:1.45;color:var(--ink);box-shadow:0 2px 0 rgba(46,42,34,.05)}
.p2-irows .fi{width:44px;height:44px;box-shadow:0 0 0 2.5px #fff,0 0 0 4px var(--ink)}
.p2-irows .fi .ic{width:21px;height:21px}
.p2-docs{--g:16px;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--g);max-width:1080px;margin:24px auto 0}
.p2-docs li{flex:0 1 calc((100% - 2 * var(--g)) / 3);display:flex}
.p2-docs a{flex:1;display:flex;align-items:center;gap:16px;background:var(--card);border:1.5px dashed var(--krd);border-radius:12px;box-shadow:var(--sh);padding:18px 18px 18px 20px;text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}
.p2-docs a:hover{transform:translateY(-2px);box-shadow:var(--shb)}
.p2-docs .fi{width:48px;height:48px;border-radius:10px;box-shadow:none}
.p2-docs .dt{flex:1;display:grid;gap:4px;min-width:0}
.p2-docs b{font-size:15.5px;line-height:1.35;font-weight:800}
.p2-docs small{font-family:var(--fm);font-size:12.5px;color:var(--ink3);letter-spacing:.04em}
.p2-docs .dl{flex:none;width:36px;height:36px;border-radius:999px;border:1.5px solid var(--ln);display:grid;place-items:center;color:var(--a)}
.p2-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:4px 0 8px;counter-reset:n}
.p2-nums li{display:grid;justify-items:center;align-content:start;gap:12px;text-align:center;background:#fff;border:1.5px solid var(--ln);border-radius:12px;padding:24px 18px 20px;font-size:15.5px;line-height:1.5;color:var(--ink);box-shadow:0 2px 0 rgba(46,42,34,.05)}
.p2-nums .n{width:40px;height:40px;border-radius:999px;background:var(--a);color:#fff;display:grid;place-items:center;font-weight:900;font-size:18px;box-shadow:0 0 0 3px #fff,0 0 0 4.5px var(--ink)}
.p2-alert{display:flex;gap:16px;align-items:flex-start;background:#FBEFD9;border:1.5px solid #E2B66B;border-left:6px solid var(--warn);border-radius:10px;padding:16px 20px;color:var(--ink);font-weight:600}
.p2-alert .ic{width:26px;height:26px;color:var(--warn);margin-top:1px}
@media(max-width:900px){.p2-tiles li{flex-basis:calc((100% - var(--g)) / 2)}.p2-docs li{flex-basis:calc((100% - var(--g)) / 2)}}
@media(max-width:700px){.p2-tiles{--g:12px}.p2-tiles li{padding:20px 12px 18px;font-size:15px;gap:10px}.p2-tiles .fi{width:48px;height:48px}.p2-tiles .fi .ic{width:22px;height:22px}
 .p2-docs li{flex-basis:100%}.p2-irows li{padding:12px 14px;gap:14px}.p2-alert{padding:14px 16px;gap:12px}.p2-intro{font-size:17.5px}}
.p2-nums{grid-template-columns:minmax(0,1fr);gap:12px}
.p2-nums li{display:flex;align-items:center;justify-items:initial;text-align:left;gap:16px;padding:14px 18px}
.p2-nums .n{flex:none}
.p2-sec .fold:has(.p2-irows){align-items:center}
.p2-docs small{font-size:13px}

/* hub programme cards (/edukacijos/, /pramogos/) */
.pcards{--g:24px;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--g);max-width:1100px;margin:24px auto 0}
.pcards li{flex:0 1 calc((100% - 2 * var(--g)) / 3);display:flex}
.pc{flex:1;display:flex;flex-direction:column;background:var(--card);border:1.5px dashed var(--krd);border-radius:12px;box-shadow:var(--sh);overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .18s,box-shadow .18s}
.pc:hover{transform:translateY(-3px);box-shadow:var(--shb)}
.pc-img{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--ln)}
.pc-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.pc:hover .pc-img img{transform:scale(1.04)}
.pc-b{flex:1;display:flex;flex-direction:column;gap:12px;padding:20px 22px 22px}
.pc-t{font-size:19px;font-weight:900;line-height:1.25}
.pc-x{font-size:15px;line-height:1.55;color:var(--ink2);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.pc-f{display:flex;flex-wrap:wrap;gap:8px}
.pc-f span{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid var(--ln);border-radius:999px;padding:4px 10px;font-size:13.5px;font-weight:700;color:var(--ink)}
.pc-f .ic{color:var(--a)}
.pc-go{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-weight:800;color:var(--a);font-size:15px}
@media(max-width:1000px){.pcards li{flex-basis:calc((100% - var(--g)) / 2)}}
@media(max-width:640px){.pcards{--g:16px}.pcards li{flex-basis:100%}.pc-b{padding:18px 18px 20px}}

/* programme pages: key facts, notes, steps, included chips, side-by-side lists */
.pf2{--g:16px;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--g);max-width:1080px;margin:0 auto}
.pf2 li{flex:0 1 calc((100% - (var(--c) - 1) * var(--g)) / var(--c));display:grid;justify-items:center;align-content:start;gap:6px;text-align:center;background:var(--card);border:1.5px dashed var(--krd);border-radius:12px;box-shadow:var(--sh);padding:24px 18px 22px}
.pf2 .fi{width:52px;height:52px;border-radius:999px;background:var(--a);color:#fff;display:grid;place-items:center;box-shadow:0 0 0 3px #FFFDF6,0 0 0 4.5px var(--ink);margin-bottom:8px}
.pf2 .fi .ic{width:24px;height:24px}
.pf2 li:nth-child(3n+2) .fi{background:color-mix(in srgb,var(--a) 70%,#B7791F)}
.pf2 li:nth-child(3n+3) .fi{background:color-mix(in srgb,var(--a) 55%,#2B6CB0)}
.pf2 b{font-family:var(--fm);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);font-weight:700}
.pf2 span:not(.fi){font-size:16.5px;font-weight:800;line-height:1.4;color:var(--ink)}
.pf-note{max-width:760px;margin:24px auto 0;display:grid;gap:8px}
.pf-note p{display:flex;gap:12px;align-items:flex-start;justify-content:center;text-align:center;background:#FBEFD9;border:1.5px solid #E2B66B;border-radius:10px;padding:12px 18px;font-size:15.5px;color:var(--ink)}
.pf-note .ic{color:#B7791F;margin-top:3px}
.psteps{display:grid;gap:0;counter-reset:st;margin:4px 0}
.psteps li{counter-increment:st;position:relative;padding:0 0 18px 56px;min-height:40px;font-size:16px;line-height:1.55;color:var(--ink)}
.psteps li::before{content:counter(st);position:absolute;left:0;top:-4px;width:38px;height:38px;border-radius:999px;background:var(--a);color:#fff;display:grid;place-items:center;font-weight:900;font-size:16px;box-shadow:0 0 0 3px #FFFDF6,0 0 0 4.5px var(--ink)}
.psteps li:not(:last-child)::after{content:"";position:absolute;left:18px;top:40px;bottom:2px;border-left:2px dashed var(--krd)}
.psteps li:last-child{padding-bottom:0}
.p2-sec .fold-t .ticks.incl{display:flex;flex-wrap:wrap;gap:8px;grid-template-columns:none}
.p2-sec .fold-t .ticks.incl li{display:inline-flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;border-radius:999px;font-size:15px}
.p2-sec .fold-t .ticks.incl li::before{position:static;width:22px;height:22px;background-size:12px}
.p2-sec .fold-t .ticks.incl li:last-child:nth-child(odd){grid-column:auto}
.p2-pair .fold-t .ticks{grid-template-columns:minmax(0,1fr)!important}
.pbtns.center{display:flex;justify-content:center;margin-top:24px}
@media(max-width:900px){.pf2 li{flex-basis:calc((100% - var(--g)) / 2)}}
@media(max-width:560px){.pf2{--g:12px}.pf2 li{padding:20px 12px 18px}.psteps li{padding-left:50px}}
.psteps li{min-height:50px}

/* content pages: fact tiles, price table */
.p2-facts{margin-top:24px}
.p2-facts span a{color:var(--a);font-weight:800;text-underline-offset:3px;word-break:break-word}
.pf2 span+span:not(.fi){font-size:14.5px;font-weight:600;color:var(--ink2)}
.p2-sec .ptable{border:1.5px solid var(--ln);border-radius:10px;background:#fff;overflow-x:auto;margin:4px 0}
.p2-sec .ptable table{width:100%;min-width:560px;border-collapse:collapse;font-size:15px}
.p2-sec .ptable td{border:0;border-bottom:1px solid var(--ln);padding:12px 14px;text-align:center;vertical-align:middle}
.p2-sec .ptable td:first-child{text-align:left;font-weight:700;color:var(--ink)}
.p2-sec .ptable tr:last-child td{border-bottom:0}
.p2-tbl{max-width:1080px;margin:24px auto 0}
.p2-tbl .ptable{box-shadow:var(--sh)}
.p2-facts .pv{font-size:21px!important;font-weight:900!important;color:var(--a)!important}
.p2-tbl .ptable th,.p2-tbl .ptable td{border-bottom:1px solid var(--ln);padding:12px 14px;text-align:center;vertical-align:middle}
.p2-tbl .ptable thead th{background:color-mix(in srgb,var(--a) 10%,#fff);font-weight:800;font-size:13.5px;line-height:1.35}
.p2-tbl .ptable tbody th{text-align:left;font-weight:700;font-size:15px}
.p2-tbl .ptable tbody td{font-weight:900;font-size:16.5px;color:var(--a)}
.p2-tbl .ptable tbody tr:last-child>*{border-bottom:0}
@media(max-width:700px){
 .p2-tbl .ptable{overflow:visible;background:none;border:0;box-shadow:none}
 .p2-tbl .ptable table{min-width:0}
 .p2-tbl .ptable thead{display:none}
 .p2-tbl .ptable tbody{display:grid;gap:12px}
 .p2-tbl .ptable tr{display:grid;grid-template-columns:1fr auto;background:#fff;border:1.5px solid var(--ln);border-radius:10px;box-shadow:var(--sh);overflow:hidden}
 .p2-tbl .ptable tbody th{display:block;grid-column:1/-1;width:auto!important;max-width:none!important;justify-self:stretch;background:color-mix(in srgb,var(--a) 10%,#fff);border-bottom:1px solid var(--ln)!important}
 .p2-tbl .ptable tbody td{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:16px;text-align:right}
 .p2-tbl .ptable tbody td::before{content:attr(data-h);font-weight:600;font-size:14.5px;color:var(--ink2);text-align:left}
 .p2-tbl .ptable tbody tr>td:last-child{border-bottom:0}
}
.p2-tbl .ptable tbody td{font-weight:900!important;color:var(--a)!important}
.p2-where{margin:4px 0}.p2-where .tx{font-weight:700}
@media(min-width:1181px) and (max-width:1260px){.an-tmp{display:none}.mt{padding:9px 7px;font-size:14px}}

/* people quotes (volunteers) */
.p2-people{--g:24px;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--g);max-width:1100px;margin:0 auto}
.p2-people li{flex:0 1 calc((100% - 2 * var(--g)) / 3);display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;background:var(--card);border:1.5px dashed var(--krd);border-radius:12px;box-shadow:var(--sh);padding:28px 24px 24px}
.p2-people figure{width:112px;height:112px;border-radius:999px;overflow:hidden;box-shadow:0 0 0 4px #FFFDF6,0 0 0 5.5px var(--ink);margin-bottom:8px}
.p2-people figure img{width:100%;height:100%;object-fit:cover}
.p2-people b{font-size:19px;font-weight:900}
.p2-people .qm{color:var(--a);opacity:.5;width:24px;height:24px}
.p2-people .tx{display:grid;gap:8px;font-size:15px;line-height:1.6;color:var(--ink2)}
@media(max-width:1000px){.p2-people li{flex-basis:calc((100% - var(--g)) / 2)}}
@media(max-width:640px){.p2-people{--g:16px}.p2-people li{flex-basis:100%;padding:24px 18px 20px}}
/* logo walls */
.p2-gal.logos a{background:#fff;display:grid;place-items:center;padding:18px;aspect-ratio:3/2}
.p2-gal.logos img{object-fit:contain!important;width:100%;height:100%;max-height:120px}
@media(max-width:700px){.p2-gal.logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.p2-gal.logos a{padding:10px}}

/* legal texts: plain document */
.legaldoc{max-width:760px;padding-block:40px 64px;font-size:16px;line-height:1.7;color:var(--ink2)}
.legaldoc .crumbs{margin-bottom:16px}
.legaldoc h1{font-size:clamp(28px,4vw,40px);line-height:1.15;color:var(--ink);margin:0 0 24px;text-wrap:balance}
.legaldoc h2{font-size:21px;line-height:1.3;color:var(--ink);margin:32px 0 8px;letter-spacing:-.01em}
.legaldoc h3{font-size:17px;color:var(--ink);margin:20px 0 6px}
.legaldoc p{margin:0 0 12px}
.legaldoc ul{list-style:disc;padding-left:22px;margin:0 0 12px}
.legaldoc li{margin:0 0 6px}
.legaldoc a{color:var(--a);font-weight:700;text-underline-offset:3px}
.legaldoc .legal-docs{margin-top:20px}
@media(max-width:560px){.legaldoc{padding-block:24px 48px;font-size:15.5px}}

/* text tables (terms, rules): wrap, left, normal weight; no sideways scroll */
.p2-tbl.txt .ptable table{min-width:0;table-layout:fixed}
.p2-tbl.txt .ptable tbody th{width:30%}
.p2-tbl.txt .ptable thead th:first-child{width:30%}
.p2-tbl.txt .ptable th,.p2-tbl.txt .ptable td{text-align:left;white-space:normal;overflow-wrap:anywhere}
.p2-tbl.txt .ptable tbody td{font-weight:500!important;font-size:15.5px;line-height:1.5;color:var(--ink)!important}
@media(max-width:700px){
 .p2-tbl.txt .ptable tbody th{width:auto}
 .p2-tbl.txt .ptable tbody td{display:block;text-align:left}
 .p2-tbl.txt .ptable tbody td::before{display:none}
}
/* text cards without a photo fill their column (auto margins made short ones shrink); FAQ cards use the full width */
.fold.nofig .fold-t{width:100%}
.fold.nofig.hasfaq{max-width:1040px}
.fold.nofig.hasfaq .fold-t{max-width:none}
.fold.hasfaq .faq{max-width:none;width:100%}
/* card grids: a short last row is centred under the full rows */
.p2-feats{display:flex;flex-wrap:wrap;justify-content:center}
.p2-feats>li{flex:0 1 calc((100% - (var(--c,3) - 1) * 24px) / var(--c,3));min-width:0}
@media(max-width:900px){.p2-feats{--c:2!important}}
@media(max-width:600px){.p2-feats{--c:1!important}}
.acts-more .linkchips{justify-content:center}

/* discount code: field + "Pritaikyti", result line */
.bkf .code{max-width:420px}
.bkf .code-row{display:flex;gap:8px;align-items:stretch}
.bkf .code-row input{flex:1;min-width:0;text-transform:uppercase}
.bkf .code-row .tbtn{flex:none;white-space:nowrap;padding:0 18px;font-size:14.5px;min-height:46px;align-self:stretch}
.bkf .code-msg{margin:6px 0 0;font-size:14px;line-height:1.45;color:var(--mut,#6b6457);min-height:0}
.bkf .code-msg:empty{display:none}
.bkf .code-msg.ok{color:#2F6B2F;font-weight:700}
.bkf .code-msg.bad{color:#B42318;font-weight:700}

/* ======================================================================
   T2 "Journal" skin (client's choice, 13 Nov 2026): flat light paper without the grid, Nunito instead of the typewriter
   font, flat sticky notes, white cards with a thin line and a small tilt, solid buttons with an offset shadow, tape on the
   photos instead of paperclips, and the T4 dotted trail with a ringed icon between sections. Only paint changes here —
   layout, content and templates are untouched; deleting this block brings back the J2 look.
   ====================================================================== */
:root{--pap:#FBF6EA;--map:#FBF6EA;--card:#FFFFFF;--ink:#33302A;--ink2:#5C574D;--ink3:#8C8577;--ln:#E4DCC8;
 --kr:#FFFFFF;--krd:#E4DCC8;--kfib:linear-gradient(transparent,transparent);--fm:var(--fb);--stampc:var(--a);
 --tape:rgba(224,192,120,.55);--t2sh:2px 4px 0 rgba(51,48,42,.1);--t2y:#FFF3B0;--t2yb:#E8D57A;--t2g:#DFF3D6;--t2gb:#B8DCA8;--t2p:#FFE0CC;--t2pb:#EBB894}
body{background:var(--pap)}
.page-bg,.texture{display:none!important}
.top{background:rgba(251,246,234,.92);border-bottom:2px dashed var(--ln)}
@media(max-width:900px){.top{background:var(--pap)}}

/* buttons: solid, rounded, offset shadow (no stitching) */
.tbtn{outline:0;border-radius:16px;box-shadow:3px 4px 0 rgba(51,48,42,.28)}
.tbtn:hover{box-shadow:5px 6px 0 rgba(51,48,42,.28)}
.tbtn:active{box-shadow:1px 2px 0 rgba(51,48,42,.28)}
.tbtn.ghost{box-shadow:3px 4px 0 rgba(51,48,42,.2)}
.tbtn.line{background:var(--card);border:2px dashed var(--ln);box-shadow:none}
.tbtn.line:hover{border-style:solid;border-color:var(--a)}

/* fact chips → sticky notes */
.stick,.chips li{background:var(--t2y)!important;border:1px solid var(--t2yb);border-radius:3px;outline:0;
 font:800 14px/1.3 var(--fb);text-transform:none;letter-spacing:0;color:var(--ink);box-shadow:2px 3px 0 rgba(51,48,42,.14)}
.stick.s2,.chips li:nth-child(3n+2){background:var(--t2g)!important;border-color:var(--t2gb)}
.stick.s3,.chips li:nth-child(3n){background:var(--t2p)!important;border-color:var(--t2pb)}
.legend>*,.addr,.tellink,.hero-note a,.side-cta a:not(.tbtn){font-family:var(--fb);font-weight:800}

/* cards: white, thin line, small tilt, flat offset shadow */
.note,.lead-card,.pfacts li,.st,.lcards a,.hubs .hub a,.hub a,.camp-card,.ccard a,.pcontact{
 background:var(--card)!important;outline:0!important;border:1px solid var(--ln);border-radius:4px;box-shadow:var(--t2sh)}
.note::after{display:none}
.ni{background:color-mix(in srgb,var(--a) 12%,#fff);box-shadow:none;color:var(--a)}
.note p{color:var(--ink2)}
.pfacts b,.ck,.tk,.kid b,.fh{font-family:var(--fb);font-weight:900;letter-spacing:.14em;color:var(--ink3)}
.cs-m,.tm{font-family:var(--fb);color:var(--ink3)}

/* polaroids: tape strips instead of paperclips */
.tape{width:96px;height:28px;top:-13px;left:50%;transform:translateX(-50%) rotate(-4deg);background:var(--tape);box-shadow:0 1px 2px rgba(51,48,42,.1)}
.tape.t2{left:50%;right:auto;transform:translateX(-50%) rotate(5deg)}
.sheet::before{background:var(--tape)!important;box-shadow:none}

/* session tickets: white, dark outline, tilt, tape */
.tickets{filter:none}
.ticket{background:var(--card)!important;border:1.5px solid var(--ink);border-radius:4px;padding:30px 24px 24px;box-shadow:4px 5px 0 rgba(51,48,42,.16)}
.ticket::before{left:50%;top:-13px;width:96px;height:28px;margin:0 0 0 -48px;border:0;border-radius:0;background:var(--tape);box-shadow:0 1px 2px rgba(51,48,42,.1);transform:rotate(-3deg)}

/* FAQ, tables, footer */
details{border:1.5px dashed var(--ln);border-left:1.5px dashed var(--ln);box-shadow:none}
details[open]{border-style:solid}
.ptable thead th{background:#F6EEDB!important}
.ticks li::before{background:var(--t2y);border:1px solid var(--t2yb)}
.tag{background:var(--t2y)!important;border:1px solid var(--t2yb);color:var(--ink)}
.foot{background:transparent;border-top:2px dashed var(--ln)}

/* between sections: the T4 dotted trail with a ringed icon (instead of footprints) */
.conn .stp use{display:none}
.conn::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:44px;margin-left:-22px;background:var(--a);opacity:.85;
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 168'%3E%3Cpath d='M18 4C26 22 27 40 24 60M22 108C16 128 17 148 24 164' fill='none' stroke='%23000' stroke-width='6' stroke-linecap='round' stroke-dasharray='.1 13'/%3E%3C/svg%3E") center/44px 168px no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 168'%3E%3Cpath d='M18 4C26 22 27 40 24 60M22 108C16 128 17 148 24 164' fill='none' stroke='%23000' stroke-width='6' stroke-linecap='round' stroke-dasharray='.1 13'/%3E%3C/svg%3E") center/44px 168px no-repeat}
.mark{width:58px;height:58px;background:#fff!important;border:3px solid var(--a);color:var(--a);outline:0;box-shadow:none;z-index:1}
.mark .ic{width:22px;height:22px}
.anim .conn::before{opacity:0;transition:opacity .5s ease}
.anim .conn.in::before{opacity:.85}
.ticket{clip-path:none;-webkit-mask:none;mask:none}
.tav{font:700 23px/1.2 var(--fh);text-transform:none;letter-spacing:0;padding:0;border:0;transform:none;-webkit-mask:none;mask:none}
.tav.low{color:#C0541E}.tav.out{color:var(--ink3)}
.quote::before{width:96px;height:28px;top:-13px;left:50%;transform:translateX(-50%) rotate(-4deg);background:var(--tape);box-shadow:0 1px 2px rgba(51,48,42,.1)}
/* T2: camp and home hero title at the demo weight */
.display{font-weight:800;letter-spacing:-.02em;line-height:1.06}
/* T2 as in the demo: cards, tickets and photos sit straight (only the hero photos and sticky notes keep a tilt),
   plain white testimonials, activity titles in Nunito */
.note,.act,.g,.quote,.gbadge,.lead-img,.team-img,.place,.place:nth-child(odd),.place:nth-child(even),.ticket,.ccard,.cc-img,.proj figure,
.svc-c,.svc-c:nth-child(odd),.svc-c:nth-child(even),.pfig,.pfig.r,.pfig.l,.quote.rv.in,
.anim .note.rv.in,.anim .act.rv.in,.anim .g.rv.in,.anim .quote.rv.in,.anim .ticket.rv.in,.anim .ccard.rv.in{transform:none}
.note:hover,.anim .note.rv.in:hover,.act:hover,.anim .act.rv.in:hover,.ccard:hover,.anim .ccard.rv.in:hover{transform:translateY(-3px)}
.g:hover,.anim .g.rv.in:hover{transform:scale(1.02)}
.ticket:hover,.anim .ticket.rv.in:hover{transform:none}
.quote{background-image:none;border:1px solid var(--ln);box-shadow:var(--t2sh)}
.act h3{font-family:var(--fb);font-weight:800;font-size:17px;line-height:1.25;letter-spacing:-.01em}
/* photos straight everywhere (hero collage, camp folds, article photos) */
.pol,.pol.p1,.pol.p2,.hr-one .pol.p1,.hubc-img .pol,.hubc.flip .hubc-img .pol,.hr5 .pol.p1,.hr5 .pol.p2,.hr5 .pol.p3,.hr5 .pol.p4,.hr5 .pol.p5{transform:none}
.pol:hover,.hubc-img .pol:hover,.hr5 .pol:hover{transform:scale(1.02)}
.fold-f,.fold.flip .fold-f,.vcard,.vcard:nth-child(even),.pgal a,.pgal a:nth-child(odd),.pgal a:nth-child(even),.p2-gal a,.p2-gal a:nth-child(odd),.p2-gal a:nth-child(even){transform:none}
.fold-f:hover{transform:scale(1.02)}
@media(max-width:700px){.pfig,.pfig.r,.pfig.l{transform:none}}
