/* PowerSite — clean reference-led layout. No legacy overrides. */
:root{--ink:#10223a;--navy:#081d33;--blue:#076ef1;--bright:#1586fa;--ice:#f3f6fa;--line:#d9e1eb;--muted:#526176;--container:1280px;--gutter:clamp(20px,4vw,44px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:white;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}img,svg{display:block;max-width:100%}button,input,textarea{font:inherit}button{cursor:pointer}
.wrap{max-width:var(--container);padding:0 var(--gutter);margin:0 auto}
h1,h2,h3{margin:0;color:var(--ink);letter-spacing:-.032em;line-height:1.15}h1{font-size:clamp(40px,3.35vw,53px);line-height:1.09;font-weight:800;letter-spacing:-.037em}h2{font-size:clamp(28px,2.45vw,38px);font-weight:800}h3{font-size:clamp(18px,1.5vw,22px);font-weight:760}
main p{font-size:15.7px;line-height:1.68;color:var(--muted);text-align:justify;text-align-last:left;hyphens:auto;margin:0 0 1.08em;overflow-wrap:normal}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.105em;text-transform:uppercase;color:#1d89ff;margin:0 0 14px}
/* header */
.top{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e8edf3}
.nav{height:68px;display:flex;align-items:center;gap:26px;min-width:0}
.brand{display:inline-flex;flex:0 0 auto;align-items:center;font-size:29px;line-height:.9;font-weight:800;letter-spacing:-.055em;color:#11263d;white-space:nowrap}.brand .ps-mark{display:none}.brand .sub{display:block;font-size:11px;line-height:1.45;font-weight:400;letter-spacing:0;color:#7a8797;margin-top:6px}.brand .wordmark span{color:#086fee}
.links{display:flex;gap:clamp(15px,2.2vw,34px);align-items:center;justify-content:center;margin-left:auto;min-width:0}.links a{display:flex;height:68px;align-items:center;border-bottom:2px solid transparent;padding-top:2px;font-size:13.5px;font-weight:700;white-space:nowrap;color:#172840}.links a:hover,.links a.active{color:#096dea}.links a.active{border-bottom-color:#096dea}
.lang{border:1px solid #dce5ef;padding:10px 13px;border-radius:7px;font-size:12px;font-weight:800;color:#0a62d4;background:#f6faff}.menu-btn{display:none}
/* uniform dark hero matched to approved concept */
.hero{position:relative;color:#fff;overflow:hidden;background:linear-gradient(95deg,#091b2d 0%,#0a2139 55%,#112b46 100%)}
.hero::after{content:"";position:absolute;right:0;top:0;bottom:0;width:62%;background:linear-gradient(90deg,#091c31 0%,rgba(9,28,49,.4) 36%,transparent 100%);pointer-events:none;z-index:1}
.hero-grid{position:relative;min-height:388px;display:block;padding-top:44px;padding-bottom:35px}
.hero-copy{position:relative;z-index:3;width:64%;max-width:780px;min-width:0}.hero h1{color:#fff;max-width:780px;margin:0 0 14px}.hero h1 em{color:#fff;font-style:normal}
.hero p{text-align:left;hyphens:none;font-size:17px;line-height:1.5;color:#e6eef7;margin:0 0 12px;max-width:685px;hyphens:auto}
.hero-photo{position:absolute;right:0;top:0;bottom:0;width:44%;overflow:hidden;z-index:0;background:#21354a}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:44% 40%;max-width:none}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(1,10,21,.69),transparent 40%)}
.hero-photo-caption{position:absolute;z-index:1;bottom:24px;right:24px;text-align:right;color:white;text-shadow:0 1px 10px rgba(0,0,0,.5)}
.hero-photo-caption strong{font-size:19px;display:block;line-height:1.4}.hero-photo-caption span{font-size:12px;color:#e9f2fa;display:block;line-height:1.35}
.hero-home .hero-grid{min-height:390px;padding-top:42px;padding-bottom:25px}.hero-home .hero-copy{width:72%;max-width:930px}.hero-home h1{max-width:850px;font-size:clamp(42px,3.65vw,55px);line-height:1.07;margin:0 0 14px}.hero-home p{font-size:17px;max-width:720px;line-height:1.52}
.hero-inner .hero-grid{min-height:335px;padding-top:56px;padding-bottom:48px}.hero-inner h1{font-size:clamp(36px,3vw,47px);max-width:750px;margin-bottom:17px}.hero-inner p{max-width:670px}
.hero-points{display:flex;align-items:flex-start;gap:clamp(11px,1.35vw,20px);width:100%;max-width:870px;margin:22px 0 0;padding:0}
.hero-point{display:flex;align-items:flex-start;min-width:0;flex:1 1 0;gap:9px}
.hero-point-icon{flex:none;display:grid;place-items:center;width:36px;height:36px;border:1px solid #4e94ce;border-radius:50%;color:#83c5ff;font-size:17px;font-weight:700;background:rgba(3,16,30,.2)}
.hero-point strong{display:block;color:white;font-size:12.3px;line-height:1.3;letter-spacing:-.012em}.hero-point small{display:block;color:#d2e2f0;font-size:10.5px;line-height:1.4;margin-top:4px}
.btn-row{display:flex;gap:15px;flex-wrap:wrap;margin-top:23px}
.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:12px 23px;border-radius:6px;font-size:13px;font-weight:800;border:1px solid transparent;transition:background .15s,color .15s}
.btn.primary{color:white;background:#086ff0;box-shadow:0 5px 16px rgba(0,63,145,.2)}.btn.primary:hover{background:#005bcc}
.btn.secondary{border:1.5px solid white;color:white;background:transparent}.btn.secondary:hover{background:rgba(255,255,255,.13)}
.btn.white{background:white;color:#1165c7}.btn.white:hover{background:#eaf4ff}
/* Below hero */
.trust-strip{background:white;border-bottom:1px solid #e8edf2}.trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.trust-item{padding:26px 20px 25px;border-right:1px solid #e2e8ef;min-width:0}.trust-item:first-child{padding-left:0}.trust-item:last-child{border-right:0}.trust-item strong{display:block;font-size:15px;font-weight:800;margin-bottom:6px}.trust-item p{font-size:13px;line-height:1.55;margin:0}
.section{padding:64px 0 72px}.section.alt{background:#f3f6fa}.section.dark{background:#0b2138;color:white}.section.dark h2,.section.dark h3{color:white}.section.dark p{color:#d1dfec}
.section>.wrap>h2{margin-bottom:25px}.section>.wrap>.eyebrow{margin-bottom:12px}
.split-lead{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(190px,.58fr);gap:35px;align-items:start}.split-lead h2{margin-bottom:12px;font-size:clamp(29px,2.45vw,38px)}
.quote-box{padding:22px;background:white;border:1px solid #e3eaf1;border-radius:8px;box-shadow:0 8px 25px #d4deea20}.quote-box p{font-size:14.5px;line-height:1.6;font-style:italic;text-align:left}.quote-box strong{font-size:12px;display:block;padding-top:14px;border-top:2px solid #0878ef}
.tick-list{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:14px}.tick-list li{display:flex;align-items:flex-start;gap:13px;font-size:14.5px;line-height:1.55;color:#35495d}.tick{border-radius:50%;width:19px;height:19px;flex:none;display:grid;place-items:center;background:#0878ef;color:white;font-weight:800;font-size:12px;margin-top:1px}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:30px}.card{background:white;border:1px solid #e1e8f0;border-radius:10px;padding:21px;min-width:0}.card h3{margin:0 0 10px;font-size:18px}.card p{font-size:14px;line-height:1.66;margin:0}.mini{display:block;color:#056be8;font-weight:800;letter-spacing:.08em;font-size:11px;margin-bottom:12px}
.band-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:24px}.band{border-top:2px solid #1882e6;padding-top:17px;min-width:0}.band span{display:block;color:#0878ef;font-size:12px;font-weight:800;margin-bottom:10px}.band h3{font-size:17px;margin-bottom:8px}.band p{font-size:13.5px;line-height:1.55;margin:0}.section.dark .band span{color:#7bc5ff}.section.dark .band{border-color:#3d86c7}
.section.dark .cta-box{background:none;border:0;padding:0}.cta-box{background:#0b2138;color:white;padding:32px 36px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-box h2{color:white;font-size:28px;margin-bottom:8px}.cta-box p{color:#d6e6f4;font-size:14px;margin:0}.cta-box .btn{flex:none}
.editorial,.case-study,.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px}.editorial h2,.case-study h2{margin-bottom:18px}.editorial .callout{margin-top:15px}.matrix{display:grid;grid-template-columns:1fr 1fr;gap:20px}.matrix-item{border-top:1px solid #dae5ef;padding-top:17px}.matrix-item h3{font-size:18px;margin-bottom:6px}.matrix-item p{font-size:14px}
.callout{padding:25px;border-radius:10px;background:#edf5fc;border:1px solid #cfe0ee}.callout strong{display:block;color:#0e2d4a;font-size:17px;margin-bottom:12px}.callout p{font-size:15px;line-height:1.65;margin:0;color:#415971}
.brief-section{padding:34px 0;background:#f3f6fa}.brief-section .callout{background:white;border-left:4px solid #0b7df2}.brief-section .callout p{text-align:justify}
.compare-table{display:grid;grid-template-columns:minmax(160px,.75fr) repeat(3,minmax(0,1fr));border:1px solid #d9e4ee;border-radius:10px;overflow:hidden;margin-top:25px}.compare-table>div{padding:15px;border-right:1px solid #d9e4ee;border-bottom:1px solid #d9e4ee;font-size:13.5px;line-height:1.6;min-width:0;overflow-wrap:break-word}.compare-table>div:nth-child(4n){border-right:0}.compare-table .head{background:#eaf3fb;font-weight:800}.compare-table .rowhead{background:#f8fafc;font-weight:800}
.case-panel,.contact-card{background:white;border:1px solid #e0e8f0;border-radius:11px;padding:26px;min-width:0;box-shadow:0 4px 22px #071c360b}
.case-panel h2{margin-bottom:15px}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.kpi{border:1px solid #dce7f2;background:#f6fafe;border-radius:6px;padding:14px}.kpi strong{display:block;font-size:15px}.kpi span{font-size:11px;color:#667b8d}
.profile-box{display:flex;align-items:center;gap:18px;margin-bottom:24px}.profile-box img{width:94px;height:94px;object-fit:cover;flex:none;border-radius:6px}.profile-box h3{font-size:22px;margin-bottom:8px}.profile-box p{font-size:14px;margin:0}.contact-list{display:grid;gap:15px}.contact-item{border-top:1px solid #e0e7ef;padding-top:16px}.contact-item strong{display:block;margin-bottom:6px;font-size:14px}.contact-item a{color:#075ccc}.contact-item p{font-size:14px}
.contact-card h2{font-size:27px;margin-bottom:22px}.contact-card .eyebrow{margin-bottom:9px}form{display:grid;gap:15px}label{font-weight:700;font-size:13px;display:block;margin-bottom:7px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}input,textarea{border:1px solid #cbd9e6;border-radius:6px;padding:12px 13px;width:100%;background:white;color:#10233a;font-size:14px}textarea{height:150px;resize:vertical}input:focus,textarea:focus{outline:2px solid #83bded;border-color:transparent}.consent{display:flex;gap:9px;align-items:flex-start;font-weight:400;font-size:12px;line-height:1.5;color:#5c6e80}.consent input{width:auto;margin:3px 0}.consent a{text-decoration:underline;color:#075ccc}.form-alert{padding:13px 15px;background:#edf6ff;color:#0c5283;font-size:13px;border-radius:6px;margin-bottom:12px}.form-alert[data-status=error]{background:#ffeded;color:#923b37}
.footer{background:#fff;border-top:1px solid #e1e9f1;padding:29px 0}.foot{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap}.footlinks{display:flex;flex-wrap:wrap;gap:13px}.footlinks a,.foot small{color:#697b8b;font-size:11px}.foot .brand{font-size:21px}
:focus-visible{outline:3px solid #2d96ff;outline-offset:4px}
@media(max-width:1180px){.hero-copy{width:67%}.hero-home .hero-copy{width:72%}.hero h1{font-size:44px}.hero-home h1{font-size:46px}.hero-points{gap:9px}.hero-point-icon{width:31px;height:31px}.hero-point strong{font-size:11px}.hero-point small{font-size:9.5px}.hero-photo{width:44%}.split-lead{grid-template-columns:1fr 1fr}.split-lead .quote-box{grid-column:1 / -1}.cards{grid-template-columns:repeat(2,1fr)}.links{gap:14px}.links a{font-size:12px}}
@media(max-width:900px){.menu-btn{display:block;margin-left:auto;background:white;border:1px solid #dce6f0;border-radius:6px;font-size:21px;padding:5px 10px}.nav{height:66px}.links{display:none;position:absolute;left:0;right:0;top:65px;background:white;box-shadow:0 16px 24px #102c4840;padding:18px var(--gutter);flex-direction:column;align-items:stretch;gap:0}.links.open{display:flex}.links a{height:42px;font-size:14px}.hero-grid{padding-top:48px;padding-bottom:42px;min-height:420px}.hero-copy{width:69%}.hero-home .hero-copy{width:72%}.hero-photo{width:45%}.hero-photo img{object-position:42% 50%}.hero-home h1{font-size:42px}.hero-points{display:grid;grid-template-columns:1fr 1fr;max-width:530px}.hero-point strong{font-size:12px}.hero-point small{font-size:10px}.hero-inner h1{font-size:39px}.band-grid{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid #e1e8ef}.contact-grid,.case-study,.editorial{grid-template-columns:1fr}.contact-grid{gap:24px}}
@media(max-width:680px){.wrap{padding-inline:20px}.nav{gap:12px}.brand{font-size:23px}.brand .sub{font-size:9px}.hero{background:#0a2139}.hero::after{display:none}.hero-grid,.hero-home .hero-grid{padding-top:36px;padding-bottom:0;min-height:0}.hero-copy,.hero-home .hero-copy{width:100%;max-width:none}.hero h1,.hero-inner h1,.hero-home h1{font-size:clamp(32px,8.2vw,42px);line-height:1.12;margin-bottom:16px}.hero p,.hero-home p{font-size:15.5px;line-height:1.56;max-width:none}.hero-points{grid-template-columns:1fr 1fr;gap:16px 12px}.btn-row{margin:22px 0 27px}.hero-photo{position:relative;right:auto;top:auto;bottom:auto;width:calc(100% + 40px);margin-inline:-20px;height:215px}.hero-photo img{object-position:45% 25%}.hero-photo-caption{right:16px;bottom:14px}.hero-photo-caption strong{font-size:15px}.hero-photo-caption span{font-size:10px}.hero-inner .hero-grid{padding-top:36px;padding-bottom:0}.trust-grid,.cards,.band-grid,.split-lead,.matrix,.form-grid{grid-template-columns:1fr}.trust-item{padding:19px 0;border:0;border-bottom:1px solid #e1e8ef}.trust-item:last-child{border-bottom:0}.section{padding:48px 0 53px}.split-lead{gap:23px}.quote-box{grid-column:auto!important}.cta-box{display:block;padding:26px}.cta-box .btn{margin-top:18px}.compare-table{display:block;border:0;overflow:visible}.compare-table>div{border:1px solid #dce6ef;margin-bottom:5px;border-radius:5px}.compare-table .head{display:none}.compare-table .rowhead{margin-top:15px}.kpi-grid{grid-template-columns:1fr}.contact-card{padding:20px}.profile-box{align-items:flex-start}.profile-box img{width:72px;height:72px}.foot{flex-direction:column;align-items:flex-start}.footlinks{gap:10px} main p{hyphens:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.home-page .section.manifesto{background:linear-gradient(120deg,#f7f9fc,#edf3fa);padding-block:52px 56px;}
.home-page .section.dark .band h3{color:white;}
.home-page .section.dark .band p{color:#d3e3f0;}
.home-page .section.dark .band{border-color:#4d8dbc;}
.home-page .section.dark .band span{color:#9bd3ff;}
.home-page .section.section-cta{padding-block:48px;}

/* Clear comparison labels when the grid becomes a mobile stack. */
@media(max-width:680px){.compare-table>div:not(.head):not(.rowhead)::before{display:block;margin-bottom:4px;color:#0872e8;font-weight:800;font-size:11px;letter-spacing:.03em}html[lang=hu] .compare-table>div:nth-child(4n+2)::before{content:"Bérelhető rendszerek"}html[lang=hu] .compare-table>div:nth-child(4n+3)::before{content:"Nyílt rendszerek"}html[lang=hu] .compare-table>div:nth-child(4n+4)::before{content:"OpenMage + egyedi fejlesztés"}html[lang=en] .compare-table>div:nth-child(4n+2)::before{content:"Hosted platforms"}html[lang=en] .compare-table>div:nth-child(4n+3)::before{content:"Open platforms"}html[lang=en] .compare-table>div:nth-child(4n+4)::before{content:"OpenMage + custom development"}}
.home-page .manifesto h2{font-size:clamp(27px,2.5vw,36px)}

/* Restored, previously approved experience message */
.experience-section{background:#f5f8fc;padding-block:64px}
.experience-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.experience-heading h2{font-size:clamp(30px,3.3vw,46px);line-height:1.15;letter-spacing:-.035em;margin:12px 0 0;max-width:650px}
.experience-heading h2 span{color:#087cf0}
.experience-body p{font-size:18px;line-height:1.7;margin:0 0 22px;text-align:justify}
.experience-body .text-link{font-weight:750;color:#0767d7;text-decoration:none}
@media(max-width:760px){.experience-section{padding-block:44px}.experience-layout{grid-template-columns:1fr;gap:18px}.experience-body p{font-size:16px}}

/* Original approved Hungarian About copy: editorial layout */
.about-story{background:#fff;padding-block:clamp(54px,6vw,88px)}
.about-prose{max-width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:64px;row-gap:0}
.about-prose h2{font-size:clamp(26px,2.6vw,38px);line-height:1.18;letter-spacing:-.025em;grid-column:1/-1;margin:46px 0 18px;max-width:920px}
.about-prose h2:first-child{margin-top:0}
.about-prose p{font-size:17px;line-height:1.75;hyphens:auto;text-align:justify;margin:0 0 20px}
.about-prose .about-key-line{grid-column:1/-1;padding:24px 30px;margin:22px 0 0;background:#edf5ff;border-left:4px solid #0788f6;font-size:20px;line-height:1.5;text-align:left}
.about-page .hero-inner h1{font-size:clamp(38px,3.8vw,56px);line-height:1.12}
.about-page .hero-inner .hero-copy p{font-size:17px;line-height:1.65;text-align:left}
@media(max-width:760px){.about-prose{display:block}.about-prose h2{margin:38px 0 16px}.about-prose h2:first-child{margin-top:0}.about-prose p{font-size:16px}.about-prose .about-key-line{padding:18px 20px;font-size:18px}}

/* Targeted layout corrections: HU and EN */
.about-story{padding-block:52px 28px}
.about-prose{row-gap:0}
.about-prose>p:last-child{grid-column:1/-1;max-width:100%;margin-bottom:0}
.about-story+.section{padding-top:44px}
.editorial{align-items:stretch}
.editorial>.callout{margin-top:0;min-height:100%;display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,3vw,42px)}
.editorial>.callout strong{font-size:20px;line-height:1.4}
.editorial>.callout p{font-size:16.5px;line-height:1.75;color:#354c64}
.section.dark:has(.band-grid){padding-block:52px 56px}
.section.dark:has(.band-grid) h2{font-size:clamp(26px,2.6vw,36px);line-height:1.18;max-width:100%}
.section.dark .band-grid{gap:clamp(18px,2.1vw,30px);margin-top:26px}
.section.dark .band{min-width:0}
.section.dark .band p{font-size:14px;line-height:1.6;text-align:left;hyphens:auto;overflow-wrap:break-word}
.section.dark .band h3{font-size:17px;line-height:1.3}
@media(max-width:760px){.about-story{padding-block:40px 24px}.about-story+.section{padding-top:38px}.editorial>.callout{min-height:0;padding:24px}.editorial>.callout p{font-size:16px}.section.dark:has(.band-grid){padding-block:42px 48px}}
