/* Bogárd-VET – egyoldalas új dizájn. Színek a logóból: kék #3e8ccb, sötétkék #0d3d62, piros #cc3d47 */
@font-face{font-family:Fraunces;font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/fraunces-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Fraunces;font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/fraunces-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:300 900;font-display:swap;src:url(../fonts/nunitosans-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:300 900;font-display:swap;src:url(../fonts/nunitosans-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --kek:#3e8ccb; --kek-s:#2a6fa8; --kek-v:#e6f0f9;
  --navy:#0d3d62; --navy-s:#082a45;
  --piros:#cc3d47;
  --krem:#fbf8f3; --homok:#f3ece1; --vonal:#e4dccf;
  --szoveg:#1c2b38; --halvany:#5b6875;
  --zold:#2e9d63;
  --r:18px; --r-k:12px;
  --arnyek:0 1px 2px rgba(13,61,98,.06),0 8px 24px -8px rgba(13,61,98,.14);
  --fej:76px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--fej) + 12px);-webkit-text-size-adjust:100%}
body{margin:0;font:400 17px/1.65 'Nunito Sans',system-ui,sans-serif;color:var(--szoveg);background:var(--krem)}
img{max-width:100%;height:auto;display:block}
a{color:var(--kek-s)}
h1,h2,h3,h4{font-family:Fraunces,Georgia,serif;font-weight:700;color:var(--navy);line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em}
h2{font-size:clamp(1.9rem,1.3rem + 2.2vw,2.8rem)}
h3{font-size:1.3rem}
h4{font-size:1.08rem;margin-top:1.4em}
p{margin:0 0 1em}
.kont{width:min(1180px,100% - 32px);margin-inline:auto}
.keskeny{width:min(860px,100% - 32px)}
.ik{width:1.25em;height:1.25em;flex:none}
.ugras{position:absolute;left:-999px;top:8px;background:var(--navy);color:#fff;padding:8px 14px;border-radius:8px;z-index:100}
.ugras:focus{left:8px}
:focus-visible{outline:3px solid var(--kek);outline-offset:3px}

/* gombok */
.gomb{display:inline-flex;align-items:center;gap:.5em;justify-content:center;background:var(--piros);color:#fff;font-weight:800;
  text-decoration:none;border:2px solid var(--piros);border-radius:999px;padding:.72em 1.4em;font-size:1rem;cursor:pointer;
  transition:transform .15s,background .15s,box-shadow .15s;font-family:inherit;box-shadow:0 6px 18px -8px rgba(204,61,71,.7)}
.gomb:hover{background:#b8323c;border-color:#b8323c;transform:translateY(-1px)}
.gomb-nagy{font-size:1.06rem;padding:.85em 1.6em}
.gomb-vilagos{background:#fff;color:var(--navy);border-color:#fff;box-shadow:none}
.gomb-vilagos:hover{background:var(--kek-v);border-color:var(--kek-v)}
.gomb-vonal{background:transparent;color:var(--navy);border-color:var(--navy);box-shadow:none}
.gomb-vonal:hover{background:var(--navy);color:#fff;border-color:var(--navy)}

/* fejléc */
.fejlec{position:sticky;top:0;z-index:50;background:rgba(251,248,243,.92);backdrop-filter:saturate(1.4) blur(10px);
  -webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s}
.fejlec.gorgetve{border-color:var(--vonal);box-shadow:0 6px 20px -14px rgba(13,61,98,.35)}
.fejlec-sor{display:flex;align-items:center;gap:24px;height:var(--fej)}
.logo img{height:56px;width:auto}
.menu{display:flex;align-items:center;gap:4px;margin-left:auto}
.menu a{white-space:nowrap;color:var(--navy);text-decoration:none;font-weight:700;font-size:.95rem;padding:8px 11px;border-radius:999px;transition:background .15s}
.menu a:hover,.menu a.aktiv{background:var(--kek-v)}
.menu .menu-cta{background:var(--navy);color:#fff;margin-left:6px;padding:9px 16px}
.menu .menu-cta:hover{background:var(--kek-s)}
.fejlec-tel{display:none}
.fejlec-fb{display:grid;place-items:center;flex:none;border-radius:50%;transition:transform .15s}
.fejlec-fb:hover{transform:scale(1.08)}
.fejlec-fb svg{display:block}
.menu-gomb{display:none;margin-left:auto;background:none;border:0;color:var(--navy);padding:8px;cursor:pointer}
.menu-gomb .ik{width:28px;height:28px}

/* hero */
.hero{position:relative;min-height:min(760px,calc(100vh - var(--fej)));display:flex;align-items:center;overflow:hidden;isolation:isolate;
  background:var(--navy)}
.hero-kep{position:absolute;inset:0;z-index:-2;background:url(../img/hero-kutya.jpg) 70% 35%/cover no-repeat}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(8,42,69,.94) 0%,rgba(8,42,69,.82) 38%,rgba(8,42,69,.2) 70%,rgba(8,42,69,0) 100%)}
.hero-belso{padding-block:72px 64px;color:#fff}
.hero h1{color:#fff;font-size:clamp(2.5rem,1.6rem + 4vw,4.6rem);max-width:12ch;font-weight:700;margin-bottom:.35em}
.hero h1 em{font-style:italic;color:#9ccbf0;font-weight:500}
.hero-lead{max-width:52ch;font-size:1.12rem;color:#dfe9f2}
.hero-gombok{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 30px}
.fajok{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px;max-width:620px}
.fajok li{font-size:.85rem;font-weight:700;padding:5px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:#eaf2f9}
.hero-statusz{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);
  padding:6px 14px 6px 12px;border-radius:999px;font-weight:700;font-size:.92rem;margin-bottom:22px}
.pont{width:10px;height:10px;border-radius:50%;background:#f0b23a;box-shadow:0 0 0 0 rgba(240,178,58,.6)}
.hero-statusz.nyitva .pont{background:#4fd18b;animation:pulz 2s infinite}
@keyframes pulz{0%{box-shadow:0 0 0 0 rgba(79,209,139,.6)}70%{box-shadow:0 0 0 10px rgba(79,209,139,0)}100%{box-shadow:0 0 0 0 rgba(79,209,139,0)}}

/* gyorssáv */
.gyorssav{background:#fff;border-bottom:1px solid var(--vonal)}
.gyors-racs{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.gyors{display:flex;gap:14px;align-items:flex-start;padding:26px 20px;border-left:1px solid var(--vonal)}
.gyors:first-child{border-left:0;padding-left:0}
a.gyors{text-decoration:none;color:inherit}
a.gyors:hover strong{color:var(--kek-s);text-decoration:underline}
.gyors .ik{width:30px;height:30px;color:var(--kek);margin-top:2px}
.gyors strong{display:block;color:var(--navy);line-height:1.3}
.gyors span{font-size:.9rem;color:var(--halvany);line-height:1.4;display:block;margin-top:3px}

/* szakaszok */
.szakasz{padding-block:clamp(64px,8vw,112px)}
.szakasz-homok{background:var(--homok)}
.szakasz-sotet{background:var(--navy);color:#d5e2ee}
.szakasz-sotet h2,.szakasz-sotet h3{color:#fff}
.szakasz-sotet .felcim{color:#9ccbf0}
.felcim{font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;color:var(--piros);margin-bottom:.8em;display:flex;align-items:center;gap:10px}
.felcim::before{content:"";width:22px;height:2px;background:currentColor;border-radius:2px}
.szakasz-fej{max-width:720px;margin-bottom:44px}
.szakasz-fej p:last-child{color:var(--halvany);font-size:1.06rem}
.ketoszlop{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(32px,5vw,72px);align-items:start}
.ketoszlop-fordit{grid-template-columns:1fr 1fr}
.kis-cim{font-size:1.15rem;margin-top:1.6em}
.pipas{list-style:none;padding:0;margin:0}
.pipas li{position:relative;padding:8px 0 8px 36px;border-bottom:1px dashed var(--vonal)}
.pipas li:last-child{border-bottom:0}
.pipas li::before{content:"";position:absolute;left:0;top:11px;width:22px;height:22px;border-radius:50%;
  background:var(--kek-v) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a6fa8' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat}
.kep-keret{margin:0;border-radius:var(--r);overflow:hidden;box-shadow:var(--arnyek)}
.kep-keret img{width:100%;aspect-ratio:16/9;object-fit:cover}

/* futó filmszalag (a régi nyitóoldal kockái) */
.film{--kocka:190px;--hezag:18px;--lepes:calc(var(--kocka) + var(--hezag));background:var(--homok);padding:8px 0 34px;overflow:hidden}
.film-cim{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:500;color:var(--kek-s);font-size:clamp(1.4rem,1rem + 1.6vw,2.1rem);
  text-align:center;margin:0 0 18px;padding-top:26px}
.film-ablak{transform:rotate(-1.4deg);margin-inline:-20px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.film-sav{--lyuk:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='18'%3E%3Crect x='6' y='2' width='14' height='14' rx='3' fill='%23fbf8f3'/%3E%3C/svg%3E");
  display:flex;gap:var(--hezag);width:max-content;padding:34px calc(var(--hezag) / 2);background-color:#1f1b1a;
  background-image:var(--lyuk),var(--lyuk);background-repeat:repeat-x;background-position:0 8px,0 calc(100% - 8px);
  background-size:calc(var(--lepes) / 8) 18px;animation:filmfut 70s linear infinite;box-shadow:0 18px 30px -18px rgba(13,61,98,.45)}
.film-sav img{width:var(--kocka);height:auto;aspect-ratio:248/330;object-fit:cover;border-radius:3px;flex:none}
.film:hover .film-sav{animation-play-state:paused}
@keyframes filmfut{to{transform:translateX(-50%)}}

/* szolgáltatás-kártyák */
.szolg-racs{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
@media (min-width:1101px){.szolg-racs{grid-template-columns:repeat(5,1fr);gap:16px}.szolg{padding:22px 18px 18px}}
.szolg{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:10px;background:#fff;border-radius:var(--r);
  padding:24px 22px 20px;border:1px solid var(--vonal);transition:transform .2s,box-shadow .2s,border-color .2s;position:relative}
.szolg:hover,.szolg:focus-visible{transform:translateY(-3px);box-shadow:var(--arnyek);border-color:#c9dcee}
.szolg:focus-visible{outline:3px solid var(--kek);outline-offset:3px}
.szolg-ik{width:52px;height:52px;border-radius:14px;background:var(--kek-v);color:var(--kek-s);display:grid;place-items:center;margin-bottom:6px;transition:background .2s,color .2s}
.szolg:hover .szolg-ik{background:var(--kek);color:#fff}
.szolg-ik .ik{width:28px;height:28px}
.szolg-cim{font-family:Fraunces,Georgia,serif;font-weight:700;color:var(--navy);font-size:1.18rem;line-height:1.2}
.szolg-le{color:var(--halvany);font-size:.94rem;line-height:1.5;flex:1}
.szolg-tovabb{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:.9rem;color:var(--piros);margin-top:6px}
.szolg-tovabb .ik{width:16px;height:16px;transition:transform .2s}
.szolg:hover .szolg-tovabb .ik{transform:translateX(4px)}

/* párbeszédablak */
.dlg{border:0;padding:0;border-radius:22px;width:min(920px,100% - 24px);max-height:min(88vh,860px);background:#fff;color:var(--szoveg);
  box-shadow:0 30px 80px -20px rgba(8,42,69,.5);overflow:hidden}
.dlg[open]{display:flex;animation:be .22s ease-out}
.dlg::backdrop{background:rgba(8,42,69,.55);backdrop-filter:blur(3px)}
@keyframes be{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.dlg-tart{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);width:100%;overflow:auto}
.dlg-kep{margin:0;min-height:100%;background:var(--homok)}
.dlg-kep img{width:100%;height:100%;object-fit:cover;position:sticky;top:0;max-height:min(88vh,860px)}
.dlg-torzs{padding:40px 40px 32px}
.dlg-torzs h3{font-size:1.9rem}
.dlg-torzs ul{padding-left:1.2em}
.dlg-torzs li{margin-bottom:.4em}
.dlg-cimke{display:flex;align-items:center;gap:8px;color:var(--kek-s);font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em}
.dlg-cimke .ik{width:20px;height:20px}
.dlg-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;padding-top:22px;border-top:1px solid var(--vonal)}
.dlg-tipp a{font-weight:800;text-decoration:none}
.dlg-x{position:absolute;top:12px;right:12px;z-index:2;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.92);
  color:var(--navy);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.dlg-x:hover{background:var(--kek-v)}
body.dlg-nyitva{overflow:hidden}

/* oltási naptár */
.olt-doboz{background:#fff;border-radius:22px;padding:26px;box-shadow:var(--arnyek);border:1px solid var(--vonal)}
.fulek{display:flex;gap:6px;background:var(--krem);padding:5px;border-radius:999px;margin-bottom:24px}
.fulek button{flex:1;border:0;background:none;font:inherit;font-weight:800;color:var(--halvany);padding:9px 8px;border-radius:999px;cursor:pointer;font-size:.95rem}
.fulek button[aria-selected=true]{background:var(--navy);color:#fff}
.idovonal{list-style:none;padding:0;margin:0;position:relative}
.idovonal::before{content:"";position:absolute;left:113px;top:14px;bottom:14px;width:2px;background:linear-gradient(var(--kek),var(--kek-v))}
.idovonal li{display:grid;grid-template-columns:100px 1fr;column-gap:30px;align-items:start;padding:8px 0;position:relative}
.idovonal li::before{content:"";position:absolute;left:107px;top:13px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--kek)}
.iv-mikor{font-weight:800;color:var(--navy);font-size:.92rem;text-align:right;line-height:1.3;padding-top:2px}
.iv-mi{line-height:1.45}
.olt-bev{font-weight:800;color:var(--navy)}
.olt-chipek{list-style:none;padding:0;margin:0 0 6px;display:flex;flex-wrap:wrap;gap:8px}
.olt-chipek li{background:var(--kek-v);color:var(--navy);font-weight:700;padding:8px 14px;border-radius:12px}
.olt-megj{display:flex;gap:10px;align-items:flex-start;background:#fdf1f1;color:#8e2630;border-radius:12px;padding:12px 14px;margin:18px 0 0;font-weight:700;font-size:.95rem}
.olt-megj .ik{color:var(--piros);margin-top:2px}
.megjegyzes{display:flex;gap:12px;align-items:flex-start;background:var(--kek-v);border-radius:14px;padding:14px 16px;color:var(--navy);font-weight:600}
.megjegyzes .ik{color:var(--kek-s);margin-top:3px;width:24px;height:24px}

/* rendelő */
.felszereles{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.felszereles li{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:18px}
.felszereles strong{display:block;color:#fff;font-family:Fraunces,Georgia,serif;font-size:1.1rem;margin-bottom:4px}
.felszereles span{font-size:.92rem;color:#b9cde0;line-height:1.45;display:block}
.galeria{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;gap:12px;margin-top:56px}
.galeria figure{margin:0;position:relative;border-radius:16px;overflow:hidden}
.galeria figure:first-child{grid-row:span 2}
.galeria figure:nth-child(4){grid-column:span 2}
.galeria img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.galeria figure:hover img{transform:scale(1.04)}
.galeria figcaption{position:absolute;left:10px;bottom:10px;background:rgba(8,42,69,.78);color:#fff;font-size:.82rem;font-weight:700;padding:4px 10px;border-radius:999px}

/* csapat, vélemények */
.csapat-racs{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tag{display:grid;grid-template-columns:150px 1fr;gap:24px;background:#fff;border-radius:22px;padding:28px;border:1px solid var(--vonal);align-items:start}
.tag img{width:150px;height:150px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 6px var(--kek-v)}
.tag h3{margin-bottom:.1em}
.tag-szerep{color:var(--piros);font-weight:800;text-transform:uppercase;font-size:.8rem;letter-spacing:.1em}
.tag blockquote{margin:0;font-family:Fraunces,Georgia,serif;font-style:italic;color:var(--navy);border-left:3px solid var(--kek);padding-left:14px}
.velemeny-sav{margin-top:56px}
.velemeny-racs{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.velemeny{margin:0;display:grid;grid-template-columns:110px 1fr;gap:20px;align-items:center;background:var(--kek-v);border-radius:22px;padding:22px}
.velemeny img{width:110px;height:110px;border-radius:24px;object-fit:cover;grid-row:span 2}
.velemeny blockquote{margin:0;font-family:Fraunces,Georgia,serif;font-size:1.08rem;color:var(--navy);line-height:1.45}
.velemeny figcaption{display:flex;gap:8px;align-items:center;font-weight:800;color:var(--kek-s)}

/* hírek a Facebookról */
.szakasz-hir{padding-top:0}
.szakasz-fej-sor{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.szakasz-fej-sor h2{margin-bottom:0}
.gomb-fb{background:#fff;color:var(--navy);border-color:var(--vonal);box-shadow:none;padding:.5em 1.2em .5em .5em}
.gomb-fb:hover{background:var(--kek-v);border-color:var(--kek-v)}
.gomb-fb svg{width:30px;height:30px}
.hir-racs{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.hir{background:#fff;border:1px solid var(--vonal);border-radius:22px;overflow:hidden;display:flex;flex-direction:column}
.hir-kep{display:block;overflow:hidden;aspect-ratio:4/3}
.hir-kep img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.hir:hover .hir-kep img{transform:scale(1.03)}
.hir-torzs{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.hir-torzs p{color:var(--halvany)}
.hir-datum{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:800;color:var(--kek-s)!important;margin-bottom:.6em}
.hir-datum svg{width:18px;height:18px}
.hir-tovabb{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-weight:800;color:var(--piros);text-decoration:none;font-size:.92rem}
.hir-tovabb .ik{width:16px;height:16px;transition:transform .2s}
.hir-tovabb:hover .ik{transform:translateX(3px)}
.velemeny-fej{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.velemeny-fej .kis-cim{margin:0}
.fb-ertekeles{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--halvany);font-size:.88rem;background:#fff;border:1px solid var(--vonal);border-radius:999px;padding:5px 16px 5px 5px}
.fb-ertekeles svg{width:30px;height:30px}
.fb-ertekeles b{color:var(--navy);margin-right:4px}
.fb-ertekeles:hover{border-color:#0866FF}

/* harmonika */
.harmonika details{background:#fff;border-radius:16px;border:1px solid var(--vonal);margin-bottom:12px;overflow:hidden}
.harmonika summary{list-style:none;cursor:pointer;padding:20px 60px 20px 24px;font-family:Fraunces,Georgia,serif;font-weight:700;font-size:1.18rem;color:var(--navy);position:relative}
.harmonika summary::-webkit-details-marker{display:none}
.harmonika summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;
  background:var(--kek-v);display:grid;place-items:center;font-family:'Nunito Sans',sans-serif;font-size:1.3rem;transition:transform .2s}
.harmonika details[open] summary::after{content:"–";background:var(--navy);color:#fff}
.h-cimke{display:block;font-family:'Nunito Sans',sans-serif;font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;color:var(--piros);font-weight:800;margin-bottom:2px}
.h-torzs{padding:0 24px 18px}
.h-torzs ul{padding-left:1.2em}

/* kapcsolat */
.kapcs-racs{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:20px;align-items:start}
.kartya{background:#fff;border-radius:22px;padding:28px;border:1px solid var(--vonal)}
.kartya h3{display:flex;align-items:center;gap:10px;font-size:1.25rem}
.kartya h3 .ik{color:var(--kek)}
.kartya-kek{background:var(--navy);color:#d5e2ee;border-color:var(--navy)}
.kartya-kek h3{color:#fff}
.kartya-kek h3 .ik{color:#9ccbf0}
.apro{font-size:.86rem;color:var(--halvany);margin:14px 0 0;line-height:1.5}
.kartya-kek .apro{color:#a9c0d6}
.nyitva{width:100%;border-collapse:collapse}
.nyitva th,.nyitva td{padding:9px 6px;border-bottom:1px solid var(--vonal);text-align:left;vertical-align:top}
.nyitva th{font-weight:700;width:40%}
.nyitva td{font-variant-numeric:tabular-nums}
.nyitva td small{display:block;color:var(--halvany);font-size:.8rem}
.nyitva tr.zarva td{color:var(--halvany)}
.nyitva tr.ma{background:var(--kek-v)}
.nyitva tr.ma th{color:var(--navy);position:relative}
.nyitva tr.ma th::after{content:"ma";margin-left:8px;font-size:.7rem;background:var(--navy);color:#fff;padding:2px 7px;border-radius:999px;vertical-align:2px}
.elerhetoseg{list-style:none;padding:0;margin:0 0 20px}
.elerhetoseg li{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.elerhetoseg span{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:#9ccbf0;font-weight:800}
.elerhetoseg a{color:#fff;font-weight:800;font-size:1.12rem;text-decoration:none;word-break:break-word}
.elerhetoseg a:hover{text-decoration:underline}
.urlap label{display:block;font-weight:700;font-size:.9rem;color:var(--navy);margin-top:12px}
.urlap input,.urlap select,.urlap textarea{display:block;width:100%;margin-top:5px;font:inherit;font-size:1rem;padding:10px 12px;border:1.5px solid var(--vonal);
  border-radius:10px;background:var(--krem);color:var(--szoveg)}
.urlap input:focus,.urlap select:focus,.urlap textarea:focus{outline:none;border-color:var(--kek);background:#fff;box-shadow:0 0 0 3px var(--kek-v)}
.urlap .hibas{border-color:var(--piros)}
.urlap-ket{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.urlap button{margin-top:18px;width:100%}
.urlap-valasz{margin:14px 0 0;padding:12px 14px;border-radius:12px;background:#e8f6ee;color:#1d6b43;font-weight:700}
.rolunk-kep{display:flex;flex-direction:column;gap:16px}
.utvonal{padding:24px}
.utvonal-al{font-weight:800;color:var(--navy);margin:16px 0 0;font-size:.9rem}
.utvonal h3 .ik{color:var(--piros)}
.utvonal-cim{color:var(--halvany);font-size:.95rem}
.utvonal-cim strong{color:var(--navy);font-size:1.05rem}
.utvonal-racs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.utvonal-gomb{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;background:var(--krem);border:1px solid var(--vonal);
  color:var(--szoveg);text-decoration:none;transition:border-color .2s,transform .2s,background .2s}
.utvonal-gomb:hover{border-color:var(--kek);background:#fff;transform:translateY(-2px)}
.nav-logo{width:40px;height:40px;flex:none;border-radius:11px;display:grid;place-items:center;box-shadow:inset 0 0 0 1px rgba(13,61,98,.1)}
.nav-logo img{width:24px;height:24px;object-fit:contain}
.l-google-maps{background:#fff}
.l-google-maps img{height:26px}
.l-waze{background:#33ccff}
.l-waze img{width:26px;height:26px}
.l-apple{background:#000}
.l-apple img{width:22px;height:22px;margin-top:-2px}
.utvonal-gomb>span:not(.nav-logo){display:flex;flex-direction:column;line-height:1.25;min-width:0}
.utvonal-gomb b{font-size:.95rem;color:var(--navy)}
.utvonal-gomb small{font-size:.78rem;color:var(--halvany)}
.utvonal-gomb>.ik{margin-left:auto;width:16px;height:16px;color:var(--piros);transition:transform .2s}
.utvonal-gomb:hover>.ik{transform:translateX(3px)}
.terkep{border-radius:22px;overflow:hidden;background:var(--homok);border:1px solid var(--vonal)}
.terkep iframe{width:100%;height:320px;border:0;display:block}

/* lábléc */
.lablec{background:var(--navy-s);color:#a9c0d6;padding:64px 0 24px;font-size:.95rem}
.lablec-racs{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}
.lablec h4{color:#fff;font-family:'Nunito Sans',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.82rem;margin:0 0 14px}
.lablec a{color:#fff;text-decoration:none}
.lablec a:hover{text-decoration:underline}
.lablec-logo{height:64px;width:auto;background:#fff;border-radius:14px;padding:10px 16px;box-sizing:content-box;margin-bottom:16px}
.lablec-fb{display:inline-flex;gap:8px;align-items:center;font-weight:800}
.lablec-also{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.1);margin-top:44px;padding-top:20px;font-size:.85rem}

.hivo-sav{display:none}

/* megjelenés görgetéskor */
.fel{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.fel.lathato{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.fel{opacity:1;transform:none}}

/* ------------------------------------------------ reszponzív */
@media (max-width:1240px){
  .menu-gomb{display:block}
  .fejlec-tel{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:var(--navy);font-weight:800;text-decoration:none;font-size:.95rem}
  .fejlec-tel + .menu-gomb{margin-left:4px}
  .fejlec-fb{margin-left:auto}
  .fejlec-fb + .fejlec-tel{margin-left:6px}
  .fejlec-fb svg{width:30px;height:30px}
  .menu{position:fixed;inset:var(--fej) 0 auto 0;flex-direction:column;align-items:stretch;gap:2px;background:var(--krem);padding:12px 16px 20px;
    border-bottom:1px solid var(--vonal);box-shadow:0 20px 30px -20px rgba(0,0,0,.3);transform:translateY(-110%);visibility:hidden;transition:transform .25s,visibility .25s;z-index:-1}
  .menu.nyitva{transform:none;visibility:visible}
  .menu a{padding:12px 14px;font-size:1.05rem;border-radius:12px}
  .menu .menu-cta{margin:8px 0 0;text-align:center}
}
@media (max-width:1100px){
  .kapcs-racs{grid-template-columns:1fr 1fr}
  .urlap{grid-column:span 2}
}
@media (max-width:960px){
  :root{--fej:66px}
  .logo img{height:44px}
  .gyors-racs{grid-template-columns:1fr 1fr}
  .gyors{border-left:0;padding:18px 0;border-top:1px solid var(--vonal)}
  .gyors:nth-child(-n+2){border-top:0}
  .gyors:nth-child(even){padding-left:16px}
  .ketoszlop,.ketoszlop-fordit{grid-template-columns:1fr}
  .ketoszlop-fordit>:first-child{order:2}
  .csapat-racs,.velemeny-racs,.hir-racs{grid-template-columns:1fr}
  .galeria{grid-template-columns:1fr 1fr;grid-template-rows:200px 160px 160px}
  .galeria figure:first-child{grid-column:span 2;grid-row:auto}
  .galeria figure:nth-child(4){grid-column:span 2}
  .lablec-racs{grid-template-columns:1fr 1fr}
  .lablec-racs>:first-child{grid-column:span 2}
  .dlg-tart{grid-template-columns:1fr}
  .dlg-kep img{position:static;height:240px;max-height:none}
  .dlg-torzs{padding:28px 24px 24px}
}
@media (max-width:640px){
  .film{--kocka:130px;--hezag:12px;padding-bottom:26px}
  .film-sav{padding-block:28px;animation-duration:55s}
  body{font-size:16px}
  .fejlec-tel span{display:none}
  .fejlec-tel .ik{width:24px;height:24px}
  .hero{min-height:auto}
  .hero-kep{background-position:72% 30%}
  .hero::before{background:linear-gradient(180deg,rgba(8,42,69,.55) 0%,rgba(8,42,69,.88) 45%,rgba(8,42,69,.96) 100%)}
  .hero-belso{padding-block:120px 40px}
  .hero-gombok .gomb{flex:1 1 100%}
  .gyors-racs{grid-template-columns:1fr}
  .gyors,.gyors:nth-child(even){padding:16px 0;border-top:1px solid var(--vonal)}
  .gyors:nth-child(2){border-top:1px solid var(--vonal)}
    .felszereles{grid-template-columns:1fr}
  .tag{grid-template-columns:1fr;text-align:center;padding:24px}
  .tag img{margin:0 auto;width:130px;height:130px}
  .tag blockquote{border-left:0;padding-left:0}
  .velemeny{grid-template-columns:80px 1fr;gap:14px;padding:18px}
  .velemeny img{width:80px;height:80px;border-radius:18px;grid-row:auto}
  .velemeny figcaption{grid-column:span 2}
  .kapcs-racs{grid-template-columns:1fr}
  .urlap{grid-column:auto}
  .urlap-ket{grid-template-columns:1fr}
  .utvonal-racs{grid-template-columns:1fr}
  .kartya{padding:22px}
  .olt-doboz{padding:18px}
  .fulek button{font-size:.85rem;padding:8px 4px}
  .idovonal::before{left:91px}
  .idovonal li{grid-template-columns:80px 1fr;column-gap:26px}
  .idovonal li::before{left:85px}
  .iv-mikor{font-size:.84rem}
  .lablec-racs{grid-template-columns:1fr}
  .lablec-racs>:first-child{grid-column:auto}
  .lablec{padding-bottom:90px}
  .hivo-sav{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    background:rgba(251,248,243,.95);backdrop-filter:blur(8px);border-top:1px solid var(--vonal)}
  .hivo-sav a{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:999px;font-weight:800;text-decoration:none;background:var(--navy);color:#fff}
  .hivo-sav a:first-child{background:var(--piros)}
  .dlg{width:100%;max-height:92vh;border-radius:22px 22px 0 0;margin:auto 0 0}
}
