:root{
  --navy:#102f50;--navy-dark:#0a2441;--navy-soft:#183b5d;
  --teal:#007e6e;--teal-bright:#36c6b0;--teal-light:#e3f5f1;
  --paper:#fff;--bg:#f3f7f9;--pale:#ecf3f7;--ink:#142e49;
  --muted:#596e7e;--line:#dce7ed;--shadow:0 16px 38px rgba(18,48,77,.07);
  --round:20px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);font:16px/1.65 "Segoe UI",Arial,Helvetica,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #0baa94;outline-offset:4px}
button{font:inherit;cursor:pointer}
.container{width:min(1290px,calc(100% - 80px));margin:0 auto}
.skip{position:absolute;left:-5000px;top:auto;z-index:999;background:#fff;padding:12px}.skip:focus{left:20px;top:18px}
.site-header{background:#fff;position:relative;z-index:40;box-shadow:0 3px 21px rgba(8,38,65,.045)}
.topline{min-height:98px;display:flex;justify-content:space-between;align-items:center;gap:25px}
.brand{display:flex;align-items:center;gap:16px;min-width:0}
.brand-mark{flex:none;display:grid;place-items:center;width:55px;height:55px;border:2px solid rgba(0,126,110,.33);border-radius:14px;color:var(--navy);font-weight:800;font-size:23px;letter-spacing:-2.1px;background:linear-gradient(135deg,#f1fcf9,#fff)}
.brand-mark span{color:#0c9c88}
.brand-text{display:flex;flex-direction:column;gap:1px}
.brand-text strong{font-size:20px;font-weight:720;letter-spacing:-.35px;line-height:1.3;color:var(--navy)}
.brand-text small{font-size:12px;line-height:1.35;color:#6d7c8b;letter-spacing:.2px}
.header-actions{display:flex;align-items:center;gap:26px}
.header-accent{height:31px;width:1px;background:#dfebee}
.lang-switch{display:flex;align-items:center;gap:8px;letter-spacing:.6px;font-size:13px;font-weight:740;color:#98a5ac}
.lang-switch a{padding:5px 7px;border-radius:8px;color:#728394;transition:background .2s,color .2s}
.lang-switch a[aria-current="true"]{color:#fff;background:var(--teal)}
.lang-switch a:hover:not([aria-current="true"]){color:var(--teal);background:#f0f7f7}
.menu-toggle{display:none;align-items:center;justify-content:center;width:43px;height:41px;border:1px solid #d6e5e7;border-radius:10px;background:#fff;flex-direction:column;gap:5px}
.menu-toggle span{width:19px;height:2px;border-radius:3px;background:var(--navy)}
.nav-wrap{border-top:1px solid #edf2f5}
.nav-inner{display:flex;gap:3px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-block:9px}
.nav-link{position:relative;display:inline-flex;justify-content:center;align-items:center;min-height:42px;padding:10px 11px;border-radius:8px;color:#3b5267;letter-spacing:-.07px;white-space:nowrap;font-size:13.25px;font-weight:650;transition:color .18s,background .18s}
.nav-link:hover,.nav-link:focus-visible{background:#ebf6f3;color:#007361}
.nav-link.active{color:var(--teal);background:#e9f7f3}
.nav-link.active::after{content:"";position:absolute;bottom:-10px;height:3px;left:21%;width:58%;background:#119d89;border-radius:5px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{line-height:1.22}
.section{padding:92px 0}
.eyebrow{text-transform:uppercase;letter-spacing:2.4px;font-size:11px;font-weight:800;display:inline-flex;align-items:center;gap:11px}
.eyebrow.light{color:#80e0cb}.eyebrow.dark{color:#007d6c}
.eyebrow .dot{display:inline-block;width:7px;height:7px;background:var(--teal-bright);border-radius:100%;box-shadow:0 0 0 5px rgba(54,198,176,.16)}
.home-hero{position:relative;min-height:550px;padding-top:76px;overflow:hidden;color:#fff;background:radial-gradient(ellipse at 78% 23%,rgba(15,154,146,.32),transparent 33%),radial-gradient(ellipse at 2% 88%,rgba(18,123,128,.2),transparent 37%),linear-gradient(124deg,#09243f,#12375a 61%,#0c5660)}
.home-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.023) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.023) 1px,transparent 1px);background-size:50px 50px;mask-image:linear-gradient(90deg,transparent 45%,black 100%);pointer-events:none}
.home-hero::after{content:"";position:absolute;right:-12%;top:-22%;width:620px;height:620px;border:1px solid rgba(128,224,203,.15);border-radius:50%;pointer-events:none}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:center;min-height:380px}
.hero-copy{padding-bottom:28px}
.home-hero h1{font-weight:780;font-size:clamp(36px,3.65vw,60px);letter-spacing:-2px;max-width:680px;margin:25px 0 12px;text-wrap:balance}
.hero-role{font-size:16px;color:#b5e8e2;letter-spacing:.4px;font-weight:600;margin-bottom:28px}
.hero-lead{max-width:630px;font-size:18px;line-height:1.75;color:#d6e8f1;margin-bottom:31px}
.hero-buttons{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:14px;justify-content:center;min-height:47px;padding:10px 19px;font-weight:680;font-size:14px;border-radius:9px;transition:transform .2s,background .2s,border-color .2s}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:#24b69e;color:#072b3b;box-shadow:0 9px 22px rgba(17,166,140,.16)}
.btn-primary:hover{background:#55ddbd}
.btn-outline{color:#fff;border:1px solid rgba(255,255,255,.33);background:rgba(255,255,255,.06)}
.btn-outline:hover{background:rgba(255,255,255,.13)}
.hero-art{position:relative;height:375px;min-width:0;display:grid;place-items:center;opacity:.95}
.art-halo{position:absolute;width:335px;height:335px;border-radius:50%;background:radial-gradient(circle,rgba(85,235,203,.11),rgba(85,235,203,0) 68%)}
.art-frame{position:absolute;width:278px;height:278px;border:1px solid rgba(95,217,209,.29);border-radius:16px;transform:rotate(28deg)}
.art-frame.frame2{width:350px;height:350px;transform:rotate(55deg);border-color:rgba(95,217,209,.13)}
.art-circle{position:absolute;display:grid;place-items:center;width:235px;height:235px;border:1px solid rgba(122,230,223,.28);border-radius:50%;background:radial-gradient(circle at 35% 32%,rgba(42,192,182,.3),rgba(6,48,73,.2) 65%);box-shadow:0 30px 90px rgba(0,10,25,.2),inset 0 0 25px rgba(102,229,216,.09)}
.art-circle::before{content:"";position:absolute;width:200px;height:200px;border:1px dashed rgba(108,223,209,.27);border-radius:50%}
.art-circle-inner{font-size:76px;letter-spacing:-10px;font-weight:760;color:#f7ffff;text-shadow:0 8px 32px rgba(0,0,0,.15)}
.art-circle-inner span{color:#50e0c6}
.art-caption{position:absolute;bottom:6px;color:#8bd1c7;font-size:10px;letter-spacing:2.5px}
.art-caption span{display:inline-block;color:#fff;margin-left:8px}
.hero-tags{display:flex;gap:15px;flex-wrap:wrap;padding:16px 0 29px;position:relative;z-index:1;border-top:1px solid rgba(255,255,255,.13)}
.hero-tags span{font-size:11px;letter-spacing:1.55px;text-transform:uppercase;font-weight:700;color:#a5d5da}
.hero-tags span:not(:last-child)::after{content:"·";padding-left:15px;color:#59bfb1}
.intro-section{background:#fff}
.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:start}
.intro-grid h2,.section-head h2{font-size:clamp(29px,3vw,42px);font-weight:760;letter-spacing:-1.2px;margin-top:13px;color:var(--navy)}
.intro-copy p{font-size:17px;color:#506575;line-height:1.93;margin-top:2px;margin-bottom:20px}
.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--teal);font-size:14px;font-weight:800;transition:gap .2s}
.text-link:hover{gap:15px}
.feature-section{background:var(--bg);border-top:1px solid #e9f0f4}
.section-head{margin-bottom:31px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}
.feature{position:relative;background:#fff;padding:34px 30px 34px;border:1px solid #e4edf0;border-radius:18px;min-height:236px;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}
.feature:hover{transform:translateY(-4px);box-shadow:0 20px 47px rgba(15,46,75,.1)}
.feature-line{display:block;width:38px;height:4px;border-radius:3px;background:#0d9a86;margin-bottom:25px}
.feature h3{font-size:19px;color:var(--navy);font-weight:740;margin-bottom:12px}
.feature p{font-size:14.4px;color:#617585;line-height:1.76;margin:0}
.pages-section{background:linear-gradient(#fff,#f7fafb)}
.directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.directory-card{display:flex;align-items:center;gap:20px;padding:23px 24px;min-height:108px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:border-color .2s,box-shadow .2s,transform .2s}
.directory-card:hover{border-color:#9ed6cd;transform:translateY(-2px);box-shadow:var(--shadow)}
.directory-card-num{display:grid;place-items:center;flex:0 0 46px;height:46px;background:#ebf6f4;border-radius:12px;color:#008878;font-size:15px;font-weight:800;letter-spacing:.6px}
.directory-card-text{flex:1;min-width:0}
.directory-card h3{font-size:16px;color:#143455;margin:0 0 3px;font-weight:760}
.directory-card p{font-size:12.5px;line-height:1.5;color:#6a7d8b;margin:0}
.card-arrow{color:#118873}
.page-hero{position:relative;background:radial-gradient(ellipse at 83% 10%,rgba(13,168,144,.23),transparent 35%),linear-gradient(110deg,#0b2948 10%,#173e60 75%,#0f5b65);color:#fff;overflow:hidden}
.page-hero-inner{position:relative;min-height:250px;padding-top:53px;padding-bottom:60px;z-index:1}
.page-hero h1{font-size:clamp(35px,4vw,53px);letter-spacing:-1.8px;font-weight:780;margin:18px 0 9px;position:relative;z-index:2}
.page-hero p{font-size:16px;line-height:1.75;max-width:760px;color:#d4e6ed;margin:0;position:relative;z-index:2}
.page-hero-ornament{position:absolute;right:34px;top:-105px;height:435px;width:435px;border:1px solid rgba(106,225,197,.2);border-radius:50%;box-shadow:0 0 0 75px rgba(61,183,169,.045),0 0 0 145px rgba(61,183,169,.025);pointer-events:none}
.inner-layout{display:grid;grid-template-columns:minmax(0,1fr) 332px;gap:38px;align-items:start;padding-top:50px;padding-bottom:100px}
.page-main{min-width:0}
.back-link{font-size:13px;color:var(--teal);font-weight:720;display:inline-block;margin-bottom:27px}
.content-list{overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px}
.content-section{display:grid;grid-template-columns:44px 1fr;gap:19px;padding:34px 35px}
.content-section+.content-section{border-top:1px solid #e8eef1}
.number-badge{display:grid;place-items:center;background:var(--teal-light);color:#087966;border-radius:11px;width:43px;height:43px;font-weight:800;font-size:13px}
.content-section h2{color:var(--navy);margin:3px 0 10px;font-size:21px;letter-spacing:-.55px}
.content-section p{margin:0;font-size:15px;color:#526979;line-height:1.85}
.context-card{padding:28px 27px 32px;background:#eaf6f3;border:1px solid #d4ece5;border-radius:18px}
.context-icon{width:53px;height:53px;color:var(--teal);margin-bottom:16px}
.context-icon svg{width:100%;height:100%}
.context-card h2{font-size:19px;font-weight:760;color:var(--navy);margin:0 0 12px}
.context-card p{font-size:14px;color:#526c73;line-height:1.8;margin:0}
.context-card .text-link{font-size:13px;margin-top:16px;line-height:1.5}
.site-footer{padding-top:60px;padding-bottom:23px;background:#edf3f7}
.footer-panel{display:grid;grid-template-columns:1.08fr 1.55fr .85fr;background:#fff;border-radius:15px;box-shadow:0 7px 31px rgba(30,69,90,.035);padding:20px 15px;align-items:center}
.footer-info{display:flex;align-items:center;gap:18px;padding:12px 25px;min-width:0;color:#0a2b50;font-size:15px;line-height:1.55;min-height:70px}
.footer-info+.footer-info{border-left:1px solid #cddbe4}
.footer-info:hover:is(a){color:var(--teal)}
.footer-icon{display:block;flex:none;width:31px;height:31px;color:#007e6e}
.footer-icon svg{width:100%;height:100%}
.footer-info span:last-child{overflow-wrap:anywhere}
.footer-info small{font-size:11px;display:block;color:#72858d}
.footer-bottom{display:flex;justify-content:space-between;font-size:12px;color:#8597a6;padding:18px 10px 0}
@media(max-width:1190px){
 .container{width:min(1130px,calc(100% - 60px))}
 .nav-inner{justify-content:center}
 .nav-link{font-size:12.6px;padding-inline:9px}
 .hero-art{transform:scale(.9)}
 .footer-panel{grid-template-columns:1.2fr 1.65fr .85fr}
 .footer-info{gap:13px;padding-inline:17px;font-size:13px}
}
@media(max-width:850px){
 .container{width:calc(100% - 42px)}
 .topline{min-height:80px}
 .brand-mark{width:45px;height:45px;font-size:19px}
 .brand{gap:11px}
 .brand-text strong{font-size:16px}
 .brand-text small{font-size:11px}
 .menu-toggle{display:flex}
 .header-actions{gap:12px}
 .header-accent{display:none}
 .nav-wrap{display:none;position:absolute;left:0;top:100%;width:100%;background:#fff;border-top:1px solid #e6edf2;box-shadow:0 18px 25px rgba(20,51,82,.14)}
 .nav-wrap.is-open{display:block}
 .nav-inner{padding:13px 21px 19px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
 .nav-link{justify-content:flex-start;padding:10px 13px;font-size:14px;white-space:normal}
 .nav-link.active::after{display:none}
 .hero-grid{grid-template-columns:1fr;gap:0}
 .home-hero{padding-top:57px}
 .home-hero h1{font-size:clamp(37px,6vw,53px)}
 .hero-art{position:absolute;width:350px;right:-80px;top:40px;opacity:.13;pointer-events:none}
 .hero-copy{position:relative;z-index:2;padding-bottom:35px}
 .hero-lead{max-width:650px}
 .intro-grid{gap:22px;grid-template-columns:1fr}
 .feature-grid{grid-template-columns:repeat(2,1fr)}
 .inner-layout{grid-template-columns:1fr;gap:24px}
 .context-card{max-width:none}
 .footer-panel{grid-template-columns:1fr 1fr}
 .footer-info:nth-child(3){grid-column:span 2;border-left:0;border-top:1px solid #e4ecef}
 .footer-info:nth-child(2){border-left:1px solid #dce6ed}
}
@media(max-width:600px){
 .container{width:calc(100% - 34px)}
 .brand-text strong{font-size:14px}
 .brand-text small{max-width:185px;font-size:9.5px}
 .brand-mark{width:41px;height:41px;font-size:17px}
 .lang-switch{gap:3px}
 .lang-switch a{padding:5px}
 .topline{gap:8px;min-height:72px}
 .nav-inner{grid-template-columns:1fr}
 .home-hero{min-height:0;padding-top:52px}
 .home-hero h1{font-size:37px;letter-spacing:-1.4px;margin-top:20px}
 .hero-role{font-size:14px;line-height:1.7;margin-bottom:19px}
 .hero-lead{font-size:16px;line-height:1.8}
 .hero-art{top:100px;right:-150px}
 .hero-tags{gap:8px;padding-bottom:19px}
 .hero-tags span{font-size:9px;letter-spacing:.9px}
 .hero-tags span:not(:last-child)::after{padding-left:8px}
 .section{padding:58px 0}
 .intro-grid h2,.section-head h2{font-size:31px}
 .intro-copy p{font-size:15.5px}
 .feature-grid,.directory-grid{grid-template-columns:1fr}
 .feature{min-height:0}
 .directory-card{min-height:94px;padding:17px;gap:14px}
 .page-hero-inner{min-height:222px;padding-top:49px;padding-bottom:48px}
 .page-hero h1{font-size:37px;letter-spacing:-1.2px}
 .page-hero p{font-size:14.5px}
 .inner-layout{padding-top:35px;padding-bottom:67px}
 .content-section{grid-template-columns:36px 1fr;gap:13px;padding:25px 18px}
 .number-badge{width:35px;height:35px;border-radius:8px}
 .content-section h2{font-size:18px}
 .content-section p{font-size:14px}
 .site-footer{padding-top:36px}
 .footer-panel{display:flex;flex-direction:column;align-items:stretch;padding:7px 13px}
 .footer-info{width:100%;min-height:69px;font-size:14px;padding:16px 8px}
 .footer-info+.footer-info,.footer-info:nth-child(2),.footer-info:nth-child(3){border-left:0;border-top:1px solid #e3edf1}
 .footer-info:nth-child(3){grid-column:auto}
 .footer-bottom{gap:8px;flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Magyar dokumentumletöltő aloldalak: kizárólag a letölthető cím a kék sávban. */
.document-page-hero .page-hero-inner{min-height:245px;display:flex;align-items:center;padding-top:60px;padding-bottom:60px}
.document-page-hero h1{margin:0;font-size:clamp(35px,4vw,53px);letter-spacing:-1.8px}
.document-download-title{color:#fff;text-decoration:none;text-underline-offset:8px;text-decoration-thickness:2px;transition:color .18s,text-decoration-color .18s}
.document-download-title:hover,.document-download-title:focus-visible{color:#8debd9;text-decoration:underline}
.document-spacer{height:130px}
.mtmt-section{padding:54px 0 110px}
.mtmt-link{color:var(--teal);font-size:18px;font-weight:740;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.mtmt-link:hover{color:var(--navy)}
@media(max-width:600px){.document-page-hero .page-hero-inner{min-height:195px}.document-page-hero h1{font-size:clamp(30px,8vw,40px)}.document-spacer{height:75px}.mtmt-section{padding:36px 0 77px}.mtmt-link{font-size:16px}}

/* HU aloldalak – 2026. októberi pontosítások */
.office-section{padding:58px 0 105px;background:var(--bg)}
.office-section .container{max-width:1290px}
.office-address{font-size:clamp(17px,1.65vw,23px);color:var(--navy);font-weight:700;margin-bottom:13px}
.office-specialty{font-size:17px;color:var(--muted);margin:0}
.inner-layout-single{display:block;max-width:1290px}
.inner-layout-single .page-main{width:100%}
@media(max-width:600px){.office-section{padding:38px 0 75px}.office-address{font-size:18px}.office-specialty{font-size:16px}}


/* 2026-10: visible, keyboard-accessible subpage links in each topic listing. */
.section-title-link{color:inherit;display:inline-flex;align-items:baseline;gap:.45em;text-decoration:none;text-underline-offset:5px;transition:color .18s ease}
.section-title-link:hover,.section-title-link:focus-visible{color:var(--teal);text-decoration:underline}
.section-title-arrow{color:var(--teal);font-size:.85em;flex-shrink:0}
/* Four independent columns: email | institution | website | telephone. */
.footer-panel{grid-template-columns:minmax(0,1.35fr) minmax(0,1.65fr) minmax(0,.9fr) minmax(0,.9fr)}
.footer-info{gap:12px;padding-inline:14px;font-size:14px}
.footer-phone{white-space:nowrap}
@media(max-width:1190px){.footer-panel{grid-template-columns:minmax(0,1.35fr) minmax(0,1.65fr) minmax(0,.9fr) minmax(0,.95fr)}.footer-info{gap:10px;padding-inline:11px;font-size:12.5px}.footer-icon{width:28px;height:28px}}
@media(max-width:850px){
  .footer-panel{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-info{font-size:14px;padding:13px 18px}
  .footer-info:nth-child(3){grid-column:auto;border-left:0;border-top:1px solid #e4ecef}
  .footer-info:nth-child(4){border-left:1px solid #cddbe4;border-top:1px solid #e4ecef}
}
@media(max-width:600px){
  .footer-panel{display:flex;flex-direction:column;align-items:stretch;padding:7px 13px}
  .footer-info{width:100%;min-height:69px;font-size:14px;padding:16px 8px}
  .footer-info+.footer-info,.footer-info:nth-child(2),.footer-info:nth-child(3),.footer-info:nth-child(4){grid-column:auto;border-left:0;border-top:1px solid #e3edf1}
}
