/*
  Silencio Temetkezés – stíluslap
  Készítette: KexDesign – www.kexdesign.hu
*/

/* ---------- Betűtípusok (saját tárhelyről, magyar ékezetekkel) ---------- */
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond-latin-ext-500-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:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond-latin-500-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:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/cormorant-garamond-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:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/cormorant-garamond-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:"Cormorant Garamond";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/cormorant-garamond-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:"Cormorant Garamond";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/cormorant-garamond-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:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond-latin-ext-500-italic.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:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond-latin-500-italic.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:"Poppins";font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/poppins-latin-ext-300-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:"Poppins";font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/poppins-latin-300-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:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/poppins-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:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/poppins-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:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/poppins-latin-ext-500-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:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/poppins-latin-500-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:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/poppins-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:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/poppins-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}

/* ---------- Alapok ---------- */
:root{
  --lnum:1;
  --zold:#677337;
  --zold-sotet:#525c2b;
  --zold-melyebb:#3f4721;
  --zold-vilagos:#8b9758;
  --zold-halvany:#eef0e4;
  --barna:#5b4040;
  --barna-sotet:#463131;
  --barna-vilagos:#7d5f5f;
  --barna-halvany:#f3eeec;
  --sotet:#333;
  --sotet-2:#2a2a2a;
  --sotet-3:#3d3d3d;
  --szoveg:#4a4a4a;
  --halvany:#f7f5f0;
  --vonal:#e6e2da;
  --feher:#fff;
  --fejlec-mag:84px;
  --radius:14px;
  --arnyek:0 10px 30px rgba(51,51,51,.08);
  --arnyek-nagy:0 22px 50px rgba(51,51,51,.16);
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;font-family:var(--sans);font-weight:400;font-size:16px;line-height:1.75;color:var(--szoveg);background:var(--feher);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
img{max-width:100%;height:auto;display:block;border:0}
a{color:var(--zold);text-decoration:none;transition:color .25s var(--ease)}
a:hover{color:var(--barna)}
p{margin:0 0 1.1em}
h1,h2,h3,h4{font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1;font-family:var(--serif);color:var(--sotet);font-weight:600;line-height:1.2;margin:0 0 .6em;letter-spacing:.2px}
h1{font-size:clamp(2.1rem,4.2vw,3.3rem)}
h2{font-size:clamp(1.75rem,3.2vw,2.5rem)}
h3{font-size:clamp(1.35rem,2.2vw,1.7rem)}
h4{font-size:1.25rem}
strong{color:var(--sotet);font-weight:600}
ul{padding-left:1.2em}
::selection{background:var(--zold);color:#fff}
:focus-visible{outline:3px solid var(--zold-vilagos);outline-offset:3px;border-radius:4px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:12px;top:-60px;z-index:2000;background:var(--zold);color:#fff;padding:10px 16px;border-radius:8px;transition:top .2s}
.skip-link:focus{top:12px;color:#fff}
.container{width:100%;max-width:1200px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}
.container--narrow{max-width:940px}
.icon{width:1em;height:1em;display:inline-block;vertical-align:-.14em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* ---------- Infosáv ---------- */
.infosav{background:var(--zold);color:#fff;font-size:.86rem;line-height:1.4;position:relative;z-index:60}
.infosav .container{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.infosav a,.infosav span{color:#fff;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.infosav a:hover{color:#fff;opacity:.85}
.infosav__bal,.infosav__jobb{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.infosav__ugyelet{font-weight:500;letter-spacing:.3px}
.infosav__ugyelet .pulzus{width:8px;height:8px;border-radius:50%;background:#fff;position:relative;flex:none}
.infosav__ugyelet .pulzus::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(255,255,255,.7);animation:pulzus 2s infinite}
@keyframes pulzus{0%{transform:scale(.6);opacity:1}100%{transform:scale(1.8);opacity:0}}

/* ---------- Fejléc ---------- */
.fejlec{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:saturate(160%) blur(8px);-webkit-backdrop-filter:saturate(160%) blur(8px);border-bottom:1px solid transparent;transition:box-shadow .3s var(--ease),border-color .3s}
.fejlec.is-scrolled{box-shadow:0 6px 24px rgba(51,51,51,.10);border-bottom-color:var(--vonal)}
.fejlec .container{display:flex;align-items:center;gap:28px;min-height:var(--fejlec-mag);transition:min-height .3s var(--ease)}
.fejlec.is-scrolled .container{min-height:70px}
.logo{display:block;flex:none;line-height:0}
.logo img{width:auto;height:46px;max-width:100%;transition:height .3s var(--ease),transform .4s var(--ease)}
.logo:hover img{transform:translateY(-1px)}
.fejlec.is-scrolled .logo img{height:40px}

.fomenu{margin-left:auto}
.fomenu>ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px}
.fomenu li{position:relative}
.fomenu>ul>li>a{display:flex;align-items:center;gap:6px;padding:12px 14px;font-size:.93rem;font-weight:500;color:var(--sotet);letter-spacing:.2px;position:relative}
.fomenu>ul>li>a::after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:2px;background:var(--zold);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.fomenu>ul>li>a:hover,.fomenu>ul>li.aktiv>a,.fomenu>ul>li:focus-within>a{color:var(--zold)}
.fomenu>ul>li>a:hover::after,.fomenu>ul>li.aktiv>a::after{transform:scaleX(1)}
.fomenu .nyil{width:10px;height:10px;transition:transform .3s}
.fomenu li:hover .nyil{transform:rotate(180deg)}
.almenu{list-style:none;margin:0;padding:10px;position:absolute;top:100%;left:0;min-width:230px;background:#fff;border-radius:12px;box-shadow:var(--arnyek-nagy);border-top:3px solid var(--zold);opacity:0;visibility:hidden;transform:translateY(12px);transition:all .3s var(--ease)}
.fomenu li:hover>.almenu,.fomenu li:focus-within>.almenu{opacity:1;visibility:visible;transform:translateY(0)}
.almenu a{display:block;padding:10px 14px;border-radius:8px;color:var(--sotet);font-size:.92rem;transition:background .25s,color .25s,padding .25s}
.almenu a:hover,.almenu a.aktiv{background:var(--zold-halvany);color:var(--zold);padding-left:20px}

.hamburger{flex:none;width:48px;height:48px;border-radius:12px;border:1px solid var(--vonal);background:#fff;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;transition:background .3s,border-color .3s,transform .3s;padding:0;-webkit-tap-highlight-color:transparent}
.hamburger span{display:block;width:22px;height:2px;background:var(--sotet);border-radius:2px;transition:transform .35s var(--ease),opacity .25s,width .3s,background .3s}
.hamburger span:nth-child(2){width:16px;margin-left:6px}
.hamburger:hover{border-color:var(--zold);background:var(--zold)}
.hamburger:hover span{background:#fff;width:22px;margin-left:0}

/* ---------- Oldalsó (offcanvas) menü ---------- */
.offcanvas-hatter{position:fixed;inset:0;background:rgba(30,30,30,.55);opacity:0;visibility:hidden;transition:all .35s;z-index:900;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.offcanvas{position:fixed;top:0;right:0;height:100%;height:100dvh;width:min(380px,88vw);background:var(--sotet);color:#ddd;z-index:901;transform:translateX(105%);transition:transform .45s var(--ease);display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom)}
body.menu-nyitva{overflow:hidden}
body.menu-nyitva .offcanvas{transform:none}
body.menu-nyitva .offcanvas-hatter{opacity:1;visibility:visible}
.offcanvas__fej{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid rgba(255,255,255,.08)}
.offcanvas__cim{font-family:var(--serif);font-size:1.5rem;color:#fff}
.offcanvas__zar{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center;transition:transform .35s var(--ease),background .3s}
.offcanvas__zar:hover{transform:rotate(90deg);background:var(--zold);border-color:var(--zold)}
.offcanvas__zar .icon{width:20px;height:20px}
.offcanvas nav ul{list-style:none;margin:0;padding:0}
.offcanvas nav>ul{padding:10px 0}
.offcanvas nav li{border-bottom:1px solid rgba(255,255,255,.06)}
.offcanvas nav a{display:block;padding:14px 24px;color:#eee;font-size:1rem;transition:color .25s,padding .25s,background .25s}
.offcanvas nav a:hover,.offcanvas nav a.aktiv{color:#fff;background:rgba(103,115,55,.35);padding-left:30px}
.offcanvas .sor{display:flex;align-items:stretch}
.offcanvas .sor>a{flex:1}
.offcanvas .lenyito{width:56px;background:transparent;border:0;border-left:1px solid rgba(255,255,255,.06);color:#ddd;cursor:pointer;display:grid;place-items:center}
.offcanvas .lenyito .icon{transition:transform .3s}
.offcanvas li.nyitva>.sor .lenyito .icon{transform:rotate(180deg)}
.offcanvas .al{max-height:0;overflow:hidden;transition:max-height .4s var(--ease);background:rgba(0,0,0,.15)}
.offcanvas li.nyitva>.al{max-height:400px}
.offcanvas .al a{padding-left:40px;font-size:.94rem;color:#ccc}
.offcanvas .al a:hover,.offcanvas .al a.aktiv{padding-left:46px}
.offcanvas__kapcs{padding:22px 24px;margin-top:auto;font-size:.92rem;line-height:1.6}
.offcanvas__kapcs a{color:#fff;display:flex;align-items:center;gap:10px;padding:6px 0}
.offcanvas__kapcs a:hover{color:var(--zold-vilagos)}
.offcanvas__kapcs .icon{color:var(--zold-vilagos)}
.offcanvas__gomb{display:flex!important;justify-content:center;margin-top:14px;background:var(--zold);border-radius:999px;padding:12px 18px!important;font-weight:500}
.offcanvas__gomb:hover{background:var(--zold-sotet);color:#fff!important}

/* ---------- Gombok ---------- */
.gomb{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 28px;border-radius:999px;font-family:var(--sans);font-weight:500;font-size:.95rem;letter-spacing:.3px;line-height:1.2;border:2px solid transparent;cursor:pointer;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s,color .3s,border-color .3s;position:relative;overflow:hidden;isolation:isolate;-webkit-tap-highlight-color:transparent}
.gomb .icon{width:18px;height:18px}
.gomb::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--ease);z-index:-1}
.gomb:hover::before{transform:translateX(120%)}
.gomb:hover{transform:translateY(-3px)}
.gomb--zold{background:var(--zold);color:#fff;box-shadow:0 10px 24px rgba(103,115,55,.35)}
.gomb--zold:hover{background:var(--zold-sotet);color:#fff;box-shadow:0 14px 30px rgba(103,115,55,.45)}
.gomb--barna{background:var(--barna);color:#fff;box-shadow:0 10px 24px rgba(91,64,64,.3)}
.gomb--barna:hover{background:var(--barna-sotet);color:#fff}
.gomb--atlatszo{border-color:rgba(255,255,255,.8);color:#fff;background:rgba(255,255,255,.06);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.gomb--atlatszo:hover{background:#fff;color:var(--sotet)}
.gomb--feher{background:#fff;color:var(--zold-sotet)}
.gomb--feher:hover{background:var(--sotet);color:#fff}
.gomb--korvonal{border-color:var(--zold);color:var(--zold)}
.gomb--korvonal:hover{background:var(--zold);color:#fff}

/* ---------- Nyitó slideshow ---------- */
.hero{position:relative;height:min(82vh,760px);height:min(82svh,760px);min-height:520px;overflow:hidden;background:var(--sotet);color:#fff}
.hero__slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.2s var(--ease),visibility 1.2s}
.hero__slide.aktiv{opacity:1;visibility:visible;z-index:2}
.hero__kep{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.08);transition:transform 7s linear}
.hero__slide.aktiv .hero__kep{transform:scale(1)}
.hero__slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,25,25,.55) 0%,rgba(25,25,25,.30) 45%,rgba(25,25,25,.12) 100%),linear-gradient(0deg,rgba(25,25,25,.35),transparent 40%);z-index:1}
.hero__slide--split .hero__kep{filter:blur(18px) saturate(110%);transform:scale(1.2)}
.hero__slide--split.aktiv .hero__kep{transform:scale(1.15)}
.hero__keret{position:absolute;right:max(6vw,40px);top:50%;transform:translateY(-50%) translateX(30px);width:min(36vw,540px);z-index:3;border-radius:18px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.45);border:6px solid rgba(255,255,255,.92);opacity:0;transition:opacity 1s .4s var(--ease),transform 1.2s .4s var(--ease)}
.hero__keret img{width:100%;height:auto}
.hero__slide.aktiv .hero__keret{opacity:1;transform:translateY(-50%)}
.hero__slide--split .hero__szoveg{max-width:min(560px,52vw)}
.hero__tartalom{position:relative;z-index:3;height:100%;display:flex;align-items:center}
.hero__szoveg{max-width:640px;padding:40px 0 80px}
.hero__felcim{display:inline-flex;align-items:center;gap:12px;font-size:.8rem;letter-spacing:3px;text-transform:uppercase;font-weight:500;color:#fff;margin-bottom:18px}
.hero__felcim::before{content:"";width:42px;height:2px;background:var(--zold-vilagos)}
.hero__cim{font-family:var(--serif);font-weight:600;font-size:clamp(2.3rem,5.4vw,4.4rem);line-height:1.06;color:#fff;margin:0 0 20px;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.hero__cim em{font-style:italic;color:#dfe6c2;font-weight:500}
.hero__leiras{font-size:clamp(1rem,1.5vw,1.15rem);font-weight:300;color:rgba(255,255,255,.94);max-width:560px;margin-bottom:30px;text-shadow:0 1px 10px rgba(0,0,0,.4)}
.hero__gombok{display:flex;flex-wrap:wrap;gap:14px}
.hero__slide .hero__felcim,.hero__slide .hero__cim,.hero__slide .hero__leiras,.hero__slide .hero__gombok{opacity:0;transform:translateY(28px)}
.hero__slide.aktiv .hero__felcim{animation:felcsuszik .9s .25s var(--ease) forwards}
.hero__slide.aktiv .hero__cim{animation:felcsuszik 1s .45s var(--ease) forwards}
.hero__slide.aktiv .hero__leiras{animation:felcsuszik 1s .7s var(--ease) forwards}
.hero__slide.aktiv .hero__gombok{animation:felcsuszik 1s .9s var(--ease) forwards}
@keyframes felcsuszik{to{opacity:1;transform:none}}
.hero__vezerlo{position:absolute;z-index:5;left:0;right:0;bottom:30px}
.hero__vezerlo .container{display:flex;align-items:center;gap:18px}
.hero__pontok{display:flex;gap:10px}
.hero__pont{width:42px;height:4px;border-radius:4px;background:rgba(255,255,255,.35);border:0;padding:0;cursor:pointer;position:relative;overflow:hidden}
.hero__pont::after{content:"";position:absolute;inset:0;background:#fff;transform:scaleX(0);transform-origin:left}
.hero__pont.aktiv::after{animation:toltes var(--ido,7s) linear forwards}
.hero.szunet .hero__pont.aktiv::after{animation-play-state:paused}
@keyframes toltes{to{transform:scaleX(1)}}
.hero__nyilak{display:flex;gap:10px;margin-left:8px}
.hero__nyil{width:50px;height:50px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;display:grid;place-items:center;transition:background .3s,transform .3s,border-color .3s;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.hero__nyil:hover{background:var(--zold);border-color:var(--zold);transform:scale(1.06)}
.hero__nyil .icon{width:20px;height:20px}
.hero__szamlalo{font-family:var(--serif);font-size:1.15rem;color:rgba(255,255,255,.85);letter-spacing:1px}
.hero__szamlalo b{color:#fff;font-size:1.5rem;font-weight:600}
.hero__gorgeto{position:absolute;z-index:5;left:50%;bottom:26px;transform:translateX(-50%);width:26px;height:42px;border:2px solid rgba(255,255,255,.7);border-radius:14px;display:none}
.hero__gorgeto::after{content:"";position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;background:#fff;border-radius:2px;animation:gorget 1.8s infinite}
@keyframes gorget{0%{opacity:0;transform:translateY(0)}40%{opacity:1}100%{opacity:0;transform:translateY(12px)}}
@media (min-width:1100px){.hero__gorgeto{display:block}}

/* ---------- Aloldali fejléc-kép ---------- */
.oldalfej{position:relative;min-height:340px;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--sotet)}
.oldalfej__kep{position:absolute;inset:-20px 0;background-size:cover;background-position:center;transform:scale(1.04);animation:lassuzoom 14s ease-out forwards;will-change:transform}
@keyframes lassuzoom{from{transform:scale(1.12)}to{transform:scale(1.02)}}
.oldalfej::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(25,25,25,.62) 0%,rgba(25,25,25,.28) 55%,rgba(25,25,25,.18) 100%)}
.oldalfej .container{position:relative;z-index:2;padding-top:90px;padding-bottom:46px}
.oldalfej h1{color:#fff;margin:0 0 10px;text-shadow:0 2px 20px rgba(0,0,0,.35);animation:felcsuszik .9s .1s var(--ease) both}
.oldalfej p.alcim{max-width:720px;margin:0 0 16px;color:rgba(255,255,255,.92);font-weight:300;animation:felcsuszik .9s .25s var(--ease) both}
.morzsa{animation:felcsuszik .9s .35s var(--ease) both}
.morzsa ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:.85rem}
.morzsa li{display:flex;align-items:center;gap:6px;color:rgba(255,255,255,.75)}
.morzsa li+li::before{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-top:1.5px solid currentColor;transform:rotate(45deg);margin-right:6px}
.morzsa a{color:#fff}
.morzsa a:hover{color:#dfe6c2}

/* ---------- Szekciók ---------- */
.szekcio{padding:clamp(60px,8vw,100px) 0;position:relative}
.szekcio--halvany{background:var(--halvany)}
.szekcio--szurke{background:#f2f2f0}
.szekcio-fej{text-align:center;max-width:760px;margin:0 auto clamp(36px,5vw,56px)}
.felcim{display:inline-flex;align-items:center;gap:12px;font-size:.78rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--zold);margin-bottom:12px}
.felcim::before,.felcim::after{content:"";width:28px;height:1.5px;background:currentColor;opacity:.6}
.szekcio-fej--bal{text-align:left;margin-left:0}
.szekcio-fej--bal .felcim::after{display:none}
.diszvonal{display:flex;align-items:center;justify-content:center;gap:14px;color:var(--zold);margin:18px auto 0}
.diszvonal::before,.diszvonal::after{content:"";height:1px;width:70px;background:linear-gradient(90deg,transparent,var(--zold-vilagos))}
.diszvonal::after{background:linear-gradient(90deg,var(--zold-vilagos),transparent)}
.diszvonal .icon{width:22px;height:22px}
.szekcio-fej--bal .diszvonal{justify-content:flex-start}
.szekcio-fej--bal .diszvonal::before{display:none}
.bevezeto{font-size:1.08rem;color:#5a5a5a}

/* Üdvözlő blokk */
.udv{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(30px,5vw,70px);align-items:center}
.udv__kepek{position:relative;padding:0 0 60px 0}
.udv__kep1{border-radius:var(--radius);overflow:hidden;box-shadow:var(--arnyek-nagy)}
.udv__kep1 img{width:100%;transition:transform 1.2s var(--ease)}
.udv__kep1:hover img{transform:scale(1.05)}
.udv__kep2{position:absolute;right:-20px;bottom:0;width:52%;border-radius:var(--radius);overflow:hidden;border:6px solid #fff;box-shadow:var(--arnyek-nagy)}
.udv__kep2 img{width:100%;transition:transform 1.2s var(--ease)}
.udv__kep2:hover img{transform:scale(1.06)}
.udv__jelveny{position:absolute;left:-14px;top:24px;background:var(--barna);color:#fff;border-radius:14px;padding:16px 20px;box-shadow:var(--arnyek-nagy);text-align:center;line-height:1.2;animation:lebeg 5s ease-in-out infinite}
.udv__jelveny b{display:block;font-family:var(--serif);font-size:2.2rem;color:#fff;font-weight:700}
.udv__jelveny span{font-size:.78rem;letter-spacing:1px;text-transform:uppercase}
@keyframes lebeg{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.udv__szoveg p{text-align:justify;hyphens:auto;-webkit-hyphens:auto}
.udv__alairas{font-family:var(--serif);font-style:italic;font-size:1.6rem;color:var(--barna);margin-top:6px}

/* Számlálók / előnyök */
.elonyok{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:clamp(40px,6vw,70px)}
.elony{background:#fff;border:1px solid var(--vonal);border-radius:var(--radius);padding:26px 22px;text-align:center;transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s}
.elony:hover{transform:translateY(-8px);box-shadow:var(--arnyek-nagy);border-color:transparent}
.elony__ikon{width:62px;height:62px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:var(--zold-halvany);color:var(--zold);transition:background .4s,color .4s,transform .6s var(--ease)}
.elony:hover .elony__ikon{background:var(--zold);color:#fff;transform:rotateY(360deg)}
.elony__ikon .icon{width:28px;height:28px}
.elony__szam{font-family:var(--serif);font-size:2.3rem;font-weight:700;color:var(--barna);line-height:1}
.elony__cim{font-weight:600;color:var(--sotet);margin:6px 0 4px;font-size:.98rem}
.elony p{margin:0;font-size:.88rem;line-height:1.55}

/* Tájékoztató doboz */
.tajekoztato{margin-top:44px;border-radius:var(--radius);background:var(--barna-halvany);border-left:4px solid var(--barna);overflow:hidden}
.tajekoztato summary{cursor:pointer;list-style:none;padding:20px 24px;display:flex;align-items:center;gap:14px;font-weight:600;color:var(--barna)}
.tajekoztato summary::-webkit-details-marker{display:none}
.tajekoztato summary .icon{width:22px;height:22px;flex:none}
.tajekoztato summary .plusz{margin-left:auto;transition:transform .3s}
.tajekoztato[open] summary .plusz{transform:rotate(45deg)}
.tajekoztato__torzs{padding:0 24px 22px 60px}
.tajekoztato__torzs p{text-align:justify}

/* Zöld hívósáv (CTA) */
.hivosav{background:var(--zold);color:#fff;position:relative;overflow:hidden}
.hivosav::before,.hivosav::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.14)}
.hivosav::before{width:420px;height:420px;left:-120px;top:-220px}
.hivosav::after{width:300px;height:300px;right:-60px;bottom:-200px;border-width:40px;border-color:rgba(255,255,255,.05)}
.hivosav .container{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:38px;padding-bottom:38px;flex-wrap:wrap}
.hivosav__szoveg{display:flex;align-items:center;gap:20px}
.hivosav__ikon{width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.15);display:grid;place-items:center;flex:none;position:relative}
.hivosav__ikon::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(255,255,255,.5);animation:pulzus 2.2s infinite}
.hivosav__ikon .icon{width:28px;height:28px;animation:csorog 2.2s infinite}
@keyframes csorog{0%,60%,100%{transform:rotate(0)}65%{transform:rotate(-14deg)}70%{transform:rotate(12deg)}75%{transform:rotate(-10deg)}80%{transform:rotate(8deg)}85%{transform:rotate(0)}}
.hivosav h2{color:#fff;margin:0;font-size:clamp(1.5rem,2.8vw,2.2rem)}
.hivosav p{margin:2px 0 0;color:rgba(255,255,255,.88);font-size:.95rem}
.hivosav__szam{font-family:var(--serif);font-weight:700;font-size:clamp(1.8rem,3.4vw,2.6rem);color:#fff;letter-spacing:1px;display:inline-flex;align-items:center;gap:12px;padding:8px 26px;border:2px solid rgba(255,255,255,.6);border-radius:999px;transition:background .3s,color .3s,transform .3s}
.hivosav__szam:hover{background:#fff;color:var(--zold-sotet);transform:scale(1.03)}
.hivosav__szam .icon{width:24px;height:24px}

/* Három kártya */
.kartyak{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.kartya{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--arnyek);transition:transform .45s var(--ease),box-shadow .45s var(--ease);display:flex;flex-direction:column;color:inherit}
.kartya:hover{transform:translateY(-10px);box-shadow:var(--arnyek-nagy);color:inherit}
.kartya__kep{position:relative;overflow:hidden;aspect-ratio:723/482;background:#eee}
.kartya__kep img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.kartya:hover .kartya__kep img{transform:scale(1.08)}
.kartya__kep::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(91,64,64,.45),transparent 60%);opacity:0;transition:opacity .45s}
.kartya:hover .kartya__kep::after{opacity:1}
.kartya__torzs{padding:24px 26px 28px;display:flex;flex-direction:column;flex:1}
.kartya__torzs h3{margin:0 0 8px;font-size:1.6rem;transition:color .3s}
.kartya:hover h3{color:var(--zold)}
.kartya__torzs p{margin:0 0 18px;font-size:.95rem}
.kartya__tovabb{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:500;color:var(--zold);font-size:.92rem}
.kartya__tovabb .icon{transition:transform .35s var(--ease)}
.kartya:hover .kartya__tovabb .icon{transform:translateX(6px)}

/* Szolgáltatás-lista (nyitólap) */
.szolglista{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.szolgdoboz{background:#fff;border-radius:var(--radius);padding:30px 32px;box-shadow:var(--arnyek);border-top:4px solid var(--zold);transition:transform .4s var(--ease),box-shadow .4s}
.szolgdoboz:nth-child(2){border-top-color:var(--barna)}
.szolgdoboz:hover{transform:translateY(-6px);box-shadow:var(--arnyek-nagy)}
.szolgdoboz h3{display:flex;align-items:center;gap:12px}
.szolgdoboz h3 .icon{color:var(--zold);width:26px;height:26px}
.pipalista{list-style:none;margin:0;padding:0}
.pipalista li{position:relative;padding:9px 0 9px 34px;border-bottom:1px dashed var(--vonal);transition:padding .3s,color .3s;line-height:1.5}
.pipalista li:last-child{border-bottom:0}
.pipalista li::before{content:"";position:absolute;left:0;top:11px;width:20px;height:20px;border-radius:50%;background:var(--zold-halvany) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23677337' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/12px no-repeat;transition:transform .3s}
.pipalista li:hover{padding-left:40px;color:var(--sotet)}
.pipalista li:hover::before{transform:scale(1.15)}

/* Pályázati táblák (nyitólap) */
.palyazat-sor{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.palyazat-tabla{display:block;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--arnyek);transition:transform .4s var(--ease),box-shadow .4s;border:1px solid var(--vonal)}
.palyazat-tabla:hover{transform:translateY(-6px) scale(1.01);box-shadow:var(--arnyek-nagy)}
.palyazat-tabla img{width:100%;height:auto}

/* ---------- Tartalmi oldalak ---------- */
.tartalom{font-size:1.02rem}
.tartalom p{text-align:justify;hyphens:auto;-webkit-hyphens:auto}
.tartalom h2{margin-top:1.6em}
.tartalom h2:first-child{margin-top:0}
.tartalom h3{margin-top:1.4em;color:var(--barna)}
.tartalom ul.lista{list-style:none;padding:0;margin:0 0 1.2em}
.tartalom ul.lista li{position:relative;padding:6px 0 6px 28px;line-height:1.55}
.tartalom ul.lista li::before{content:"";position:absolute;left:4px;top:15px;width:8px;height:8px;border-radius:50%;background:var(--zold);box-shadow:0 0 0 4px var(--zold-halvany)}
.tartalom ul.lista ul{list-style:none;padding:4px 0 0 4px}
.tartalom ul.lista ul li::before{background:var(--barna);box-shadow:0 0 0 4px var(--barna-halvany);width:6px;height:6px}
.blokk{background:#fff;border-radius:var(--radius);padding:clamp(24px,4vw,40px);box-shadow:var(--arnyek);margin-bottom:28px;border:1px solid var(--vonal);transition:box-shadow .4s}
.blokk:hover{box-shadow:var(--arnyek-nagy)}
.blokk>h2:first-child,.blokk>h3:first-child{margin-top:0}
.blokk--zold{border-top:4px solid var(--zold)}
.blokk--barna{border-top:4px solid var(--barna)}
.ket-oszlop{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.blokkcim{display:flex;align-items:center;gap:14px}
.blokkcim__ikon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:var(--zold-halvany);color:var(--zold);flex:none}
.blokkcim__ikon .icon{width:26px;height:26px}
.blokk--barna .blokkcim__ikon{background:var(--barna-halvany);color:var(--barna)}
.blokkcim h2,.blokkcim h3{margin:0}
.kiemelt{background:var(--zold-halvany);border-left:4px solid var(--zold);border-radius:0 12px 12px 0;padding:18px 22px;margin:0 0 1.2em}
.kiemelt p:last-child{margin-bottom:0}
.kulcsszavak{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.85rem;margin-top:10px}
.kulcsszavak span.cimke{background:var(--halvany);border:1px solid var(--vonal);padding:4px 12px;border-radius:999px;color:#666}

/* Lépések (folyamat) */
.lepesek{counter-reset:lepes;display:grid;gap:18px;margin:0 0 1.4em;padding:0;list-style:none}
.lepesek li{counter-increment:lepes;position:relative;padding:18px 20px 18px 74px;background:var(--halvany);border-radius:12px;line-height:1.6;transition:transform .35s var(--ease),background .35s}
.lepesek li:hover{transform:translateX(6px);background:var(--zold-halvany)}
.lepesek li::before{content:counter(lepes);position:absolute;left:18px;top:16px;width:40px;height:40px;border-radius:50%;background:var(--zold);color:#fff;font-family:var(--serif);font-weight:700;font-size:1.3rem;display:grid;place-items:center}

/* Harmonika (teendők) */
.harmonika{display:grid;gap:14px}
.harmonika details{background:#fff;border:1px solid var(--vonal);border-radius:12px;overflow:hidden;transition:box-shadow .3s,border-color .3s}
.harmonika details[open]{box-shadow:var(--arnyek);border-color:transparent}
.harmonika summary{cursor:pointer;list-style:none;padding:18px 22px;font-weight:600;color:var(--sotet);display:flex;align-items:center;gap:14px;transition:color .25s,background .25s}
.harmonika summary::-webkit-details-marker{display:none}
.harmonika summary:hover{color:var(--zold);background:var(--halvany)}
.harmonika summary .icon{color:var(--zold);width:22px;height:22px}
.harmonika summary .plusz{margin-left:auto;transition:transform .3s;color:var(--barna)}
.harmonika details[open] summary .plusz{transform:rotate(45deg)}
.harmonika .harmonika__torzs{padding:0 22px 18px 58px}

/* Díjtáblázatok */
.tabla-keret{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius);box-shadow:var(--arnyek);background:#fff;margin-bottom:14px}
table.dijtabla{width:100%;border-collapse:collapse;font-size:.97rem;min-width:520px}
.dijtabla caption{caption-side:top;text-align:left;padding:18px 22px;background:var(--zold);color:#fff;font-family:var(--serif);font-size:1.45rem;font-weight:600}
.dijtabla--barna caption{background:var(--barna)}
.dijtabla th{text-align:left;padding:12px 22px;background:#f4f4ef;color:var(--sotet);font-weight:600;font-size:.82rem;letter-spacing:1px;text-transform:uppercase}
.dijtabla th:last-child,.dijtabla td:last-child{text-align:right;white-space:nowrap}
.dijtabla td{padding:13px 22px;border-bottom:1px solid #efece6;vertical-align:top;line-height:1.5}
.dijtabla tbody tr{transition:background .25s}
.dijtabla tbody tr:hover{background:var(--zold-halvany)}
.dijtabla td.ar{font-weight:600;color:var(--barna);font-variant-numeric:tabular-nums}
.dijtabla .csoport{display:block;font-size:.78rem;letter-spacing:.8px;text-transform:uppercase;color:var(--zold);font-weight:600}
.dijtabla tfoot td{font-weight:600;color:var(--sotet);background:#faf9f6;font-size:.9rem}
.megjegyzes{font-size:.92rem;color:#666;background:var(--halvany);border-radius:12px;padding:14px 18px;display:flex;gap:12px;align-items:flex-start}
.megjegyzes .icon{color:var(--zold);width:20px;height:20px;margin-top:3px}

/* Termékkatalógus (koporsók, urnák) */
.katalogus-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:40px}
.katalogus-nav a{padding:10px 22px;border-radius:999px;border:1.5px solid var(--vonal);color:var(--sotet);font-weight:500;font-size:.92rem;transition:all .3s var(--ease);background:#fff}
.katalogus-nav a:hover{border-color:var(--zold);color:var(--zold);transform:translateY(-2px)}
.katalogus-nav a.aktiv{background:var(--zold);border-color:var(--zold);color:#fff}
.galeria{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:26px}
.termek{margin:0;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--arnyek);transition:transform .45s var(--ease),box-shadow .45s var(--ease);border:1px solid var(--vonal)}
.termek:hover{transform:translateY(-8px);box-shadow:var(--arnyek-nagy)}
.termek a{display:block;color:inherit}
.termek__kep{position:relative;aspect-ratio:1/1;background:#fff;display:flex;align-items:center;justify-content:center;padding:18px;overflow:hidden}
.termek__kep img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:transform .7s var(--ease)}
.termek:hover .termek__kep img{transform:scale(1.07)}
.termek__nagyito{position:absolute;right:14px;top:14px;width:40px;height:40px;border-radius:50%;background:var(--zold);color:#fff;display:grid;place-items:center;opacity:0;transform:scale(.6);transition:all .35s var(--ease)}
.termek:hover .termek__nagyito{opacity:1;transform:none}
.termek__nagyito .icon{width:18px;height:18px}
.termek figcaption{padding:14px 18px 18px;text-align:center;font-weight:500;color:var(--sotet);border-top:1px solid #f1eee8;font-size:.96rem;line-height:1.4;transition:color .3s}
.termek:hover figcaption{color:var(--zold)}
.galeria--urna .termek__kep{aspect-ratio:4/5}
.galeria--urnakoporso .termek__kep{aspect-ratio:6/5}
.katalogus-info{margin-top:40px;text-align:center;font-size:.98rem}

/* Kategória kártyák (Koporsók-Urnák) */
.kategoriak{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.kategoria{display:block;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--arnyek);transition:transform .45s var(--ease),box-shadow .45s;color:inherit;text-align:center;border:1px solid var(--vonal)}
.kategoria:hover{transform:translateY(-10px);box-shadow:var(--arnyek-nagy);color:inherit}
.kategoria__kep{aspect-ratio:1/1;overflow:hidden;background:#fff}
.kategoria__kep img{width:100%;height:100%;object-fit:contain;transition:transform 1s var(--ease)}
.kategoria:hover .kategoria__kep img{transform:scale(1.06)}
.kategoria__cim{padding:22px;border-top:1px solid #f1eee8;position:relative}
.kategoria__cim h2{font-size:1.6rem;letter-spacing:2px;margin:0;transition:color .3s}
.kategoria:hover h2{color:var(--zold)}
.kategoria__cim span{display:inline-flex;align-items:center;gap:6px;font-size:.88rem;color:var(--zold);margin-top:4px}

/* Kapcsolat */
.irodak{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.iroda{background:#fff;border-radius:var(--radius);box-shadow:var(--arnyek);overflow:hidden;display:flex;flex-direction:column;transition:transform .45s var(--ease),box-shadow .45s;border:1px solid var(--vonal)}
.iroda:hover{transform:translateY(-8px);box-shadow:var(--arnyek-nagy)}
.iroda__fej{background:var(--barna);color:#fff;padding:20px 24px;display:flex;align-items:center;gap:14px}
.iroda:nth-child(2) .iroda__fej{background:var(--zold)}
.iroda:nth-child(3) .iroda__fej{background:var(--sotet)}
.iroda__fej .icon{width:26px;height:26px;flex:none}
.iroda__fej h3{color:#fff;margin:0;font-size:1.55rem}
.iroda__torzs{padding:20px 24px 24px;flex:1}
.adatsor{display:flex;gap:12px;align-items:flex-start;padding:8px 0;line-height:1.5;border-bottom:1px dashed #ece8e0}
.adatsor:last-child{border-bottom:0}
.adatsor .icon{color:var(--zold);width:19px;height:19px;margin-top:3px}
.adatsor small{display:block;font-size:.74rem;letter-spacing:1px;text-transform:uppercase;color:#888}
.adatsor a{color:var(--sotet);font-weight:500;word-break:break-word}
.adatsor a:hover{color:var(--zold)}
.terkep{position:relative;aspect-ratio:4/3;background:#e9e6df;border-top:1px solid var(--vonal)}
.terkep iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(.25) contrast(1.02);transition:filter .4s}
.iroda:hover .terkep iframe{filter:none}
.szolgaltato{text-align:center;font-size:.85rem;color:#777;margin:22px 0 0}
.szolgaltato a{color:var(--zold);font-weight:500}
.szolgaltato a:hover{color:var(--barna)}
.nyitvatartas{list-style:none;margin:0;padding:0}
.nyitvatartas li{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px dashed var(--vonal);font-variant-numeric:tabular-nums}
.nyitvatartas li:last-child{border-bottom:0}
.nyitvatartas li.ma{color:var(--zold);font-weight:600}
.nyitvatartas li.ma span:first-child::after{content:" (ma)";font-weight:400;font-size:.85em}
.kapcs-kepek{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}
.kapcs-kepek figure{margin:0;border-radius:var(--radius);overflow:hidden;box-shadow:var(--arnyek)}
.kapcs-kepek img{width:100%;height:auto;transition:transform 1.2s var(--ease)}
.kapcs-kepek figure:hover img{transform:scale(1.04)}
.ugyelet-kartya{background:linear-gradient(140deg,var(--zold) 0%,var(--zold-melyebb) 100%);color:#fff;border-radius:var(--radius);padding:30px;position:relative;overflow:hidden;box-shadow:var(--arnyek-nagy)}
.ugyelet-kartya::after{content:"";position:absolute;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;border:30px solid rgba(255,255,255,.07)}
.ugyelet-kartya h2,.ugyelet-kartya h3{color:#fff}
.ugyelet-kartya a.nagyszam{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif);font-size:2rem;font-weight:700;color:#fff;margin:4px 0 10px}
.ugyelet-kartya a.nagyszam:hover{color:#e6ecd0}
.ugyelet-kartya p{color:rgba(255,255,255,.9)}

/* Pályázat oldal */
.palyazat-adatok{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:26px 0}
.palyazat-adat{background:var(--halvany);border-radius:12px;padding:18px 20px;border:1px solid var(--vonal)}
.palyazat-adat small{display:block;font-size:.74rem;letter-spacing:1px;text-transform:uppercase;color:#888;margin-bottom:4px}
.palyazat-adat b{color:var(--sotet);font-weight:600}
.projekt{display:grid;grid-template-columns:1.1fr 1fr;gap:34px;align-items:center}
.projekt+.projekt{margin-top:40px;padding-top:40px;border-top:1px solid var(--vonal)}
.projekt__tabla{border-radius:var(--radius);overflow:hidden;box-shadow:var(--arnyek-nagy);border:1px solid var(--vonal);display:block;transition:transform .4s var(--ease)}
.projekt__tabla:hover{transform:scale(1.015)}
.projekt__osszeg{font-family:var(--serif);font-size:2.4rem;font-weight:700;color:var(--zold);line-height:1.1;margin:4px 0 14px}
.projekt dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:.95rem}
.projekt dt{color:#888}
.projekt dd{margin:0;color:var(--sotet);font-weight:500}

/* ---------- Közös „Irodáink” sáv a lábléc felett ---------- */
.irodasav{background:var(--barna);color:rgba(255,255,255,.9);position:relative;overflow:hidden}
.irodasav::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 20%,rgba(255,255,255,.07),transparent 40%),radial-gradient(circle at 85% 90%,rgba(103,115,55,.35),transparent 45%)}
.irodasav .container{position:relative;z-index:1;padding-top:clamp(50px,7vw,80px);padding-bottom:clamp(50px,7vw,80px)}
.irodasav .szekcio-fej h2{color:#fff}
.irodasav .felcim{color:#dfe6c2}
.irodasav .diszvonal{color:#dfe6c2}
.irodasav .bevezeto{color:rgba(255,255,255,.85)}
.irodasav__racs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.irodasav__elem{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:26px 24px;transition:transform .4s var(--ease),background .4s,border-color .4s;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.irodasav__elem:hover{transform:translateY(-8px);background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.3)}
.irodasav__elem h3{color:#fff;font-size:1.55rem;display:flex;align-items:center;gap:10px;margin-bottom:12px}
.irodasav__elem h3 .icon{color:#dfe6c2;width:24px;height:24px}
.irodasav__elem p{margin:0 0 8px;line-height:1.55;font-size:.95rem}
.irodasav__elem a{color:#fff;display:inline-flex;align-items:center;gap:9px;font-weight:500;padding:3px 0;word-break:break-word}
.irodasav__elem a:hover{color:#dfe6c2}
.irodasav__elem a .icon{color:#dfe6c2;width:17px;height:17px}
.irodasav__also{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px 30px;margin-top:34px;padding-top:28px;border-top:1px solid rgba(255,255,255,.14);font-size:.93rem}
.irodasav__also span{display:inline-flex;align-items:center;gap:9px}
.irodasav__also .icon{color:#dfe6c2;width:18px;height:18px}

/* ---------- Lábléc ---------- */
.lablec{background:#333;color:#bdbdbd;font-size:.94rem}
.lablec__fo{display:grid;grid-template-columns:1.1fr .8fr 1.6fr;gap:40px;padding-top:60px;padding-bottom:50px}
.lablec h2,.lablec h3{color:#fff;font-size:1.35rem;margin-bottom:16px;position:relative;padding-bottom:12px}
.lablec h3::after{content:"";position:absolute;left:0;bottom:0;width:36px;height:2px;background:var(--zold)}
.lablec__logo{display:inline-block;background:#fff;border-radius:12px;padding:12px 16px;margin-bottom:18px;box-shadow:0 8px 24px rgba(0,0,0,.25);transition:transform .35s var(--ease)}
.lablec__logo:hover{transform:translateY(-3px)}
.lablec__logo img{height:38px;width:auto}
.lablec__nev{font-family:var(--serif);color:#fff;line-height:1.05;margin:0}
.lablec__nev span{display:block;font-size:2rem;font-weight:600}
.lablec__nev span+span{color:var(--zold-vilagos);font-style:italic;font-weight:500}
.lablec ul{list-style:none;margin:0;padding:0}
.lablec li a{color:#bdbdbd;display:inline-flex;align-items:center;gap:8px;padding:5px 0;transition:color .25s,transform .25s}
.lablec li a::before{content:"";width:6px;height:6px;border-right:1.5px solid var(--zold-vilagos);border-top:1.5px solid var(--zold-vilagos);transform:rotate(45deg)}
.lablec li a:hover{color:#fff;transform:translateX(5px)}
.lablec p{margin:0 0 14px;line-height:1.7}
.lablec__kapcs a{color:#fff;display:inline-flex;align-items:center;gap:10px;margin:3px 18px 3px 0}
.lablec__kapcs a:hover{color:var(--zold-vilagos)}
.lablec__kapcs .icon{color:var(--zold-vilagos)}
.lablec__alja{border-top:1px solid #4a4a4a;background:#333}
.lablec__alja .container{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:20px;padding-bottom:20px;flex-wrap:wrap;font-size:.86rem}
.lablec__alja a{color:#fff}
.lablec__alja a:hover{color:var(--zold-vilagos)}

/* ---------- Lebegő elemek: felfelé nyíl + pályázati logó ---------- */
.lebego{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));z-index:800;display:flex;flex-direction:column;align-items:flex-end;gap:12px;pointer-events:none}
.lebego>*{pointer-events:auto}
.fel-gomb{width:50px;height:50px;border-radius:50%;background:var(--zold);color:#fff;border:0;cursor:pointer;display:grid;place-items:center;box-shadow:0 10px 24px rgba(51,51,51,.28);opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .35s,visibility .35s,transform .35s var(--ease),background .3s;position:relative}
.fel-gomb.lathato{opacity:1;visibility:visible;transform:none}
.fel-gomb:hover{background:var(--barna);transform:translateY(-4px)}
.fel-gomb .icon{width:22px;height:22px}
.fel-gomb svg.kor{position:absolute;inset:-4px;width:58px;height:58px;transform:rotate(-90deg)}
.fel-gomb svg.kor circle{fill:none;stroke:var(--zold-vilagos);stroke-width:2.5;stroke-dasharray:170;stroke-dashoffset:170;transition:stroke-dashoffset .1s linear}
.palyazat-jelveny{display:block;width:300px;max-width:calc(100vw - 28px);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 10px 28px rgba(0,0,0,.22);line-height:0;transition:transform .35s var(--ease),box-shadow .35s}
.palyazat-jelveny img{width:100%;height:auto}
.palyazat-jelveny:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(0,0,0,.28)}

/* ---------- Lightbox ---------- */
.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(25,25,25,.94);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s;padding:70px 16px calc(70px + env(safe-area-inset-bottom))}
.lightbox.nyitva{opacity:1;visibility:visible}
.lightbox figure{margin:0;max-width:min(900px,100%);max-height:100%;display:flex;flex-direction:column;align-items:center}
.lightbox img{max-width:100%;max-height:calc(100vh - 200px);max-height:calc(100dvh - 200px);width:auto;height:auto;object-fit:contain;background:#fff;border-radius:10px;padding:16px;transform:scale(.94);transition:transform .4s var(--ease)}
.lightbox.nyitva img{transform:none}
.lightbox figcaption{color:#fff;font-family:var(--serif);font-size:1.5rem;margin-top:14px;text-align:center}
.lightbox__gomb{position:absolute;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;display:grid;place-items:center;transition:background .3s,transform .3s}
.lightbox__gomb:hover{background:var(--zold);border-color:var(--zold)}
.lightbox__gomb .icon{width:22px;height:22px}
.lightbox__zar{top:max(16px,env(safe-area-inset-top));right:16px}
.lightbox__elozo{left:16px;top:50%;margin-top:-26px}
.lightbox__kov{right:16px;top:50%;margin-top:-26px}
.lightbox__szamlalo{position:absolute;top:max(28px,env(safe-area-inset-top));left:24px;color:rgba(255,255,255,.7);font-size:.9rem}

/* ---------- Megjelenési animációk ---------- */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal.balrol{transform:translateX(-40px)}
.reveal.jobbrol{transform:translateX(40px)}
.reveal.lathato{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}

/* 404 */
.hiba404{text-align:center;padding:clamp(70px,10vw,130px) 0}
.hiba404 b{display:block;font-family:var(--serif);font-size:clamp(5rem,14vw,9rem);color:var(--zold);line-height:1}

/* ---------- Reszponzív ---------- */
@media (max-width:1199px){
  .hero__keret{display:none}
  .hero__slide--split .hero__kep{filter:blur(6px);transform:scale(1.06)}
  .hero__slide--split .hero__szoveg{max-width:640px}
}
@media (max-width:1100px){
  .fomenu>ul>li>a{padding:12px 10px;font-size:.9rem}
  .fomenu>ul>li>a::after{left:10px;right:10px}
  .elonyok{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:991px){
  :root{--fejlec-mag:74px}
  .fomenu{display:none}
  .hamburger{margin-left:auto}
  .udv{grid-template-columns:1fr}
  .udv__kepek{max-width:640px;margin:0 auto;width:100%}
  .udv__kep2{right:0}
  .kartyak,.kategoriak{grid-template-columns:repeat(2,1fr)}
  .irodak,.irodasav__racs{grid-template-columns:1fr 1fr}
  .lablec__fo{grid-template-columns:1fr 1fr}
  .lablec__fo>div:last-child{grid-column:1/-1}
  .projekt{grid-template-columns:1fr}
  .hero__keret{display:none}
  .hero__slide--split .hero__kep{filter:none;transform:scale(1.04)}
  .palyazat-adatok{grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
  body{font-size:15.5px}
  .infosav{font-size:.8rem}
  .infosav .container{justify-content:center;gap:4px 16px}
  .infosav__ora,.infosav__email-szoveg{display:none!important}
  .infosav__bal,.infosav__jobb{gap:4px 16px;justify-content:center}
  .logo img{height:36px}
  .fejlec.is-scrolled .logo img{height:32px}
  .fejlec.is-scrolled .container{min-height:62px}
  .hero{min-height:500px;height:78vh;height:78svh}
  .hero__szoveg{padding:30px 0 100px}
  .hero__gombok .gomb{padding:13px 22px;font-size:.9rem}
  .hero__nyil{width:44px;height:44px}
  .hero__szamlalo{display:none}
  .oldalfej{min-height:260px}
  .oldalfej .container{padding-top:70px;padding-bottom:32px}
  .kartyak,.kategoriak,.szolglista,.palyazat-sor,.ket-oszlop,.irodak,.irodasav__racs,.kapcs-kepek{grid-template-columns:1fr}
  .elonyok{grid-template-columns:1fr 1fr;gap:14px}
  .elony{padding:20px 14px}
  .elony__szam{font-size:1.9rem}
  .udv__jelveny{left:8px;top:12px;padding:12px 14px}
  .udv__jelveny b{font-size:1.7rem}
  .hivosav .container{justify-content:center;text-align:center}
  .hivosav__szoveg{flex-direction:column;gap:12px}
  .hivosav__szam{font-size:1.75rem;padding:8px 20px}
  .galeria{grid-template-columns:repeat(2,1fr);gap:14px}
  .termek__kep{padding:10px}
  .termek figcaption{padding:10px 10px 12px;font-size:.86rem}
  .termek__nagyito{display:none}
  .lablec__fo{grid-template-columns:1fr;gap:30px;padding-top:48px}
  .lablec__alja .container{flex-direction:column;text-align:center;justify-content:center}
  /* hely a mindig látható pályázati logónak */
  .lablec__alja{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
  .palyazat-jelveny{width:170px;border-radius:6px}
  .fel-gomb{width:44px;height:44px}
  .fel-gomb svg.kor{width:52px;height:52px}
  .tajekoztato__torzs{padding:0 18px 18px}
  .harmonika .harmonika__torzs{padding:0 18px 16px}
  .tartalom p,.udv__szoveg p{text-align:left}
  .lepesek li{padding:16px 16px 16px 64px}
  .lepesek li::before{left:14px;width:36px;height:36px}
  .palyazat-adatok{grid-template-columns:1fr}
  .lightbox__elozo,.lightbox__kov{top:auto;bottom:max(14px,env(safe-area-inset-bottom));margin-top:0}
  .lightbox__elozo{left:calc(50% - 64px)}
  .lightbox__kov{right:calc(50% - 64px)}
}
@media (max-width:400px){
  .galeria{grid-template-columns:1fr 1fr;gap:10px}
  .elonyok{grid-template-columns:1fr}
  .palyazat-jelveny{width:150px}
  .hero__cim{font-size:2.05rem}
}
@media (hover:none){
  .gomb:hover,.kartya:hover,.termek:hover,.elony:hover,.iroda:hover,.irodasav__elem:hover,.kategoria:hover{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}
  .reveal{opacity:1;transform:none}
  .hero__slide .hero__felcim,.hero__slide .hero__cim,.hero__slide .hero__leiras,.hero__slide .hero__gombok{opacity:1;transform:none}
}
@media print{
  .infosav,.fejlec,.offcanvas,.offcanvas-hatter,.lebego,.hero__vezerlo,.hivosav,.irodasav .terkep{display:none!important}
  .reveal{opacity:1!important;transform:none!important}
  body{color:#000}
}

/* Cormorant: álló (lining) számjegyek mindenhol, hogy a telefonszámok jól olvashatók legyenek */
.hero__cim,.hero__szamlalo,.udv__jelveny b,.elony__szam,.hivosav__szam,.ugyelet-kartya a.nagyszam,.projekt__osszeg,.hiba404 b,.dijtabla caption,.lablec__nev,.udv__alairas,.offcanvas__cim{font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1}
