:root{--ink:#142e3d;--navy:#102e43;--navy-deep:#0c2435;--muted:#61717b;--paper:#fafbf9;--mist:#edf3f3;--line:#dbe2e2;--aqua:#c6e3dd;--white:#fff;--radius:8px;--wrap:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}picture{display:block}svg{width:22px;height:22px;flex-shrink:0}h1,h2,h3,p,ol,ul,figure{margin:0}h1,h2,h3{font-weight:650;line-height:1.1;letter-spacing:-.045em}h1{font-size:clamp(2.5rem,5.15vw,4.7rem);font-weight:650}h2{font-size:clamp(2rem,3.2vw,3.05rem)}h3{font-size:1.35rem;letter-spacing:-.025em}p{color:var(--muted)}[hidden]{display:none!important}.wrap{width:min(var(--wrap),calc(100% - 96px));margin-inline:auto}.section{padding-block:104px}.eyebrow{display:block;font-size:.76rem;line-height:1.5;font-weight:700;letter-spacing:.14em;color:var(--navy);margin-bottom:22px}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:.9rem;font-weight:650;line-height:1.5;min-height:44px}.text-link svg{width:19px;transition:transform .2s}.text-link:hover svg{transform:translateX(4px)}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:54px;padding:15px 23px;background:var(--navy);color:#fff;border:1px solid var(--navy);border-radius:5px;font-size:.86rem;line-height:1.4;font-weight:650;transition:background .2s,transform .2s}.button:hover{background:#1c435a;transform:translateY(-1px)}.button.small{min-height:44px;padding:11px 16px;gap:14px;font-size:.8rem}.button svg{width:18px}.button.light{background:var(--white);border-color:var(--white);color:var(--navy)}.button.light:hover{background:var(--aqua);border-color:var(--aqua)}.button.outline{background:transparent;color:var(--navy);border-color:var(--line)}.button.outline:hover{background:var(--mist)}.button:disabled{opacity:.6;cursor:wait;transform:none}.skip-link{position:fixed;z-index:1000;top:-100px;left:20px;background:var(--navy);color:#fff;padding:12px 20px}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #0a887c;outline-offset:5px}::selection{background:#c6e3dd;color:var(--navy)}
/* Navigation */
.site-header{position:sticky;top:0;z-index:100;background:rgba(250,251,249,.97);border-bottom:1px solid var(--line)}.header-inner{height:86px;display:flex;align-items:center;justify-content:space-between;gap:28px}.logo{display:inline-flex;align-items:center;gap:11px;line-height:1.2;white-space:nowrap;font-size:.85rem;font-weight:750;letter-spacing:-.02em;min-height:44px}.logo-mark{position:relative;display:grid;place-items:center;width:34px;height:38px;border-radius:9px 9px 9px 1px;background:var(--navy);color:var(--white);font-size:19px;font-weight:650}.logo small{display:block;font-size:.57rem;letter-spacing:.14em;color:var(--muted);margin-top:5px}.desktop-nav{display:flex;gap:25px;align-items:center;font-size:.81rem;font-weight:600}.desktop-nav a{padding-block:13px}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:#29796d}.header-actions{display:flex;align-items:center;gap:20px}.header-phone{font-size:.8rem;font-weight:650;white-space:nowrap}.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);background:transparent;border-radius:5px;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{width:18px;height:2px;background:var(--navy)}.mobile-menu{background:var(--paper);padding:15px 24px 25px;border-top:1px solid var(--line);max-height:calc(100dvh - 78px);overflow-y:auto}.mobile-menu a{display:flex;align-items:center;min-height:48px;font-size:1rem;border-bottom:1px solid var(--line)}
/* Homepage */
.hero{padding-top:66px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:65px;align-items:center}.hero-copy{padding-block:20px 55px}.hero-copy .eyebrow{font-size:.7rem;letter-spacing:.13em;display:flex;align-items:center;gap:10px;margin-bottom:28px}.status-dot{display:inline-block;width:7px;height:7px;background:#559484;border-radius:50%;flex-shrink:0}.hero h1{font-size:clamp(3rem,4.9vw,4.55rem);line-height:1.05;letter-spacing:-.055em}.hero h1 span{color:#6b858b}.hero-lead{font-size:1.08rem;line-height:1.7;max-width:430px;margin-top:27px}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:32px}.hero-note{display:flex;gap:18px;flex-wrap:wrap;margin-top:32px;font-size:.74rem;color:var(--muted)}.hero-note span{display:flex;align-items:center;gap:6px}.hero-note svg{width:15px;height:15px}.hero-photos{position:relative;min-width:0;align-self:stretch;min-height:555px;padding-left:40px;margin-bottom:48px}.hero-building{height:100%;min-height:555px;overflow:hidden;border-radius:3px 70px 3px 3px}.hero-building img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 45%}.hero-building{position:relative}.photo-index{position:absolute;right:22px;bottom:23px;color:#fff;font-size:.66rem;letter-spacing:.13em;font-weight:650;text-shadow:0 1px 8px #000;background:rgba(12,36,53,.65);padding:7px 10px}.hero-detail{position:absolute;width:215px;left:-40px;bottom:-30px;border:7px solid var(--paper);background:var(--paper);box-shadow:0 10px 35px #0c243518}.hero-detail picture{height:165px;overflow:hidden}.hero-detail img{height:100%;width:100%;object-fit:cover;object-position:center 25%}.hero-detail>span{display:block;font-size:.74rem;line-height:1.5;padding:10px 8px 3px;font-weight:600}.hero-bottom{display:flex;align-items:center;gap:28px;border-top:1px solid var(--line);padding-block:25px;font-size:.68rem;letter-spacing:.13em;font-weight:650;color:var(--muted)}.hero-bottom i{height:3px;width:3px;border-radius:50%;background:#9daeb1}.hero-bottom>a{margin-left:auto;display:grid;place-items:center;width:30px;height:32px;font-size:1.4rem;color:var(--ink)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:48px}.section-heading>p{max-width:345px;font-size:.98rem}.section-heading .eyebrow{margin-bottom:16px}.services{background:#f0f4f2}.service-list{border-top:1px solid #ccd7d3}.service-row{display:grid;grid-template-columns:40px 56px 1fr 52px;align-items:center;gap:25px;padding:28px 8px;border-bottom:1px solid #ccd7d3;transition:background .2s,padding .2s}.service-row:hover{background:#fff;padding-inline:18px}.service-number{font-size:.75rem;color:#768b8e}.service-icon{display:grid;place-items:center;width:48px;height:48px;color:var(--navy);background:#e0ebe7;border-radius:50%}.service-icon svg{width:25px;height:25px}.service-row h3{font-size:1.48rem;margin-bottom:8px}.service-row p{font-size:.9rem;line-height:1.6;max-width:650px}.round-arrow{display:grid;place-items:center;width:43px;height:43px;border:1px solid #c6d3cf;border-radius:50%}.round-arrow svg{width:20px}.approach{background:var(--navy);color:#fff}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:120px}.approach .eyebrow{color:var(--aqua)}.approach h2{font-size:clamp(2.6rem,4vw,3.8rem);margin-bottom:26px}.approach p{color:#c5d2d8;font-size:.98rem}.approach-grid>div>p{max-width:390px}.approach .text-link{margin-top:22px;color:var(--aqua)}.approach-points article{display:flex;gap:24px;border-top:1px solid #ffffff29;padding:29px 0}.approach-points article:last-child{padding-bottom:0}.approach-points article>span{font-size:.74rem;color:#9eb8c2;margin-top:4px}.approach-points h3{font-size:1.3rem;line-height:1.3;margin-bottom:12px}.work-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:26px}.work-item picture{height:350px;overflow:hidden;border-radius:3px}.work-item:first-child picture{height:440px}.work-item:not(:first-child){padding-top:90px}.work-item img{width:100%;height:100%;object-fit:cover;object-position:50% 35%;transition:transform .5s}.work-item:hover img{transform:scale(1.025)}.work-item>div{padding-top:20px}.work-item .eyebrow{font-size:.67rem;margin-bottom:10px}.work-item h3{font-size:1.4rem;margin-bottom:12px}.work-item p{font-size:.88rem}.work-bottom{display:flex;justify-content:space-between;gap:25px;align-items:center;border-top:1px solid var(--line);padding-top:24px;margin-top:44px;font-size:.87rem}.brand-strip{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-block:36px;gap:35px}.brand-strip>span{font-size:.67rem;font-weight:650;letter-spacing:.12em;max-width:230px;color:var(--muted)}.brand-strip>div{display:flex;align-items:center;gap:60px}.brand-strip img{object-fit:contain;width:auto;max-width:145px;height:32px}.brand-strip img:nth-child(2){height:38px;max-width:120px}.process{background:#eef3f3}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px}.process-grid article{border-top:1px solid #b9cbcd;padding-top:20px}.process-grid article>span{display:block;font-size:.77rem;color:#6d888c;margin-bottom:32px}.process-grid h3{font-size:1.22rem;margin-bottom:14px;line-height:1.3}.process-grid p{font-size:.89rem}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.journal-card{display:flex;flex-direction:column;padding-block:25px 18px;border-top:2px solid var(--navy);min-width:0}.journal-card:hover h3{color:#3b7e73}.journal-category{font-size:.67rem;letter-spacing:.13em;color:var(--muted);font-weight:650;margin-bottom:28px}.journal-card h3{font-size:1.5rem;line-height:1.2;margin-bottom:18px}.journal-card p{font-size:.88rem;line-height:1.65;margin-bottom:20px}.journal-card .text-link{margin-top:auto;justify-content:space-between;padding-top:10px}.faq{border-top:1px solid var(--line)}.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px}.faq-grid>div>p{margin-top:25px;font-size:.93rem}details{border-top:1px solid var(--line);padding-block:20px}details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;cursor:pointer;font-size:1.02rem;font-weight:600;line-height:1.5}summary::-webkit-details-marker{display:none}summary>span{font-size:1.5rem;font-weight:400;transition:transform .2s}details[open] summary>span{transform:rotate(45deg)}details>p{padding:17px 35px 0 0;font-size:.94rem}.contact{background:var(--navy);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.contact .eyebrow{color:var(--aqua)}.contact h2{font-size:clamp(2.6rem,4.3vw,4.1rem)}.contact-grid>div>p{color:#c5d2d8;font-size:1.05rem;margin-bottom:27px;max-width:440px}.contact-direct{margin-top:35px;display:flex;flex-direction:column;gap:7px}.contact-direct>a:first-child{font-size:1.55rem;font-weight:600;letter-spacing:-.02em}.contact-direct>a:nth-child(2){font-size:.95rem;color:#e0ebed}.contact-direct span{font-size:.8rem;color:#a3b8c3;margin-top:7px}
/* Shared inner pages */
.page-hero{padding-block:36px 76px;background:var(--mist)}.page-hero.compact{padding-block:65px}.page-hero .lead{font-size:1.08rem;line-height:1.7;max-width:690px;margin-top:26px}.page-hero .button,.page-hero>.wrap>.text-link{margin-top:28px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:.77rem;color:var(--muted);margin-bottom:48px}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.service-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:center}.service-hero-grid h1{font-size:clamp(2.6rem,4.4vw,4.1rem)}.questions-panel{border-left:1px solid #b9cacc;padding:12px 0 12px 38px}.questions-panel h2{font-size:1.55rem;margin-block:20px}.questions-panel ol{padding-left:20px;font-size:.9rem;color:var(--muted)}.questions-panel li{padding:8px 0 8px 5px}.service-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:100px}.prose p{font-size:1.02rem;line-height:1.85}.prose>section{margin-bottom:40px}.prose h2{font-size:1.9rem;line-height:1.2;margin-bottom:18px}.prose h3{font-size:1.3rem;margin-block:25px 12px}.service-sidebar>div{padding:28px;background:var(--mist);margin-bottom:20px}.service-sidebar h2{font-size:1.5rem;line-height:1.2}.service-sidebar .eyebrow{font-size:.65rem}.check-list{list-style:none;padding:0;margin-block:23px}.check-list li{display:flex;gap:9px;font-size:.87rem;line-height:1.55;margin-block:12px}.check-list svg{width:17px;height:22px}.service-sidebar .text-link{font-size:.81rem}.sidebar-contact h3{font-size:1.3rem;margin-bottom:17px}.sidebar-contact>a:first-of-type{font-size:1.15rem;font-weight:650}.sidebar-contact p{font-size:.8rem;margin-block:8px 15px}.sidebar-contact>a:last-child{font-size:.85rem;font-weight:600;text-decoration:underline}.service-faq{padding-top:10px}.service-faq h2{margin-bottom:25px}.cta-band{background:var(--navy);color:#fff;padding-block:65px}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:50px}.cta-band .eyebrow{color:var(--aqua)}.cta-band h2{font-size:2.4rem}.cta-band p{color:#c5d2d8;max-width:600px;margin-top:20px}.cta-band .button{flex-shrink:0}.article-shell{max-width:900px;padding-block:45px 90px}.article-header{padding-bottom:36px;border-bottom:1px solid var(--line);margin-bottom:40px}.article-header h1{font-size:clamp(2.3rem,4.8vw,3.9rem);line-height:1.1}.article-header .eyebrow{font-size:.76rem}.article-header .lead{margin-top:27px;font-size:1.16rem;line-height:1.7}.meta{display:flex;flex-wrap:wrap;gap:15px;margin-top:25px;font-size:.8rem;color:var(--muted)}.tag{color:var(--muted)}.article-body{max-width:760px}.article-body section{margin-bottom:36px}.article-body h2{font-size:1.75rem;line-height:1.25;margin-bottom:17px}.article-body h3{font-size:1.25rem;line-height:1.3;margin-block:25px 12px}.article-body p,.article-body li{line-height:1.85;font-size:1.04rem;color:var(--muted)}.article-body ul,.article-body ol{padding-left:25px;margin-block:15px}.article-body li{margin-block:8px}.article-cta{margin-block:45px;background:var(--mist);padding:32px;border-left:3px solid #538a7c}.article-cta h2{font-size:1.65rem}.article-cta p{font-size:.98rem}.article-cta>a{display:inline-flex;align-items:center;min-height:44px;color:var(--navy);font-weight:650;margin-top:16px;text-decoration:underline;text-underline-offset:4px}.related{display:flex;flex-direction:column;gap:10px}.related a{display:block;padding:14px 18px;border:1px solid var(--line);font-size:.92rem}.related a:hover{background:var(--mist)}.article-photo{height:350px;overflow:hidden;margin-block:25px 35px}.article-photo img{width:100%;height:100%;object-fit:cover}.editor-note{border-left:3px solid #809e98;padding:18px 22px;background:#edf3f0;margin:24px 0}.editor-note p{font-size:.95rem}.catalog-tools{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:45px;padding-bottom:30px;border-bottom:1px solid var(--line)}.catalog-tools label{max-width:650px;flex:1;font-size:.85rem;font-weight:600}.catalog-tools p{font-size:.9rem;white-space:nowrap}.catalog-tools input{display:block;width:100%;padding:15px;margin-top:12px;border:1px solid #b8c9c9;border-radius:4px;background:white;color:var(--ink)}.catalog-grid{row-gap:45px}.legal-shell .page-head h1,.legal-shell .article-header h1{font-size:clamp(2rem,4vw,3.5rem)}.legal-shell h1{margin-bottom:24px}.legal-shell h2{font-size:1.65rem;margin-top:38px;margin-bottom:17px}.legal-shell h3{font-size:1.25rem}.legal-shell p,.legal-shell li{color:var(--muted);line-height:1.8}.legal-shell .lead{font-size:1.1rem}.legal-shell .toc{display:flex;flex-wrap:wrap;gap:10px 20px;margin-block:30px;font-size:.9rem}.legal-shell table{width:100%;border-collapse:collapse;display:block;overflow:auto;margin-block:24px;font-size:.9rem}.legal-shell th,.legal-shell td{text-align:left;vertical-align:top;padding:13px;border:1px solid var(--line);min-width:120px}.legal-shell a:not(.button){text-decoration:underline;text-underline-offset:3px}.legal-shell button{border:1px solid var(--line);background:var(--navy);color:white;padding:12px 20px;margin-block:15px;border-radius:4px}
/* Forms */
.quote-section{padding-top:65px}.quote-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.75fr);gap:85px}.quote-form h2{font-size:1.8rem}.form-help{font-size:.83rem;line-height:1.65;margin:12px 0 23px}.quote-form label{display:block;font-size:.88rem;line-height:1.5;font-weight:600;color:var(--ink);margin-bottom:22px}.quote-form label>span:not(.privacy-check span){color:var(--muted)}.quote-form input:not([type=checkbox]),.quote-form textarea,.quote-form select{display:block;width:100%;min-width:0;min-height:51px;padding:13px 14px;border:1px solid #bfcfce;border-radius:4px;background:#fff;color:var(--ink);font-size:1rem;font-weight:400;line-height:1.5;margin-top:9px}.quote-form textarea{resize:vertical}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#7a898f;font-size:.91rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 23px}.quote-form .privacy-check{display:flex;align-items:flex-start;gap:12px;font-size:.84rem;font-weight:400;margin-top:25px}.privacy-check input{width:19px;height:19px;flex-shrink:0;margin:2px 0 0;accent-color:var(--navy)}.privacy-check a{text-decoration:underline;text-underline-offset:3px}.spam-field{position:absolute;left:-99999px;width:1px;height:1px;overflow:hidden}.form-error{color:#a92e27;font-size:.9rem;margin:10px 0}.form-fallback{padding:17px;background:#fff2ed;margin-bottom:20px;font-size:.87rem}.form-fallback a{text-decoration:underline}.service-context{color:var(--navy);font-weight:650;background:var(--mist);padding:12px 16px;margin-block:20px;font-size:.89rem}.quote-aside{border-left:1px solid var(--line);padding-left:38px}.quote-aside ol{padding-left:23px}.quote-aside li{padding-left:8px;margin-bottom:26px}.quote-aside li strong{font-size:.95rem}.quote-aside li p{font-size:.87rem;margin-top:8px}.aside-direct{margin-block:38px;padding-top:27px;border-top:1px solid var(--line)}.aside-direct>span{font-size:.83rem;display:block;color:var(--muted);margin-bottom:12px}.aside-direct>a{display:block;font-size:1.25rem;font-weight:650}.aside-direct p{font-size:.8rem;margin-block:6px 15px}.aside-direct a.email-direct{font-size:.88rem;font-weight:500;overflow-wrap:anywhere}.quote-aside>.text-link{font-size:.86rem}.form-success{background:var(--mist);padding:45px;border-top:3px solid #63958a}.form-success>span{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#d0e5df;margin-bottom:25px;font-size:1.6rem}.form-success h2{font-size:2.1rem}.form-success p{margin-block:20px}.form-success a:not(.button){text-decoration:underline}.planner-wrap{max-width:780px}.planner-progress{display:flex;align-items:center;gap:28px;margin-bottom:40px;font-size:.83rem;font-weight:650}.planner-progress>span{white-space:nowrap}.planner-progress progress{appearance:none;height:5px;width:100%;border:0;flex:1;background:#dce7e3}.planner-progress progress::-webkit-progress-bar{background:#dce7e3}.planner-progress progress::-webkit-progress-value{background:var(--navy)}.planner-progress progress::-moz-progress-bar{background:var(--navy)}.quote-form fieldset{margin:0 0 25px;padding:0;border:0;min-width:0}.quote-form legend{font-size:1.9rem;line-height:1.2;font-weight:600;letter-spacing:-.03em;margin-bottom:30px}.planner-controls{display:flex;gap:15px;justify-content:space-between;margin-top:30px}.planner-controls>.button:only-child{margin-left:auto}.planner-summary{background:var(--mist);padding:20px;margin:15px 0;font-size:.9rem}.planner-summary strong{display:block;margin-bottom:8px}.planner-summary p{font-size:.9rem}.planner-section{padding-top:60px}
/* Footer */
.site-footer{background:#f0f3f1;border-top:1px solid var(--line);padding-top:60px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:75px;padding-bottom:50px}.footer-top>div>p{font-size:.84rem;margin-top:18px}.footer-top h2{font-size:1.15rem;letter-spacing:-.02em;margin-bottom:20px}.footer-top>div>a:not(.logo){display:block;font-size:.85rem;margin-bottom:8px}.footer-top .footer-phone{font-size:1.35rem!important;font-weight:600}.footer-bottom{border-top:1px solid #d0dbd6;display:flex;justify-content:space-between;align-items:center;gap:40px;padding-block:25px}.footer-bottom p{font-size:.76rem;line-height:1.7}.footer-bottom p span{color:#75858a}.footer-bottom>div{display:flex;gap:18px;flex-wrap:wrap;font-size:.76rem;color:var(--muted)}.footer-bottom button{border:0;background:transparent;color:inherit;padding:0;font-size:inherit;text-align:left}
/* Breakpoints: layouts collapse without hiding useful content. */
@media(min-width:1500px){.hero-grid{gap:90px}.hero-photos{min-height:600px}.hero-building{min-height:600px}}
@media(max-width:1180px){.desktop-nav{gap:17px}.header-phone{display:none}.hero-grid{gap:35px}.hero-actions{gap:16px}.hero h1{font-size:4.2rem}.approach-grid{gap:70px}.service-layout{gap:55px}.contact-grid{gap:70px}.quote-layout{gap:45px}}
@media(max-width:960px){.wrap{width:calc(100% - 56px)}.header-inner{height:76px}.desktop-nav{display:none}.menu-toggle{display:flex}.section{padding-block:75px}.hero{padding-top:45px}.hero-grid{gap:25px;grid-template-columns:1.1fr 1fr}.hero-copy{padding-bottom:35px}.hero h1{font-size:3.35rem}.hero-photos{min-height:470px;padding-left:10px}.hero-building{min-height:470px}.hero-detail{left:-15px;width:170px}.hero-detail picture{height:135px}.hero-actions{align-items:flex-start;flex-direction:column;gap:9px}.hero-lead{font-size:1rem}.hero-note{font-size:.73rem;gap:7px}.hero-bottom{gap:18px;font-size:.63rem}.section-heading{gap:35px}.section-heading>p{max-width:290px;font-size:.91rem}.service-row{grid-template-columns:25px 45px 1fr 43px;gap:20px}.approach-grid{gap:45px}.work-grid{gap:20px}.work-item picture{height:280px}.work-item:first-child picture{height:350px}.work-item:not(:first-child){padding-top:70px}.brand-strip>div{gap:35px}.brand-strip img{max-width:115px;height:25px}.brand-strip img:nth-child(2){max-width:100px;height:32px}.process-grid{gap:23px}.process-grid h3{font-size:1.1rem}.journal-grid{gap:23px}.journal-card h3{font-size:1.25rem}.faq-grid{gap:45px}.contact-grid{gap:55px}.service-hero-grid{gap:35px;grid-template-columns:1.3fr .7fr}.questions-panel{padding-left:25px}.service-layout{grid-template-columns:minmax(0,1fr) 260px;gap:40px}.service-sidebar>div{padding:22px}.footer-top{gap:35px}.quote-layout{grid-template-columns:1.3fr .7fr;gap:35px}.quote-aside{padding-left:25px}}
@media(max-width:960px){h1{font-size:2.8rem}h2{font-size:2.3rem}.wrap{width:calc(100% - 40px)}.section{padding-block:59px}.header-inner{gap:10px}.logo{font-size:.75rem;gap:8px}.logo small{font-size:.51rem}.logo-mark{width:31px;height:34px;font-size:18px}.header-actions{gap:10px}.button.small{padding-inline:12px;font-size:.76rem;gap:8px}.button.small svg{width:16px}.hero{padding-top:32px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding-block:0 35px}.hero-copy .eyebrow{font-size:.63rem;letter-spacing:.1em;margin-bottom:22px}.hero h1{font-size:clamp(2rem,8.6vw,4.1rem);line-height:1.05}.hero-lead{margin-top:22px;font-size:1.02rem;max-width:470px}.hero-actions{flex-direction:row;align-items:center;gap:20px;margin-top:26px}.hero-actions .text-link{font-size:.82rem;gap:8px}.hero-note{margin-top:23px;gap:15px;font-size:.73rem}.hero-photos{min-height:380px;height:380px;padding-left:45px;margin-bottom:35px}.hero-building{min-height:380px;border-top-right-radius:45px}.hero-building img{object-position:50% 62%}.hero-detail{width:145px;left:0;bottom:-14px;border-width:5px}.hero-detail picture{height:125px}.hero-detail>span{font-size:.67rem;padding:8px 5px 3px}.photo-index{font-size:.6rem;right:12px;bottom:17px}.hero-bottom{gap:12px;font-size:.55rem;padding-block:21px;letter-spacing:.06em}.hero-bottom i{width:2px;height:2px}.hero-bottom>a{width:20px;font-size:1.2rem}.section-heading{display:block;margin-bottom:32px}.section-heading>p{max-width:470px;margin-top:22px;font-size:.95rem}.section-heading>.text-link{margin-top:15px}.eyebrow{font-size:.7rem;margin-bottom:17px}.service-row{grid-template-columns:35px 1fr 35px;gap:13px;padding:24px 0}.service-number{display:none}.service-icon{width:34px;height:34px}.service-icon svg{width:21px;height:21px}.service-row h3{font-size:1.28rem}.service-row p{font-size:.85rem}.round-arrow{width:33px;height:33px}.round-arrow svg{width:17px}.service-row:hover{padding-inline:0}.approach-grid{grid-template-columns:1fr;gap:40px}.approach h2{font-size:2.8rem}.approach-grid>div>p{max-width:500px}.approach-points article{padding-block:23px}.approach-points h3{font-size:1.25rem}.approach p{font-size:.95rem}.work-grid{grid-template-columns:1fr;gap:35px}.work-item:not(:first-child){padding-top:0}.work-item picture,.work-item:first-child picture{height:360px}.work-item:first-child picture img{object-position:50% 58%}.work-item:nth-child(2) picture img{object-position:50% 22%}.work-item h3{font-size:1.5rem}.work-item .eyebrow{font-size:.7rem}.work-item p{font-size:.94rem}.work-bottom{display:block;margin-top:30px}.work-bottom .text-link{margin-top:8px}.brand-strip{align-items:flex-start;flex-direction:column;gap:22px;padding-block:30px}.brand-strip>span{max-width:none;font-size:.64rem}.brand-strip>div{width:100%;justify-content:space-between;gap:20px}.brand-strip img{max-width:100px;height:23px}.brand-strip img:nth-child(2){height:28px;max-width:90px}.process-grid{grid-template-columns:1fr 1fr;gap:30px 25px}.process-grid article>span{margin-bottom:20px}.process-grid h3{font-size:1.2rem}.process-grid p{font-size:.9rem}.journal-grid{grid-template-columns:1fr;gap:25px}.journal-card{padding-top:20px}.journal-category{margin-bottom:20px}.journal-card h3{font-size:1.65rem;max-width:550px}.journal-card p{font-size:.95rem}.journal-card .text-link{margin-top:0}.faq-grid{grid-template-columns:1fr;gap:30px}.faq-grid>div>p{font-size:.92rem;margin-top:20px}summary{font-size:1rem}.contact-grid{grid-template-columns:1fr;gap:28px}.contact h2{font-size:2.9rem}.contact-grid>div>p{font-size:1rem}.contact-direct>a:first-child{font-size:1.7rem}.page-hero{padding-block:27px 45px}.page-hero.compact{padding-block:42px}.page-hero h1{font-size:clamp(2.3rem,7.3vw,3.4rem)}.page-hero .lead{font-size:1rem;margin-top:23px}.breadcrumbs{margin-bottom:30px;font-size:.72rem;gap:8px}.service-hero-grid{grid-template-columns:1fr;gap:35px}.service-hero-grid h1{font-size:clamp(2.35rem,7.4vw,3.5rem)}.questions-panel{border-left:0;border-top:1px solid #c2d0d0;padding:25px 0 0;display:grid;grid-template-columns:35px 1fr;gap:0 16px}.questions-panel .service-icon{grid-column:1;grid-row:1}.questions-panel h2{font-size:1.4rem;margin:4px 0 15px;grid-column:2}.questions-panel ol{grid-column:2;font-size:.88rem}.questions-panel li{padding-block:5px}.service-layout{grid-template-columns:1fr;gap:20px}.service-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service-sidebar>div{margin:0}.service-sidebar h2{font-size:1.4rem}.prose h2{font-size:1.7rem}.prose p{font-size:1rem}.cta-inner{display:block}.cta-band h2{font-size:2.1rem}.cta-band p{font-size:.96rem}.cta-band .button{margin-top:25px}.article-shell{padding-top:30px;padding-bottom:60px}.article-header h1{font-size:2.45rem}.article-header .lead{font-size:1.07rem}.article-body h2{font-size:1.6rem}.article-body p,.article-body li{font-size:1rem}.article-cta{padding:23px}.catalog-tools{display:block}.catalog-tools label{display:block;max-width:none}.catalog-tools p{margin-top:18px;font-size:.85rem}.catalog-tools input{font-size:.92rem}.catalog-grid{gap:25px}.quote-section{padding-top:40px}.quote-layout{grid-template-columns:1fr;gap:45px}.quote-aside{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.quote-aside ol{padding-left:21px}.form-grid{gap:0 18px}.quote-form label{font-size:.88rem}.form-success{padding:30px}.planner-section{padding-top:35px}.quote-form legend{font-size:1.65rem}.planner-progress{gap:18px}.footer-top{grid-template-columns:1fr 1fr;gap:35px}.footer-top>div:first-child{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;align-items:center}.footer-top>div:first-child>p{margin:0;font-size:.8rem;text-align:right}.footer-top h2{font-size:1.05rem}.footer-top .footer-phone{font-size:1.1rem!important}.footer-top>div>a:not(.logo){font-size:.8rem;overflow-wrap:anywhere}.footer-bottom{display:block;padding-block:22px}.footer-bottom>div{margin-top:20px;gap:13px 18px;font-size:.78rem}.site-footer{padding-top:40px}.footer-bottom p{font-size:.77rem}}
@media(max-width:430px){.wrap{width:calc(100% - 36px)}.header-actions .button.small svg{display:none}.header-actions .button.small{font-size:.74rem;padding-inline:11px}.header-actions{gap:7px}.logo{font-size:.65rem;gap:7px}.logo small{font-size:.46rem;letter-spacing:.1em}.logo-mark{width:28px;height:32px}.menu-toggle{width:40px;height:42px}.hero-actions{gap:16px;flex-wrap:wrap}.hero-actions .button{padding-inline:18px;gap:15px}.hero-note{gap:10px;font-size:.69rem}.hero-photos{height:340px;min-height:340px;padding-left:38px}.hero-building{min-height:340px}.hero-detail{width:135px}.hero-detail picture{height:115px}.hero-bottom{gap:8px;font-size:.52rem}.hero-bottom i{display:none}.form-grid{grid-template-columns:1fr}.service-sidebar{grid-template-columns:1fr}.service-row{gap:11px}.work-item picture,.work-item:first-child picture{height:340px}.brand-strip img{max-width:95px}.brand-strip img:nth-child(2){max-width:80px}.process-grid{gap:28px 20px}.process-grid h3{font-size:1.08rem}.footer-top{gap:30px 20px}.footer-top>div:first-child{display:block}.footer-top>div:first-child>p{text-align:left;margin-top:15px}.quote-form .submit-button{width:100%;gap:15px}.planner-controls{gap:10px;flex-wrap:wrap}.planner-controls>.button{font-size:.81rem;padding:13px 17px}.planner-controls>.submit-button{width:auto;flex:1}.article-header h1{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.cta-band,.button,.skip-link,.ps-cookie-banner{display:none!important}.wrap{width:100%}.section{padding-block:25px}body{background:white;color:black}.page-hero{background:white}.service-layout{display:block}.service-sidebar{display:none}a{text-decoration:underline}.article-shell{max-width:none}}

.hero-copy,.service-hero-grid>div,.quote-layout>div,.faq-grid>div,.approach-grid>div{min-width:0}.article-header h1,.legal-shell h1,.service-hero-grid h1{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:430px){.hero-bottom{flex-wrap:wrap;gap:10px 15px}.hero-bottom>a{min-width:20px}.brand-strip>div{gap:15px}.brand-strip img{max-width:80px;height:20px}.brand-strip img:nth-child(2){max-width:70px;height:23px}}
/* Második, teljes szélességmátrixon végzett ellenőrzés javításai. */
@media(min-width:961px) and (max-width:1180px){.hero h1{font-size:clamp(2.8rem,4.8vw,4.2rem)}}
@media(max-width:430px){.header-inner{width:calc(100% - 24px)}.service-row h3{font-size:1.15rem}}
.article-body h2,.article-body h3,.article-cta h2{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:430px){.article-cta h2{font-size:1.4rem}}

/* 2026-11-04: the existing visual identity, with a tighter content rhythm. */
.section{padding-block:82px}
.hero{padding-top:48px}
.hero-copy{padding-block:15px 36px}
.hero h1{font-size:clamp(2.8rem,4.65vw,4.15rem)}
.hero-lead{max-width:480px;font-size:1rem}
.hero-photos,.hero-building{min-height:510px}
.hero-photos{margin-bottom:42px}
.hero-detail{width:192px}
.hero-detail picture{height:150px}
.hero-note{margin-top:24px}
.assurance-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-block:26px 34px}
.assurance-strip>div{border-left:2px solid #c6e3dd;padding-left:18px;min-width:0}
.assurance-strip strong{font-size:.9rem;font-weight:650;line-height:1.4;display:block}
.assurance-strip p{font-size:.82rem;margin-top:4px}
.approach h2{font-size:clamp(2.1rem,3.5vw,3rem)}
.approach-grid{gap:70px}
.work-item:not(:first-child){padding-top:0}
.work-item picture,.work-item:first-child picture{height:360px}
.work-item:first-child picture img{object-position:50% 45%}
.work-item:nth-child(2) picture img{object-position:50% 25%}
.reviews-section{padding-block:48px;background:#f4f7fa}
.reviews-shell{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;max-width:980px;margin-inline:auto;padding:30px 36px;color:#fff;border:0;border-radius:20px;background:var(--navy);box-shadow:0 22px 55px #0b2f5526}
.google-mark{display:grid;width:58px;height:58px;place-items:center;color:#4285f4;border-radius:16px;background:#fff;font-size:1.7rem;font-weight:900}
.reviews-copy .eyebrow{margin-bottom:5px;color:#b9cbd9}
.reviews-copy h2{margin:0;color:#fff;font-size:clamp(1.6rem,3vw,2.15rem)}
.reviews-copy>p:not(.eyebrow){margin:9px 0 0;color:#d3dfe8;font-size:.8rem}
.review-stars{margin:7px 0 0;color:#f7b928;font-size:.92rem;letter-spacing:.1em}
.review-link{margin:0;white-space:nowrap}
.territory{background:#f0f4f2}
.territory-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.territory-grid article{padding-top:24px;border-top:1px solid #c6d3ce;min-width:0}
.territory-grid h3{font-size:1.65rem}
.territory-grid p{margin-block:16px;font-size:.95rem;max-width:510px}
.territory-grid .text-link{font-size:.88rem}
.inline-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:12px}
.topic-links{padding-left:20px;margin-top:16px}
.topic-links li{margin-block:10px;color:var(--navy)}
.topic-links a{text-decoration:underline;text-decoration-color:#b6c7c4;text-underline-offset:4px}
.service-hero-grid h1{font-size:clamp(2.2rem,3.75vw,3.6rem);line-height:1.12}
.service-hero-grid h1 span{color:#607a80}
.service-hero-grid .eyebrow{font-size:.68rem;letter-spacing:.1em}
.regional-hero h1{max-width:1000px;font-size:clamp(2.2rem,4.3vw,4rem);overflow-wrap:anywhere;hyphens:auto}
.regional-hero .button{margin-top:26px}
.service-sidebar .text-link{display:flex;margin-top:14px}
.service-sidebar p{font-size:.94rem}
.quote-intro.page-hero.compact{padding-block:38px}
.quote-intro h1{font-size:clamp(2.1rem,3.8vw,3.15rem)}
.quote-intro .lead{margin-top:20px}
.quote-section{padding-top:44px}
@media(min-width:961px) and (max-width:1180px){.hero h1{font-size:clamp(2.6rem,4.6vw,3.4rem)}.hero-photos,.hero-building{min-height:500px}.reviews-shell{gap:22px;padding:28px}.review-link{font-size:.8rem;padding-inline:16px}}
@media(max-width:960px){.reviews-shell{grid-template-columns:auto minmax(0,1fr)}.review-link{grid-column:1/-1;width:100%}.hero-photos,.hero-building{min-height:470px}.assurance-strip{gap:20px}.territory-grid{gap:30px}.service-hero-grid h1{font-size:clamp(2.3rem,5.5vw,3.4rem)}}
@media(max-width:640px){.section{padding-block:54px}.hero{padding-top:28px}.hero-copy{padding-block:0 24px}.hero h1{font-size:clamp(2.45rem,8.9vw,3.4rem)}.hero-lead{font-size:.98rem}.hero-photos{height:360px;min-height:360px}.hero-building{min-height:360px}.hero-detail{width:150px}.hero-detail picture{height:120px}.assurance-strip{grid-template-columns:1fr;gap:17px;padding-block:24px 30px}.assurance-strip>div{padding-left:14px}.assurance-strip p{font-size:.85rem}.work-item picture,.work-item:first-child picture{height:330px}.reviews-section{padding-block:34px}.reviews-shell{grid-template-columns:1fr;gap:17px;padding:28px 22px;text-align:center}.google-mark{margin-inline:auto}.reviews-copy>p:not(.eyebrow){font-size:.86rem}.territory-grid{grid-template-columns:1fr;gap:28px}.territory-grid h3{font-size:1.5rem}.territory-grid p{font-size:.95rem}.territory-grid .text-link{font-size:.88rem}.approach h2{font-size:2.35rem}.approach-grid{gap:30px}.service-hero-grid h1{font-size:clamp(2rem,7.5vw,3rem)}.quote-intro.page-hero.compact{padding-block:30px}.quote-section{padding-top:32px}.reviews-copy .eyebrow{font-size:.7rem}.regional-hero h1{font-size:clamp(2rem,7.5vw,2.8rem)}}
@media(max-width:360px){.hero h1{font-size:2.2rem}.hero-detail{width:130px}.review-link{font-size:.8rem;padding-inline:14px}.territory h2{font-size:1.95rem}}
