:root{--navy:#052b55;--deep:#041d38;--blue:#1475d1;--blue-2:#3d9cff;--ice:#eaf4fc;--mist:#f5f8fa;--white:#fff;--ink:#102435;--muted:#627382;--line:#d8e2e9;--serif:"Bricolage Grotesque","Arial Narrow",Arial,sans-serif;--sans:"DM Sans",Arial,sans-serif;--container:min(1380px,calc(100% - 112px));--ease:cubic-bezier(.2,.75,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%}button,input,select,textarea{font:inherit}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;line-height:.94;text-wrap:balance}h2{font-size:clamp(3rem,5.1vw,5.4rem)}h2 em,h1 em{font-style:italic;color:var(--blue-2)}p{text-wrap:pretty}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:#fff;color:var(--navy);padding:.75rem 1rem;border-radius:4px}.skip-link:focus{top:1rem}.section{width:var(--container);margin-inline:auto}.section-index{font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:#7890a2;font-weight:700}.section-index.light{color:#8db9dc}.kicker{display:flex;align-items:center;gap:.9rem;color:var(--blue);font-size:.72rem;text-transform:uppercase;letter-spacing:.2em;font-weight:800;margin-bottom:1.4rem}.kicker span{width:2.8rem;height:1px;background:currentColor}.kicker.light{color:#92c9f4}.btn{min-height:3.65rem;padding:0 1.55rem;display:inline-flex;justify-content:center;align-items:center;gap:2.5rem;border:1px solid transparent;border-radius:.25rem;font-weight:700;cursor:pointer;transition:transform .25s var(--ease),background .25s,color .25s,border-color .25s}.btn:hover{transform:translateY(-3px)}.btn:active{transform:translateY(0) scale(.98)}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7ec1ff;outline-offset:3px}.btn-light{background:#fff;color:var(--navy)}.btn-light:hover{background:#dceeff}.btn-blue{background:var(--blue);color:#fff}.btn-blue:hover{background:#0b62b4}
.site-header{position:absolute;inset:0 0 auto;z-index:20;height:6.2rem;padding:0 max(56px,calc((100vw - 1380px)/2));display:flex;align-items:center;gap:3rem;color:#fff;border-bottom:1px solid rgba(255,255,255,.2);transition:height .3s,background .3s,box-shadow .3s}.site-header.scrolled{position:fixed;height:4.9rem;background:rgba(4,29,56,.94);backdrop-filter:blur(14px);box-shadow:0 .8rem 2rem rgba(4,29,56,.17)}.brand{display:inline-flex;align-items:center;gap:.9rem;line-height:1}.brand-mark{width:2.35rem;height:2.35rem;display:grid;grid-template-columns:1fr 1fr;gap:.16rem;transform:skewY(-8deg)}.brand-mark i{display:block;border:2px solid currentColor}.brand-mark i:last-child{background:var(--blue-2);border-color:var(--blue-2)}.brand-copy{display:flex;flex-direction:column;gap:.38rem}.brand-copy strong{font-size:1.05rem;letter-spacing:.12em}.brand-copy small{font-size:.52rem;letter-spacing:.27em;opacity:.72}.desktop-nav{display:flex;gap:2.4rem;margin-left:auto}.desktop-nav a{font-size:.78rem;font-weight:600;position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;bottom:-.7rem;width:100%;height:1px;background:#69b4fa;transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover:after{transform:scaleX(1)}.header-cta{height:3rem;padding:0 1.1rem;display:flex;align-items:center;gap:1.3rem;background:#fff;color:var(--navy);font-size:.75rem;font-weight:800;border-radius:.2rem}.header-cta:hover{background:#dceeff}.menu-toggle{display:none;width:2.8rem;height:2.8rem;background:transparent;border:0;padding:.65rem}.menu-toggle span{height:2px;background:#fff;display:block;margin:.4rem 0;transition:.25s}
.hero{min-height:53rem;height:min(920px,100dvh);position:relative;color:#fff;overflow:hidden;display:flex;align-items:center}.hero-media{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,25,48,.95) 0%,rgba(4,29,56,.72) 39%,rgba(4,29,56,.1) 78%),url('assets/images/hero-home.jpg') 60% center/cover}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.075) 1px,transparent 1px);background-size:9rem 9rem;mask-image:linear-gradient(90deg,#000,transparent 72%)}.hero-content{position:relative;width:var(--container);margin:auto;padding-top:6rem}.hero h1{font-size:clamp(4.3rem,7.3vw,7.7rem);max-width:58rem;margin-bottom:1.8rem}.hero h1 em{display:inline-block}.hero-lead{font-size:clamp(1rem,1.3vw,1.2rem);color:#d7e4ef;max-width:41rem;margin-bottom:2.2rem}.hero-actions{display:flex;align-items:center;gap:2rem}.text-action{font-size:.82rem;font-weight:700;border-bottom:1px solid rgba(255,255,255,.65);padding:.6rem 0;display:flex;gap:2rem}.hero-note{position:absolute;right:max(56px,calc((100vw - 1380px)/2));bottom:0;width:min(31rem,38vw);padding:1.6rem 2rem;background:rgba(5,43,85,.93);backdrop-filter:blur(10px);display:flex;gap:1.2rem}.note-icon{width:3.1rem;height:3.1rem;border:1px solid #74b9f1;display:grid;place-items:center;font-size:1.4rem;flex:0 0 auto}.hero-note strong{font-family:var(--serif);font-size:1.2rem;font-weight:600}.hero-note p{font-size:.75rem;color:#bcd0df;margin:.25rem 0 0;line-height:1.5}
.intro{padding:9rem 0 6rem;display:grid;grid-template-columns:1fr 3fr;gap:2rem}.intro h2{margin-bottom:1.8rem}.intro h2 em{color:var(--blue)}.intro-copy{max-width:48rem;margin:0;color:var(--muted);font-size:1.08rem}.services{display:grid;grid-template-columns:1.25fr .75fr;gap:1rem;padding-bottom:8rem}.service-feature{height:43rem;position:relative;overflow:hidden}.service-feature>img{height:100%;object-fit:cover;transition:transform .8s var(--ease)}.service-feature:hover>img,.image-card:hover>img,.references figure:hover img{transform:scale(1.035)}.service-feature:after,.image-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,27,52,.94),rgba(4,27,52,.02) 75%)}.service-overlay{position:absolute;inset:auto 0 0;z-index:1;color:#fff;padding:3rem}.service-no,.service-card>span{font-size:.65rem;letter-spacing:.16em;color:#9fd0f7}.tag{font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;margin:1.8rem 0 .6rem;color:#aed4f1}.service-overlay h3{font:500 clamp(2.8rem,4vw,4.5rem)/1 var(--serif);margin-bottom:.8rem}.service-overlay p{max-width:37rem;color:#d9e5ee}.service-overlay a{display:inline-flex;gap:2rem;border-bottom:1px solid #66b2f4;padding-bottom:.35rem;font-weight:700}.service-stack{display:grid;grid-template-rows:1fr 1fr;gap:1rem}.service-card{position:relative;overflow:hidden;min-height:20rem}.image-card>img{height:100%;object-fit:cover;transition:transform .8s var(--ease)}.image-card>div{position:absolute;z-index:1;inset:auto 0 0;padding:2rem;color:#fff}.service-card h3{font:500 2rem/1.05 var(--serif);margin:.4rem 0}.service-card p{font-size:.82rem;margin:0;color:#d5e1ea}.blue-card{background:var(--blue);color:#fff;padding:2.2rem}.blue-card h3{font-size:2.5rem;margin-top:1rem}.blue-card>p{max-width:21rem;color:#ddebfa;font-size:.9rem}.blue-card svg{position:absolute;right:-1rem;bottom:-.3rem;width:58%;stroke:rgba(255,255,255,.34);fill:none;stroke-width:1.2}.service-strip{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);background:var(--mist);border-bottom:1px solid var(--line)}.service-strip article{padding:2.2rem;border-right:1px solid var(--line)}.service-strip article:last-child{border:0}.service-strip span,.tech-card>span,.benefit-list article>span{font-size:.65rem;color:var(--blue);font-weight:800;letter-spacing:.15em}.service-strip h3{font:600 1.35rem var(--serif);margin:.7rem 0 .45rem}.service-strip p{font-size:.8rem;color:var(--muted);margin:0}
.technical{background:var(--deep);color:#fff;padding:8rem 0}.technical-head{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:2rem;align-items:end}.technical-head h2{margin:0}.technical-head>p:last-child{color:#aec1d1;margin-bottom:.5rem}.technical-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:5rem;border-top:1px solid rgba(255,255,255,.17);border-left:1px solid rgba(255,255,255,.17)}.tech-card{min-height:25rem;padding:2rem;border-right:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17);display:flex;flex-direction:column;align-items:flex-start}.tech-card>span{color:#7fb9e8}.tech-card h3{font:500 1.65rem var(--serif);margin:1.4rem 0 .7rem}.tech-card p{font-size:.82rem;color:#aebfcd;margin:0}.tech-card.accent{background:#0d5ea9}.tech-card.accent p{color:#d6e7f5}.tech-icon{height:7.2rem;width:100%;margin-top:2rem;color:#6cb9f8;font-size:5rem;display:flex;align-items:center}.tech-card.accent .tech-icon{color:#fff}.tech-icon.glass{gap:.55rem}.tech-icon.glass i{height:6.5rem;width:2.2rem;border:1px solid currentColor;background:linear-gradient(135deg,transparent 40%,rgba(105,184,249,.18))}.tech-icon.profile{gap:.25rem;align-items:flex-end}.tech-icon.profile i{width:1.6rem;border:1px solid currentColor}.tech-icon.profile i:nth-child(1){height:3.5rem}.tech-icon.profile i:nth-child(2){height:5.6rem}.tech-icon.profile i:nth-child(3){height:4.5rem}.tech-icon.profile i:nth-child(4){height:6.6rem}
.benefits{padding:9rem 0;display:grid;grid-template-columns:1fr 1.1fr;gap:8rem}.benefits-copy{position:sticky;top:8rem;align-self:start}.benefits-copy h2 em{color:var(--blue)}.benefits-copy>p:last-child{max-width:35rem;color:var(--muted);font-size:1.03rem}.benefit-list article{display:grid;grid-template-columns:3rem 1fr 1fr;gap:1.5rem;align-items:start;padding:2rem 0;border-top:1px solid var(--line);transition:padding .25s,background .25s}.benefit-list article:hover{padding-left:1rem;background:linear-gradient(90deg,var(--ice),transparent)}.benefit-list h3{font:600 1.45rem var(--serif);margin:0}.benefit-list p{font-size:.82rem;color:var(--muted);margin:0}.about{display:grid;grid-template-columns:1.15fr .85fr;min-height:47rem;background:var(--navy);color:#fff}.about-image{position:relative;min-height:40rem;overflow:hidden}.about-image img{height:100%;object-fit:cover}.about-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,rgba(5,43,85,.4))}.about-image>span,.reference-grid figcaption span{position:absolute;z-index:1;left:1.4rem;bottom:1.4rem;padding:.45rem .7rem;background:rgba(4,29,56,.78);color:#d7e8f5;font-size:.58rem;text-transform:uppercase;letter-spacing:.12em}.about-copy{padding:7rem max(56px,calc((100vw - 1380px)/2)) 7rem 5rem}.about-copy h2{font-size:clamp(2.8rem,4.2vw,4.8rem)}.about-copy>p:not(.section-index):not(.kicker){color:#bfd0de;max-width:39rem}.about-copy .btn{margin-top:1rem}
.process{padding:9rem 0}.process-head{display:grid;grid-template-columns:1fr 3fr;margin-bottom:4rem}.process-head h2{margin:0}.process-head h2 em{color:var(--blue)}.process-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.process-list li{min-height:20rem;padding:2rem 2rem 2rem 0;border-right:1px solid var(--line);position:relative}.process-list li:not(:first-child){padding-left:2rem}.process-list li>span{font:500 3rem var(--serif);color:#b8d9f4}.process-list h3{font:600 1.5rem var(--serif);margin-top:5.5rem}.process-list p{font-size:.82rem;color:var(--muted)}.process-list li:after{content:"";position:absolute;right:-.3rem;top:-.3rem;width:.55rem;height:.55rem;border-radius:50%;background:var(--blue)}.process-list li:last-child{border:0}.process-list li:last-child:after{display:none}.references{background:var(--mist);padding:8rem 0}.references-head{display:grid;grid-template-columns:2fr 1fr;gap:4rem;align-items:end;margin-bottom:3.5rem}.references-head h2{margin:0}.references-head h2 em{color:var(--blue)}.references-head>p{color:var(--muted);max-width:29rem}.reference-grid{width:var(--container);margin:auto;display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:19rem 19rem;gap:1rem}.reference-grid figure{margin:0;position:relative;overflow:hidden;background:#dce5eb}.reference-grid .reference-large{grid-row:1/3}.reference-grid img{height:100%;object-fit:cover;transition:transform .7s var(--ease)}.reference-grid figure:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,24,45,.7),transparent 55%)}.reference-grid figcaption{position:absolute;z-index:1;inset:auto 2rem 1.7rem;color:#fff}.reference-grid figcaption span{position:static;display:inline-block;margin-bottom:.7rem}.reference-grid figcaption strong{display:block;font:500 1.5rem var(--serif)}
.quote{background:var(--deep);color:#fff;padding:9rem max(56px,calc((100vw - 1380px)/2));display:grid;grid-template-columns:1fr minmax(32rem,.72fr);gap:8rem;align-items:center}.quote-copy h2{font-size:clamp(3.2rem,4.7vw,5.3rem)}.quote-copy>p:not(.kicker){color:#b9ccdb;max-width:39rem}.quote-location{display:flex;align-items:center;gap:1rem;margin-top:3rem}.quote-location>span{width:3.7rem;height:3.7rem;border:1px solid #5e90bb;display:grid;place-items:center;color:#8cc8f7;font-size:1.4rem}.quote-location div{display:flex;flex-direction:column}.quote-location small{color:#91a8ba}.quote-form{background:#fff;color:var(--ink);padding:2.8rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.quote-form label:not(.consent){display:block;margin-bottom:1.1rem}.quote-form label>span{display:block;font-size:.67rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;margin-bottom:.4rem}.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid #cbd8e1;border-radius:.15rem;background:#f8fafb;padding:.85rem 1rem;transition:border-color .2s,box-shadow .2s}.quote-form input,.quote-form select{height:3.35rem}.quote-form textarea{resize:vertical}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(20,117,209,.12);outline:0}.quote-form .field-invalid{border-color:#c53f3f}.consent{display:flex;gap:.7rem;align-items:flex-start;margin:1.2rem 0}.consent input{width:1.1rem;height:1.1rem;margin-top:.2rem}.consent span{font-size:.7rem!important;text-transform:none!important;letter-spacing:0!important;color:var(--muted)}.form-error{display:none;color:#aa2929;font-size:.75rem;margin:.5rem 0}.form-error.visible{display:block}.form-success{display:none;background:#e4f2e9;color:#225d39;padding:.9rem;margin:1rem 0 0;font-size:.8rem}.form-success.visible{display:block}
.footer{background:#031629;color:#fff;padding:5.5rem max(56px,calc((100vw - 1380px)/2)) 1.8rem}.footer-top{display:grid;grid-template-columns:1fr 1.4fr auto;gap:4rem;align-items:center;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.14)}.footer-top>p{max-width:32rem;color:#9db1c1;font-size:.85rem;margin:0}.footer-top-link{font-size:.72rem;border-bottom:1px solid #5786aa;padding-bottom:.25rem}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr) .7fr;gap:3rem;padding:3.5rem 0}.footer-grid>div{display:flex;flex-direction:column}.footer-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.15em;color:#7195b2;margin-bottom:1rem}.footer-grid strong{font:500 1.3rem var(--serif)}.footer-grid small{color:#7790a4;margin-top:.4rem}.footer-grid nav{display:flex;flex-direction:column;gap:.55rem;font-size:.78rem}.footer-grid nav a:hover{color:#75baf2}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding-top:1.5rem;display:flex;justify-content:space-between;gap:2rem;color:#647e92;font-size:.62rem}.reveal{opacity:0;transform:translate3d(0,1.25rem,0);transition:opacity .85s var(--ease),transform .85s var(--ease)}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}
@media(max-width:1100px){:root{--container:calc(100% - 64px)}.site-header{padding-inline:32px}.desktop-nav{display:none}.header-cta{margin-left:auto}.menu-toggle{display:block}.site-header.menu-active{position:fixed;background:var(--deep)}.site-header.menu-active .desktop-nav{display:flex;position:fixed;inset:6.2rem 0 0;background:var(--deep);flex-direction:column;align-items:center;justify-content:center;gap:2rem;font:500 2rem var(--serif)}.site-header.scrolled.menu-active .desktop-nav{inset:4.9rem 0 0}.site-header.menu-active .menu-toggle span:first-child{transform:translateY(5px) rotate(45deg)}.site-header.menu-active .menu-toggle span:last-child{transform:translateY(-5px) rotate(-45deg)}.hero-note{right:32px}.technical-head{grid-template-columns:.6fr 1.5fr 1fr}.technical-grid{grid-template-columns:repeat(2,1fr)}.benefits{gap:4rem}.about{grid-template-columns:1fr 1fr}.about-copy{padding:5rem 32px 5rem 3rem}.quote{padding-inline:32px;gap:3rem}.footer{padding-inline:32px}}
@media(max-width:760px){:root{--container:calc(100% - 36px)}body{font-size:15px}.site-header{height:4.6rem;padding-inline:18px;gap:.7rem}.site-header.scrolled{height:4.6rem}.brand-mark{width:1.9rem;height:1.9rem}.brand-copy strong{font-size:.82rem}.brand-copy small{font-size:.42rem}.header-cta{display:none}.site-header.menu-active .desktop-nav,.site-header.scrolled.menu-active .desktop-nav{inset:4.6rem 0 0}.hero{height:auto;min-height:47rem;align-items:flex-end;padding-bottom:4rem}.hero-media{background:linear-gradient(90deg,rgba(4,25,48,.94),rgba(4,29,56,.48)),url('assets/images/hero-home.jpg') 63% center/cover}.hero-grid{background-size:6rem 6rem}.hero-content{padding-top:8rem}.hero h1{font-size:clamp(3.5rem,16vw,5.2rem)}.hero-lead{font-size:.95rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:.7rem}.hero-note{display:none}.intro{padding:6rem 0 3.5rem;display:block}.intro .section-index{margin-bottom:2.5rem}.intro h2{font-size:clamp(2.7rem,12vw,4rem)}.services{grid-template-columns:1fr;padding-bottom:6rem}.service-feature{height:34rem}.service-overlay{padding:2rem}.service-overlay h3{font-size:3rem}.service-stack{grid-template-rows:29rem 24rem}.service-strip{grid-template-columns:1fr}.service-strip article{border-right:0;border-bottom:1px solid var(--line);padding:1.7rem}.technical{padding:6rem 0}.technical-head{display:block}.technical-head .section-index{margin-bottom:3rem}.technical-head>p:last-child{margin-top:2rem}.technical-grid{grid-template-columns:1fr;margin-top:3rem}.tech-card{min-height:20rem}.benefits{padding:6rem 0;grid-template-columns:1fr;gap:2rem}.benefits-copy{position:static}.benefit-list article{grid-template-columns:2rem 1fr}.benefit-list p{grid-column:2}.about{grid-template-columns:1fr}.about-image{min-height:29rem}.about-copy{padding:5rem 18px}.about-copy h2{font-size:3.1rem}.process{padding:6rem 0}.process-head{display:block}.process-head .section-index{margin-bottom:2.5rem}.process-list{grid-template-columns:1fr;border-left:1px solid var(--line);border-top:0}.process-list li,.process-list li:not(:first-child){min-height:0;border-right:0;border-bottom:1px solid var(--line);padding:1.7rem 0 1.7rem 1.6rem;display:grid;grid-template-columns:4rem 1fr;gap:1rem}.process-list h3{margin:.3rem 0}.process-list li:after{right:auto;left:-.3rem;top:2rem}.references{padding:6rem 0}.references-head{grid-template-columns:1fr;gap:2rem}.reference-grid{grid-template-columns:1fr;grid-template-rows:26rem 22rem 22rem}.reference-grid .reference-large{grid-row:auto}.quote{padding:6rem 18px;grid-template-columns:1fr;gap:3rem}.quote-copy h2{font-size:3.2rem}.quote-form{padding:1.5rem}.form-row{grid-template-columns:1fr}.footer{padding:4.5rem 18px 1.5rem}.footer-top{grid-template-columns:1fr;gap:1.5rem}.footer-grid{grid-template-columns:1fr 1fr;gap:2.5rem 1rem}.footer-grid nav{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation:none!important;transition-duration:.01ms!important}}
@media(min-width:1101px) and (max-width:1200px){.site-header{padding-inline:32px}.desktop-nav{display:none}.header-cta{margin-left:auto}.menu-toggle{display:block}.site-header.menu-active{position:fixed;background:var(--deep)}.site-header.menu-active .desktop-nav{display:flex;position:fixed;inset:6.2rem 0 0;background:var(--deep);flex-direction:column;align-items:center;justify-content:center;gap:2rem;font:500 2rem var(--serif)}.site-header.scrolled.menu-active .desktop-nav{inset:4.9rem 0 0}.site-header.menu-active .menu-toggle span:first-child{transform:translateY(5px) rotate(45deg)}.site-header.menu-active .menu-toggle span:last-child{transform:translateY(-5px) rotate(-45deg)}}

/* Refined contractor direction: spacious, sans-serif and visually unified */
:root{--serif:"Bricolage Grotesque","Arial Narrow",Arial,sans-serif;--sans:"DM Sans",Arial,sans-serif;--page-gutter:clamp(72px,7.2vw,96px);--container:min(1340px,calc(100% - var(--page-gutter) - var(--page-gutter)));--navy:#062b4f;--deep:#041f3a;--blue:#2585d8;--blue-2:#62b2ee;--mist:#f4f7f9;--line:#dbe3e8}
body{font-family:var(--sans);line-height:1.7;background:#fff}h1,h2,h3{font-family:var(--serif);font-style:normal;font-weight:600;letter-spacing:-.055em}h1 em,h2 em{font-style:normal;font-weight:700}.section-index{display:none}.kicker{font-family:var(--sans);font-size:.75rem;letter-spacing:.17em;margin-bottom:1.6rem}.btn{border-radius:6px;min-height:3.7rem;padding-inline:1.7rem}.brand-copy strong{font-family:var(--serif);font-weight:700;letter-spacing:.09em}
.hero{min-height:760px;height:min(960px,100dvh)}.hero-media{background:linear-gradient(90deg,rgba(4,31,58,.94) 0%,rgba(4,31,58,.66) 43%,rgba(4,31,58,.08) 80%),url('assets/images/hero-home.jpg') 58% center/cover}.hero-grid{opacity:.42;background-size:11rem 11rem}.hero-content{padding-top:7rem}.hero h1{font-size:clamp(4.6rem,7.4vw,7.9rem);font-weight:600;line-height:.92;max-width:63rem;margin-bottom:2.2rem}.hero h1 em{font-weight:600}.hero-lead{font-size:clamp(1.08rem,1.35vw,1.28rem);line-height:1.7;max-width:43rem;margin-bottom:2.7rem}.hero-actions{gap:2.2rem}.hero-note{width:min(34rem,40vw);padding:1.9rem 2.2rem}.hero-note strong{font-family:var(--serif);font-size:1.15rem}
.intro{padding:10rem 0 8rem;display:grid;grid-template-columns:1.65fr .7fr;gap:7rem;align-items:end}.intro h2{font-size:clamp(3.3rem,5vw,5.3rem);font-weight:600;line-height:1.05;margin:0}.intro h2 em{color:var(--blue)}.intro-copy{font-size:1.1rem;line-height:1.8;max-width:31rem;margin-bottom:.4rem}
.services{display:block;padding-bottom:10rem}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:5rem;margin-bottom:4.5rem}.section-heading h2{font-size:clamp(3rem,4.7vw,5rem);font-weight:600;line-height:1.04;margin:0}.section-heading h2 em{color:var(--blue)}.section-heading>p{max-width:28rem;color:var(--muted);font-size:1.05rem;margin-bottom:.45rem}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;align-items:center}.service-card,.service-card.service-card-raised{height:590px;min-height:0;position:relative;overflow:hidden;border-radius:8px;background:#dce5eb}.service-card-raised{height:660px!important}.service-card>img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}.service-card:hover>img{transform:scale(1.04)}.service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,26,48,.94),rgba(3,26,48,.08) 68%)}.service-card>div{position:absolute;z-index:1;inset:auto 0 0;padding:2.6rem;color:#fff}.service-card>div>span{color:#9fd0f4;font-size:.72rem;letter-spacing:.16em;font-weight:700}.service-card h3{font-size:2rem;font-weight:600;line-height:1.15;margin:.8rem 0}.service-card p{font-size:.94rem;color:#d4e2ec;max-width:20rem}.service-card a{position:absolute;right:2.5rem;bottom:2.8rem;width:3rem;height:3rem;display:grid;place-items:center;border:1px solid rgba(255,255,255,.55);border-radius:50%;transition:.25s}.service-card a:hover{background:#fff;color:var(--navy)}.service-extras{display:grid;grid-template-columns:1fr repeat(3,1.1fr);gap:1.5rem;padding:2.2rem 0;margin-top:2.5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.9rem}.service-extras strong{font-family:var(--serif)}.service-extras span{color:var(--muted)}
.technical{padding:10rem 0;background:var(--deep)}.technical-head{display:grid;grid-template-columns:1.4fr .75fr;gap:8rem;align-items:end}.technical-head h2{font-size:clamp(3.4rem,5vw,5.4rem);font-weight:600;line-height:1.02;margin:0}.technical-head>p{font-size:1.05rem;line-height:1.8;max-width:31rem;color:#b9cbd8}.technical-grid{grid-template-columns:repeat(3,1fr);margin-top:5.5rem;border:0;gap:1px;background:rgba(255,255,255,.16)}.tech-card{min-height:360px;padding:3.2rem;background:var(--deep);border:0;justify-content:flex-end}.tech-card>span{margin-bottom:auto;font-size:.72rem}.tech-card h3{font-size:1.8rem;font-weight:600;line-height:1.2;margin:4rem 0 1rem}.tech-card p{font-size:.95rem;line-height:1.7;color:#b8c9d6;max-width:23rem}.tech-card.accent{background:#176aad}.tech-card.accent p{color:#e0ebf3}.tech-icon{display:none}
.benefits{padding:10rem 0;grid-template-columns:1fr 1fr;gap:8rem;align-items:center}.benefits-copy{position:static}.benefits-copy h2{font-size:clamp(3.4rem,5vw,5.25rem);font-weight:600;line-height:1.03}.benefits-copy>p:last-child{font-size:1.08rem;line-height:1.8;max-width:36rem}.benefit-list{border-top:1px solid var(--line)}.benefit-list article{display:grid;grid-template-columns:3.5rem 1fr;gap:1.5rem;padding:2.4rem 0;border-bottom:1px solid var(--line);border-top:0}.benefit-list article:hover{padding-left:1.2rem}.benefit-list h3{font-size:1.35rem;font-weight:700;margin:0 0 .5rem}.benefit-list p{font-size:.93rem}.benefit-list article>span{padding-top:.25rem}
.about{width:var(--container);margin-inline:auto;grid-template-columns:1.08fr .92fr;min-height:680px;border-radius:8px;overflow:hidden;background:var(--navy)}.about-image{min-height:680px}.about-copy{padding:6.5rem 5.5rem}.about-copy h2{font-size:clamp(2.8rem,3.8vw,4.35rem);font-weight:600;line-height:1.06}.about-copy>p:not(.section-index):not(.kicker){font-size:1rem;line-height:1.8}.about-copy .btn{margin-top:1.8rem}
.process{padding:11rem 0}.process-head{display:block;max-width:850px;margin-bottom:5rem}.process-head h2{font-size:clamp(3.3rem,4.9vw,5.2rem);font-weight:600;line-height:1.04}.process-list{gap:1.2rem;border:0}.process-list li,.process-list li:not(:first-child){min-height:350px;padding:2.8rem;border:0;border-radius:7px;box-shadow:0 1.2rem 3rem rgba(6,43,79,.08)}.process-list li:nth-child(1){background:#edf7fd}.process-list li:nth-child(2){background:#d7ebf8}.process-list li:nth-child(3){background:#a9d1ec}.process-list li:nth-child(4){background:#17659f;color:#fff}.process-list li>span{font-family:var(--serif);font-size:2.2rem;font-weight:700;color:#4c95c8}.process-list li:nth-child(3)>span{color:#17659f}.process-list li:nth-child(4)>span{color:#9fd2f2}.process-list h3{font-size:1.35rem;font-weight:700;line-height:1.3;margin:7rem 0 .8rem}.process-list p{font-size:.94rem;line-height:1.7;color:#4e687b}.process-list li:nth-child(4) p{color:#d8e8f3}.process-list li:after{display:none}
.references{padding:10rem 0;background:var(--mist)}.references-head{grid-template-columns:1.4fr .7fr;gap:7rem;margin-bottom:4.5rem}.references-head h2{font-size:clamp(3.3rem,4.8vw,5.1rem);font-weight:600;line-height:1.04}.references-head>p{font-size:1.05rem;line-height:1.8}.reference-grid{grid-template-columns:1.3fr .7fr;grid-template-rows:300px 300px;gap:1.25rem}.reference-grid figure{border-radius:7px}.reference-grid figcaption strong{font-family:var(--serif);font-size:1.25rem;font-weight:600}.reference-grid figcaption span{font-family:var(--sans)}
/* Az ajánlatkérő háttérképe itt cserélhető egyetlen URL módosításával. */
.quote{--quote-background-image:url('assets/images/hero-home.jpg');padding-block:10rem;grid-template-columns:1fr minmax(34rem,.75fr);gap:8rem;background:linear-gradient(100deg,rgba(4,31,58,.98) 0%,rgba(6,43,79,.94) 48%,rgba(23,101,159,.76) 100%),var(--quote-background-image) 58% center/cover no-repeat}.quote-copy h2{font-size:clamp(3.5rem,4.8vw,5.3rem);font-weight:600;line-height:1.03}.quote-copy>p:not(.kicker){font-size:1.05rem;line-height:1.8}.quote-location{margin-top:3.5rem}.quote-form{padding:3rem;border-radius:7px;box-shadow:0 1.5rem 4rem rgba(3,22,41,.2)}.quote-form input,.quote-form select,.quote-form textarea{border-radius:4px;background:#fff}.footer{padding-top:6.5rem}.footer-grid strong{font-family:var(--serif);font-size:1.15rem;font-weight:600}
@media(max-width:1100px){:root{--container:calc(100% - 64px)}.intro{gap:3rem}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card-raised{height:590px!important}.service-card:last-child{grid-column:1/-1;height:520px}.technical-head{gap:4rem}.tech-card{padding:2.5rem}.benefits{gap:4rem}.about{width:100%;border-radius:0}.about-copy{padding:5rem 3rem}.process-list{grid-template-columns:repeat(2,1fr)}.quote{grid-template-columns:1fr 1fr;gap:4rem}}
@media(max-width:760px){:root{--container:calc(100% - 36px)}h2{letter-spacing:-.04em}.hero{min-height:780px;padding-bottom:4.5rem}.hero-content{padding-top:8.5rem}.hero h1{font-size:clamp(3.45rem,15vw,4.9rem);line-height:.95;margin-bottom:2rem}.hero-lead{font-size:1rem;line-height:1.7}.intro{padding:7rem 0 5rem;display:block}.intro h2{font-size:2.9rem}.intro-copy{margin-top:2.2rem}.services{padding-bottom:7rem}.section-heading{display:block;margin-bottom:3rem}.section-heading h2{font-size:2.85rem}.section-heading>p{margin-top:1.8rem}.service-grid{grid-template-columns:1fr;gap:1rem}.service-card,.service-card.service-card-raised,.service-card:last-child{grid-column:auto;height:500px!important}.service-card>div{padding:2rem}.service-card a{right:2rem;bottom:2rem}.service-extras{grid-template-columns:1fr;gap:.8rem;padding:1.7rem 0}.service-extras strong{margin-bottom:.5rem}.technical{padding:7rem 0}.technical-head{display:block}.technical-head h2{font-size:2.9rem}.technical-head>p{margin-top:2rem}.technical-grid{grid-template-columns:1fr;margin-top:3.5rem}.tech-card{min-height:260px;padding:2.2rem}.tech-card h3{margin-top:3rem}.benefits{padding:7rem 0;grid-template-columns:1fr;gap:3.5rem}.benefits-copy h2{font-size:2.9rem}.benefit-list article{grid-template-columns:2.7rem 1fr}.about{grid-template-columns:1fr}.about-image{min-height:430px}.about-copy{padding:5rem 18px}.about-copy h2{font-size:2.75rem}.process{padding:7rem 0}.process-head{margin-bottom:3rem}.process-head h2{font-size:2.9rem}.process-list{grid-template-columns:1fr;gap:.8rem}.process-list li,.process-list li:not(:first-child){min-height:270px;padding:2.2rem;display:block}.process-list h3{margin-top:4.5rem}.references{padding:7rem 0}.references-head{grid-template-columns:1fr;gap:2rem;margin-bottom:3rem}.references-head h2{font-size:2.9rem}.reference-grid{grid-template-columns:1fr;grid-template-rows:400px 320px 320px}.quote{padding-block:7rem;grid-template-columns:1fr;gap:3.5rem;background-position:64% center}.quote-copy h2{font-size:2.9rem}.quote-form{padding:1.5rem}.footer{padding-top:5rem}}
[id]{scroll-margin-top:7rem}.service-card>img{height:calc(100% + 28px);margin-top:-28px}

/* Tartalmi ritmus: kiemelt szolgáltatások közvetlenül a hero után */
.kicker>span{display:none}.featured-services{padding:6.5rem 0 8rem;background:#e9edfe;box-shadow:0 0 0 100vmax #e9edfe;clip-path:inset(0 -100vmax)}.featured-services-head{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;text-align:center;margin-bottom:3.25rem}.featured-services-head .kicker{margin-bottom:1.35rem}.featured-services-head h2{font-size:clamp(3.1rem,4.6vw,4.9rem);line-height:1.02;margin:0;max-width:48rem}.featured-services-head h2 em{color:var(--blue)}.featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.15rem}.featured-card{min-height:270px;padding:2rem 1.6rem 1.8rem;display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border:1px solid #e1e9ef;border-radius:12px;box-shadow:0 .55rem 1.45rem rgba(63,72,86,.14);transition:transform .25s var(--ease),border-color .25s var(--ease),box-shadow .25s var(--ease)}.featured-card:hover{transform:translateY(-5px);border-color:#b8d8ef;box-shadow:0 .8rem 2rem rgba(63,72,86,.18)}.featured-icon{width:4.25rem;height:4.25rem;flex:0 0 auto;display:grid;place-items:center;margin-bottom:1.45rem;border-radius:10px;background:var(--blue);color:#fff}.featured-icon svg{width:2.35rem;height:2.35rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.featured-card h3{font-size:1.34rem;line-height:1.2;margin:0 0 .75rem}.featured-card p{font-size:.88rem;line-height:1.62;color:var(--muted);max-width:17rem;margin:0}.services{padding-bottom:10rem}.service-extras{display:none}

/* A műszaki blokk négy, gyorsan áttekinthető választási szempontot mutat. */
.technical-grid{grid-template-columns:repeat(4,1fr)}.tech-card{min-height:320px;padding:2.7rem}.tech-card h3{font-size:1.55rem;margin:3.5rem 0 .9rem}.tech-card p{font-size:.9rem}

/* Bizalomépítő előnyök */
.benefits{align-items:start}.benefits-copy{padding-top:1.2rem}.benefit-list article{padding:2rem 0}.benefit-list h3{font-size:1.4rem}.about-copy h2{font-size:clamp(3rem,4vw,4.5rem)}.process-head{max-width:none}.process-head h2{margin-bottom:0}.process-list h3{margin-top:7rem}

/* A vélemények szándékosan mintatartalmak, amíg nincs jóváhagyott ügyfélidézet. */
.testimonials{padding:10rem 0}.testimonials-head{display:grid;grid-template-columns:1.25fr .75fr;gap:6rem;align-items:end;margin-bottom:4rem}.testimonials-head .kicker{grid-column:1/-1;margin-bottom:-3.6rem}.testimonials-head h2{font-size:clamp(3.3rem,4.8vw,5.1rem);line-height:1.04;margin:0}.testimonials-head>p{color:var(--muted);font-size:1.02rem;max-width:29rem;margin:0}.testimonial-grid{display:grid;grid-template-columns:1.12fr 1fr .88fr;gap:1.25rem}.testimonial-card{min-height:300px;padding:2.5rem;background:#f2f7fa;border-top:3px solid #9cc9e8;display:flex;flex-direction:column}.testimonial-card>span{font-size:.67rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--blue)}.testimonial-card p{font-family:var(--serif);font-size:1.5rem;line-height:1.35;margin:auto 0 2rem}.testimonial-card small{color:var(--muted)}.testimonial-card-accent{background:var(--navy);color:#fff;border-top-color:#62b2ee}.testimonial-card-accent>span{color:#8bc8f3}.testimonial-card-accent small{color:#b9ccda}

@media(max-width:1100px){.featured-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.featured-card{min-height:245px}.technical-grid{grid-template-columns:repeat(2,1fr)}.testimonial-grid{grid-template-columns:1fr 1fr}.testimonial-card:last-child{grid-column:1/-1}.testimonials-head{gap:3rem}}
@media(max-width:760px){.featured-services{padding:5rem 0 7rem}.featured-services-head{margin-bottom:2.5rem}.featured-services-head h2{font-size:2.9rem}.featured-grid{grid-template-columns:1fr;gap:.9rem}.featured-card{min-height:233px;padding:2rem 1.5rem}.featured-icon{width:4rem;height:4rem;margin-bottom:1.25rem}.technical-grid{grid-template-columns:1fr}.tech-card{min-height:250px}.benefits-copy{padding-top:0}.about-copy h2{font-size:2.8rem}.process-list h3{margin-top:4.5rem}.testimonials{padding:7rem 0}.testimonials-head{display:block;margin-bottom:3rem}.testimonials-head .kicker{margin-bottom:1.6rem}.testimonials-head h2{font-size:2.9rem}.testimonials-head>p{margin-top:1.5rem}.testimonial-grid{grid-template-columns:1fr}.testimonial-card,.testimonial-card:last-child{grid-column:auto;min-height:250px;padding:2rem}.testimonial-card p{font-size:1.3rem}}

/* A Rólunk rész kék panelje a tartalomhoz igazodik, nem a kép magasságához. */
.about{width:var(--container);height:560px;min-height:0;grid-template-columns:1.18fr 1fr;background:transparent;overflow:hidden;align-items:stretch}.about-image{min-height:0;height:100%;border-radius:8px 0 0 8px;overflow:hidden}.about-copy{height:100%;align-self:stretch;background:var(--navy);padding:4.25rem 5rem 3.75rem;border-radius:0 8px 8px 0}.about-copy .kicker{gap:0;margin-bottom:2.2rem}.about-copy .kicker span{display:none}.about-copy h2{font-size:clamp(2.8rem,3.3vw,4rem);line-height:1.02;margin-bottom:1.75rem}.about-copy>p:not(.section-index):not(.kicker){font-size:.98rem;line-height:1.7;margin-bottom:1rem}.about-copy>p:last-of-type:not(.section-index):not(.kicker){margin-bottom:2.25rem}.about-copy .btn{min-height:3.4rem;margin-top:0;padding-inline:1.5rem;font-size:.84rem}
@media(max-width:1200px){.about{width:var(--container);height:540px;min-height:0}.about-image{height:100%;border-radius:8px 0 0 8px}.about-copy{height:100%;min-height:0;padding:3.5rem 3.25rem 3rem;border-radius:0 8px 8px 0}.about-copy .kicker{margin-bottom:1.8rem}.about-copy h2{font-size:3rem;margin-bottom:1.4rem}.about-copy>p:not(.section-index):not(.kicker){font-size:.94rem;line-height:1.65;margin-bottom:.85rem}.about-copy>p:last-of-type:not(.section-index):not(.kicker){margin-bottom:1.8rem}.about-copy .btn{min-height:3.2rem}}
@media(max-width:760px){.about{width:100%;height:auto;min-height:0;grid-template-columns:1fr;align-items:stretch;background:var(--navy);border-radius:0}.about-image{height:400px;min-height:0;border-radius:0}.about-copy{height:auto;min-height:0;padding:4rem 18px 3.5rem;border-radius:0}.about-copy .kicker{margin-bottom:1.8rem}.about-copy h2{font-size:2.7rem;margin-bottom:1.4rem}.about-copy>p:not(.section-index):not(.kicker){font-size:.95rem;line-height:1.65}.about-copy>p:last-of-type:not(.section-index):not(.kicker){margin-bottom:2rem}.about-copy .btn{min-height:3.5rem;margin-top:0;font-size:.9rem}}
@media(min-width:1101px){.site-header{padding-inline:max(var(--page-gutter),calc((100vw - 1340px)/2))}.hero-note{right:max(var(--page-gutter),calc((100vw - 1340px)/2))}.quote,.footer{padding-inline:max(var(--page-gutter),calc((100vw - 1340px)/2))}}

/* Kétoszlopos műszaki blokk: tartalom és 2×2 kártyarács balra, magas termékkép jobbra. */
.technical{padding:0;background:var(--deep);overflow:hidden}.technical-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(440px,1fr);gap:0;min-height:740px;align-items:stretch}.technical-content{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:4.75rem 2rem 4.75rem 0}.technical .technical-head{display:block;width:auto;margin:0 0 2.25rem}.technical .technical-head .kicker{margin-bottom:1.25rem;color:#dfbd74}.technical .technical-head h2{max-width:42rem;margin:0;font-size:clamp(3.5rem,4.8vw,5.2rem);font-weight:600;line-height:1.01}.technical .technical-head h2 em{color:var(--blue-2)}.technical .technical-head>p:last-child{max-width:40rem;margin:1.55rem 0 0;color:#b9ccda;font-size:1rem;line-height:1.7}.technical .technical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:.75rem;margin:0;background:transparent;border:0}.technical .tech-card,.technical .tech-card.accent{min-height:155px;padding:1.4rem 1.45rem;justify-content:flex-start;background:linear-gradient(135deg,rgba(38,124,191,.34),rgba(8,56,99,.5));border:1px solid rgba(181,216,241,.1);border-radius:7px;box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 .55rem 1.4rem rgba(2,20,38,.08)}.technical .tech-card h3{margin:0 0 .6rem;font-size:1.18rem;font-weight:600;line-height:1.22}.technical .tech-card p,.technical .tech-card.accent p{max-width:25rem;margin:0;color:#c3d5e2;font-size:.84rem;line-height:1.55}.technical-visual{position:relative;min-height:740px;margin:0;overflow:hidden;border-radius:0;background:#0a2740;box-shadow:none}.technical-visual img{width:100%;height:100%;object-fit:cover;object-position:59% center}.technical-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--deep) 0%,rgba(4,31,58,.98) 18%,rgba(4,31,58,.88) 36%,rgba(4,31,58,.5) 55%,rgba(4,31,58,.15) 72%,transparent 88%);pointer-events:none}
@media(min-width:901px){.technical-layout{width:auto;margin-left:max(var(--page-gutter),calc((100vw - 1340px)/2));margin-right:0}}
@media(max-width:900px){.technical-layout{grid-template-columns:1fr;min-height:0}.technical-content{padding:5.25rem 0 4rem}.technical-visual{height:540px;min-height:0}.technical-visual:after{background:linear-gradient(180deg,var(--deep) 0%,rgba(4,31,58,.7) 20%,rgba(4,31,58,.18) 45%,transparent 65%)}}
@media(max-width:760px){.technical{padding:0}.technical-content{padding:4.75rem 0 3.5rem}.technical .technical-head{margin-bottom:2rem}.technical .technical-head h2{font-size:3rem}.technical .technical-head>p:last-child{margin-top:1.4rem;font-size:.95rem}.technical .technical-grid{grid-template-columns:1fr;gap:.65rem}.technical .tech-card,.technical .tech-card.accent{min-height:0;padding:1.4rem}.technical-visual{height:430px;border-radius:2px}}

/* A műszaki kép desktopon a teljes szekció része, így az ablakra.png széles kompozíciója látszik. */
.technical .tech-card h3{color:#f0c56a}
@media(min-width:901px){.technical{position:relative;isolation:isolate}.technical-layout{display:block;width:100%;min-height:760px;margin:0}.technical-content{position:relative;z-index:2;width:min(52vw,650px);min-height:760px;margin-left:max(var(--page-gutter),calc((100vw - 1340px)/2));padding:4.75rem 2rem 4.75rem 0}.technical-visual{position:absolute;z-index:0;inset:0;width:100%;height:100%;min-height:0}.technical-visual img{object-position:center}.technical-visual:after{background:linear-gradient(90deg,var(--deep) 0%,rgba(4,31,58,.99) 34%,rgba(4,31,58,.92) 47%,rgba(4,31,58,.62) 61%,rgba(4,31,58,.2) 76%,transparent 91%)}}

/* Finom kiemelés a Miért minket? lista 02–04 elemein, a meglévő szerkezet megtartásával. */
.benefits-copy .kicker{margin-bottom:2.15rem}.benefit-list{border-top:0}.benefit-list article{padding:2.65rem 2rem;border:0;transition:background .25s var(--ease)}.benefit-list article:first-child{padding-left:0;background:#fff}.benefit-list article:nth-child(n+2){margin-top:.35rem;background:linear-gradient(90deg,rgba(75,157,218,.16) 0%,rgba(151,205,239,.09) 58%,rgba(234,246,253,.025) 100%);border-radius:9px 0 0 9px}.benefit-list article:hover{padding-left:2rem}.benefit-list article:first-child:hover{padding-left:0;background:#fff}.benefit-list article:nth-child(n+2):hover{background:linear-gradient(90deg,rgba(75,157,218,.2) 0%,rgba(151,205,239,.11) 58%,rgba(234,246,253,.035) 100%)}.benefit-list article>span{color:var(--blue)}.benefit-list h3{margin:0 0 .85rem}
@media(max-width:760px){.benefit-list article{padding:2.35rem 1.25rem}.benefit-list article:first-child,.benefit-list article:first-child:hover{padding-left:0}.benefit-list article:hover{padding-left:1.25rem}}

/* Egységes, kompakt információs blokkok a Miért minket? jobb oldalán. */
#miert-minket .benefit-list{display:grid;gap:.85rem;width:min(100%,620px);justify-self:end;border:0}#miert-minket .benefit-list article,#miert-minket .benefit-list article:first-child,#miert-minket .benefit-list article:nth-child(n+2){display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:1.25rem;height:132px;min-height:0;margin:0;padding:1.45rem 1.65rem;background:linear-gradient(105deg,rgba(226,242,252,.92) 0%,rgba(245,250,253,.88) 58%,rgba(255,255,255,.98) 100%);border:1px solid rgba(82,151,199,.15);border-radius:11px;box-shadow:0 .55rem 1.35rem rgba(29,86,128,.065);transition:transform .25s var(--ease),border-color .25s var(--ease),box-shadow .25s var(--ease)}#miert-minket .benefit-list article:hover,#miert-minket .benefit-list article:first-child:hover,#miert-minket .benefit-list article:nth-child(n+2):hover{padding-left:1.65rem;background:linear-gradient(105deg,rgba(218,238,251,.96) 0%,rgba(242,249,253,.92) 58%,rgba(255,255,255,.99) 100%);border-color:rgba(82,151,199,.23);box-shadow:0 .7rem 1.55rem rgba(29,86,128,.085);transform:translateY(-2px)}#miert-minket .benefit-list article>span{display:grid;place-items:center;width:56px;height:56px;padding:0;border-radius:50%;background:#d7ecf9;color:#1977bc;font-family:var(--serif);font-size:1.08rem;font-weight:700;letter-spacing:.04em;font-variant-numeric:tabular-nums}#miert-minket .benefit-list h3{margin:0 0 .55rem;font-size:1.35rem;line-height:1.2}#miert-minket .benefit-list p{margin:0;line-height:1.55}
@media(max-width:760px){#miert-minket .benefit-list{width:100%}#miert-minket .benefit-list article,#miert-minket .benefit-list article:first-child,#miert-minket .benefit-list article:nth-child(n+2),#miert-minket .benefit-list article:hover{grid-template-columns:54px minmax(0,1fr);gap:1rem;height:auto;min-height:116px;padding:1.25rem}#miert-minket .benefit-list article>span{width:54px;height:54px}}

/* Stabil, tiszta kártyaszél eltérő böngészőzoomokon is. */
#miert-minket .benefit-list article,#miert-minket .benefit-list article:first-child,#miert-minket .benefit-list article:nth-child(n+2){box-sizing:border-box;overflow:hidden;background-clip:padding-box;border:0;outline:0;border-radius:12px;box-shadow:0 10px 26px rgba(29,86,128,.055);transform:none;transition:background .25s var(--ease),box-shadow .25s var(--ease)}#miert-minket .benefit-list article:hover,#miert-minket .benefit-list article:first-child:hover,#miert-minket .benefit-list article:nth-child(n+2):hover{border:0;outline:0;box-shadow:0 12px 28px rgba(29,86,128,.075);transform:none}#miert-minket .benefit-list article::before,#miert-minket .benefit-list article::after{content:none}

/* A folyamatkártyák kompaktabb magassága. */
@media(min-width:761px){.process-list li,.process-list li:not(:first-child){height:285px;min-height:0;padding:2.25rem}.process-list h3{margin:3.6rem 0 .65rem}}

@media(min-width:761px){.process-list li,.process-list li:not(:first-child){height:270px;padding:1.9rem}.process-list h3{margin:2.2rem 0 .6rem}}

/* Kontrasztosabb számbadge és kiegyensúlyozó képsáv a Miért minket? szekcióban. */
#miert-minket .benefit-list article>span{background:#176fa8;color:#eef9ff;box-shadow:0 5px 14px rgba(9,70,108,.16)}.benefits-strip{width:min(100%,33rem);height:150px;margin:2.6rem 0 0;overflow:hidden;border-radius:11px;background:#dceaf3;box-shadow:0 12px 30px rgba(24,74,108,.09)}.benefits-strip img{width:100%;height:100%;object-fit:cover;object-position:72% 57%;filter:saturate(.88) contrast(.98)}
@media(max-width:760px){.benefits-strip{height:132px;margin-top:2rem;border-radius:9px}.benefits-strip img{object-position:68% 55%}}

/* A kártyasor a nagy címmel indul egy vonalból; a bal oldali kép nagyobb vizuális súlyt kap. */
@media(min-width:761px){#miert-minket .benefit-list{margin-top:4.625rem}.benefits-strip{height:225px;margin-top:2.75rem}.benefits-strip img{object-position:72% 55%}}
@media(max-width:760px){.benefits-strip{height:185px;margin-top:2.25rem}}

/* A bal kép és a 04-es kártya alja dinamikusan egy vonalban zár. */
@media(min-width:761px){.benefits{align-items:stretch}.benefits-copy{display:flex;flex-direction:column;align-self:stretch}.benefits-copy>p:last-of-type{margin-bottom:2.75rem}.benefits-strip{margin-top:auto}.benefit-list{align-self:stretch}}
@media(max-width:760px){.benefits-copy{display:block}.benefits-copy>p:last-of-type{margin-bottom:0}.benefits-strip{margin-top:2.25rem}}

/* A Rólunk blokk mögötti háttér már a kép és a kék panel előtt elkezdődik. */
#rolunk{box-shadow:0 0 0 100vmax #f4f7f9;clip-path:inset(-8rem -100vmax)}
@media(max-width:760px){#rolunk{clip-path:inset(-4.5rem -100vmax)}}

/* Levegősebb átmenet a szolgáltatáskártyák és a Termékkategóriák között. */
#termekek{padding-top:6rem}
@media(max-width:760px){#termekek{padding-top:4rem}}

/* Kiegyensúlyozottabb függőleges tér a Miért minket? szekció körül. */
#miert-minket{padding-top:6rem;padding-bottom:16rem}
@media(max-width:760px){#miert-minket{padding-top:4.5rem;padding-bottom:9rem}}

/* A találkozó szekcióélek együtt adnak egy kiegyensúlyozott, nem duplázódó térközt. */
#folyamat{padding-top:16rem;padding-bottom:8rem}
#referenciak{padding-top:8rem;padding-bottom:8rem}
#velemenyek{padding-top:4rem;padding-bottom:4rem}
@media(max-width:760px){#folyamat{padding-top:9rem;padding-bottom:4.5rem}#referenciak{padding-top:4.5rem;padding-bottom:4.5rem}#velemenyek{padding-top:2.5rem;padding-bottom:2.5rem}}

/* Könnyedebb, egységes véleménykártyák. */
#velemenyek .testimonials-head{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center;margin-bottom:3.5rem}
#velemenyek .testimonials-head .kicker{margin:0 0 1.2rem}
#velemenyek .testimonials-head .kicker{color:#79bff0;font-size:12px;font-weight:800;letter-spacing:.17em;line-height:1.7;text-transform:uppercase}
#velemenyek .testimonials-head h2{max-width:52rem;margin:0;font-size:clamp(3.2rem,4.7vw,5rem);line-height:1.02}
#velemenyek .testimonials-head>p{max-width:43rem;margin:1.25rem auto 0;color:var(--muted);font-size:1rem;line-height:1.7}
#velemenyek .testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:stretch}
#velemenyek .testimonial-card,
#velemenyek .testimonial-card:last-child,
#velemenyek .testimonial-card-accent{position:relative;grid-column:auto;min-height:235px;padding:1.8rem 2rem 1.7rem;overflow:hidden;display:flex;flex-direction:column;background:linear-gradient(135deg,rgba(225,241,251,.96) 0%,rgba(246,250,253,.96) 58%,#fff 100%);background-clip:padding-box;color:var(--ink);border:1px solid rgba(82,151,199,.11);border-radius:12px;box-shadow:0 12px 28px rgba(29,86,128,.055)}
#velemenyek .testimonial-card::before{content:"“";display:block;height:3.05rem;color:#89c8f0;font-family:Georgia,serif;font-size:5rem;font-weight:700;line-height:.85}
#velemenyek .testimonial-card>span,
#velemenyek .testimonial-card-accent>span{margin:.2rem 0 1rem;color:#7795aa;font-size:.54rem;font-weight:700;letter-spacing:.14em;line-height:1.2;text-transform:uppercase;opacity:.62}
#velemenyek .testimonial-card p{margin:0 0 1.5rem;color:var(--ink);font-family:var(--sans);font-size:.98rem;line-height:1.62}
#velemenyek .testimonial-card small,
#velemenyek .testimonial-card-accent small{margin-top:auto;color:var(--muted);font-size:.71rem;line-height:1.4}
@media(max-width:900px){#velemenyek .testimonial-grid{grid-template-columns:1fr}}
@media(max-width:760px){#velemenyek .testimonials-head{margin-bottom:2.5rem}#velemenyek .testimonials-head .kicker{margin-bottom:1rem}#velemenyek .testimonials-head h2{font-size:2.9rem}#velemenyek .testimonials-head>p{margin-top:1rem;font-size:.94rem}#velemenyek .testimonial-grid{gap:.85rem}#velemenyek .testimonial-card,#velemenyek .testimonial-card:last-child,#velemenyek .testimonial-card-accent{min-height:210px;padding:1.6rem 1.7rem 1.5rem}#velemenyek .testimonial-card::before{height:2.75rem;font-size:4.5rem}}

/* Jóváhagyott ügyfélvélemények: erősebb szöveg és 8 rem alsó térköz. */
#velemenyek{padding-top:8rem;padding-bottom:8rem}
#velemenyek .testimonial-card p{color:#000;font-size:1.12rem;line-height:1.58}
#velemenyek .testimonial-card small,#velemenyek .testimonial-card-accent small{color:var(--ink);font-size:.8rem;font-weight:700}
@media(max-width:760px){#velemenyek{padding-bottom:5rem}#velemenyek .testimonial-card p{font-size:1.05rem}}

/* Középre rendezett Termékkategóriák fejléc. */
#termekek .section-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;text-align:center;margin-bottom:4.5rem}
#termekek .section-heading>div{display:flex;flex-direction:column;align-items:center;width:100%}
#termekek .section-heading .kicker{justify-content:center;margin-bottom:1.35rem}
#termekek .section-heading h2{max-width:58rem;margin:0 auto}
#termekek .section-heading>p{max-width:46rem;margin:1.5rem auto 0;text-align:center}
@media(min-width:901px){#termekek .section-heading>p{width:100%;max-width:none;white-space:nowrap}}
@media(max-width:760px){#termekek .section-heading{margin-bottom:3rem}#termekek .section-heading>p{margin-top:1.25rem}}

/* Középre rendezett folyamatfejléc. */
#folyamat .process-head{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;margin-bottom:4rem}
#folyamat .process-head .kicker{justify-content:center;margin-bottom:1.35rem}
#folyamat .process-head h2{margin:0;text-align:center}
@media(max-width:760px){#folyamat .process-head{margin-bottom:3rem}#folyamat .process-head .kicker{margin-bottom:1.1rem}}

/* Középre rendezett referenciafejléc. */
#referenciak .references-head{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;text-align:center;margin-bottom:3.5rem}
#referenciak .references-head .section-index{margin:0 0 1.35rem;color:var(--blue);font-size:.72rem;font-weight:800;letter-spacing:.2em;line-height:1.65;text-transform:uppercase}
#referenciak .references-kicker{display:block;visibility:visible;opacity:1;margin:0 0 1.35rem;color:var(--blue);font-family:var(--sans);font-size:.72rem;font-weight:800;letter-spacing:.2em;line-height:1.65;text-align:center;text-transform:uppercase}
#referenciak .references-head h2{max-width:none;margin:0;text-align:center}
#referenciak .references-head>p{max-width:52rem;margin:1.5rem auto 0;text-align:center}
@media(min-width:901px){#referenciak .references-head h2,#referenciak .references-head>p{width:100%;max-width:none;white-space:nowrap}}
@media(max-width:760px){#referenciak .references-head{margin-bottom:3rem}#referenciak .references-head>p{margin-top:1.25rem}}

/* Világos, meleg ajánlatkérő panel saját belső fejléccel. */
.quote-form{background:#f7f6f2}
.quote-form-intro{text-align:center;margin:0 auto 2.25rem}
.quote-form-intro h3{margin:0;color:var(--ink);font-family:var(--serif);font-size:1.7rem;font-weight:650;letter-spacing:-.025em;line-height:1.15}
.quote-form-intro p{max-width:31rem;margin:.8rem auto 0;color:var(--muted);font-size:.88rem;font-weight:600;line-height:1.55}
.quote-form input,.quote-form select,.quote-form textarea{background:#fff}
@media(max-width:760px){.quote-form-intro{margin-bottom:1.8rem}.quote-form-intro h3{font-size:1.45rem}.quote-form-intro p{font-size:.83rem}}
.quote-form>.btn{display:flex;width:max-content;margin-inline:auto}

/* Jobban olvasható felső navigáció a hero képe fölött. */
.site-header:not(.scrolled){background:rgba(5,43,85,.28);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.desktop-nav a{font-size:1.03rem}
.header-cta{background:#dceeff;font-size:.9rem}
.header-cta:hover{background:#fff}

/* Egységes, könnyebben olvasható törzsszöveg-rendszer. */
body{font-size:17px;line-height:1.6}
.hero-lead,
.intro-copy,
.featured-card p,
.service-overlay p,
.service-card p,
.service-strip p,
.technical .tech-card p,
.technical .tech-card.accent p,
#miert-minket .benefit-list p,
.about-copy>p:not(.section-index):not(.kicker),
.process-list p,
#velemenyek .testimonials-head>p{font-size:17px;line-height:1.6}
.intro-copy,
#termekek .section-heading>p,
.technical .technical-head>p:last-child,
.benefits-copy>p:last-child,
#referenciak .references-head>p,
.quote-copy>p:not(.kicker){font-size:18px;line-height:1.6}
#velemenyek .testimonial-card p{font-size:18px;line-height:1.6}
#velemenyek .testimonial-card small,
#velemenyek .testimonial-card-accent small,
.quote-location small,
.form-error,
.form-success,
.footer-grid small,
.footer-grid nav,
.footer-bottom{font-size:15px;line-height:1.55}
.quote-form label:not(.consent)>span{font-size:15px;line-height:1.5}
.quote-form input,
.quote-form select,
.quote-form textarea{font-size:17px;line-height:1.55}
.consent span{font-size:15px!important;line-height:1.5!important}
.footer-top>p{font-size:17px;line-height:1.6}
@media(max-width:760px){body{font-size:16px}.hero-lead,.intro-copy,.featured-card p,.service-overlay p,.service-card p,.service-strip p,.technical .tech-card p,.technical .tech-card.accent p,#miert-minket .benefit-list p,.about-copy>p:not(.section-index):not(.kicker),.process-list p,#velemenyek .testimonials-head>p,#velemenyek .testimonial-card p,#termekek .section-heading>p,.technical .technical-head>p:last-child,.benefits-copy>p:last-child,#referenciak .references-head>p,.quote-copy>p:not(.kicker){font-size:16px;line-height:1.58}}
@media(min-width:761px){#miert-minket .benefit-list article,#miert-minket .benefit-list article:first-child,#miert-minket .benefit-list article:nth-child(n+2){height:140px}}

/* Egységes, nagyobb felirat a három fő ajánlatkérő gombon. */
.hero-actions .btn,.about-copy .btn,.quote-form>.btn{font-size:18px;font-weight:700}

/* A hero bevezetője kiemelt szöveg, a másodlagos CTA azonos méretű a fő gombbal. */
.hero .hero-lead{max-width:48rem;font-size:22px;font-weight:500;line-height:1.55}
.hero .text-action{font-size:18px;font-weight:700;line-height:1.4}
@media(max-width:760px){.hero .hero-lead{font-size:18px;line-height:1.55}.hero .text-action{font-size:18px}}

/* A termékkártyák környilai külön alsó sávot kapnak, így nem fedik a leírást. */
#termekek .service-card>div{padding-bottom:6.25rem}
#termekek .service-card a{right:2.5rem;bottom:2rem}
@media(max-width:760px){#termekek .service-card>div{padding-bottom:5.75rem}#termekek .service-card a{right:2rem;bottom:1.75rem}}

/* Több alsó levegő a nagyobb folyamatleírásoknak. */
@media(min-width:761px){#folyamat .process-list li,#folyamat .process-list li:not(:first-child){height:310px}}
