:root{--navy:#101c2a;--navy-deep:#0b1521;--navy-soft:#213345;--ink:#172332;--muted:#62707d;--line:#dce0e0;--paper:#f5f4f0;--white:#fff;--gold:#cfa56b;--gold-soft:#edd2a8;--gold-dark:#987044;--radius:8px;--wrap:1240px;--shadow:0 20px 50px rgba(16,28,42,.08)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--white);color:var(--ink);font-family:Arial,Helvetica,"Liberation Sans",sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}a:hover{color:var(--gold-dark)}img{display:block;max-width:100%}button,input{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{letter-spacing:-.048em}h1,h2{font-weight:700;line-height:1.08}h1{font-size:clamp(3rem,6vw,6rem)}h2{font-size:clamp(2.5rem,4.3vw,4.6rem)}h3{font-size:clamp(1.35rem,1.65vw,1.9rem)}p{line-height:1.68}::selection{background:var(--gold);color:#13202d}:focus-visible{outline:3px solid #c18b39;outline-offset:4px}
.container{width:min(var(--wrap),calc(100% - 80px));margin:auto}.narrow{max-width:800px}.center{text-align:center}.section{padding:112px 0}.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:700;letter-spacing:.145em;color:var(--gold-dark);text-transform:uppercase;margin-bottom:27px}.eyebrow::before{content:"";width:25px;height:1px;background:currentColor}.light-eyebrow{color:var(--gold-soft)}.section-heading{max-width:850px;margin-bottom:43px}.section-heading h2{max-width:790px;margin-bottom:20px}.section-heading p{font-size:18px;color:var(--muted);max-width:670px}.section-heading h2 span,.about-title h2 span,.terrain-copy h2 span,.faq-layout h2 span,.two-col-section h2 span{color:var(--gold-dark)}
.skip-link{position:absolute;top:-100px;left:12px;z-index:1000;background:white;padding:12px}.skip-link:focus{top:12px}
.btn{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:55px;padding:15px 24px;font-size:14px;font-weight:700;line-height:1.1;letter-spacing:.006em;transition:background .2s,color .2s,border .2s,transform .2s;border-radius:3px;white-space:nowrap}.btn svg,.text-link svg,.header-cta svg,.footer-contact svg{width:18px;height:18px}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--gold);color:var(--navy)}.btn-primary:hover{background:#e4bb82;color:var(--navy)}.btn-outline{border-color:#aeb7bd;color:var(--ink);background:transparent}.btn-outline:hover{border-color:var(--gold-dark);color:var(--navy)}.btn-ghost{color:#fff;background:transparent;border-color:rgba(255,255,255,.26)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold-soft)}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:14px;font-weight:700;color:var(--ink);border-bottom:1px solid var(--gold-dark);padding-bottom:9px;transition:gap .2s}.text-link:hover{color:var(--gold-dark);gap:22px}
.site-header{position:sticky;top:0;z-index:100;background:var(--navy);border-bottom:1px solid rgba(255,255,255,.10)}.header-inner{display:flex;align-items:center;gap:22px;min-height:85px}.logo{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;color:white}.logo:hover{color:white}.logo-symbol{width:38px;height:38px;border:3px solid var(--gold);display:flex;align-items:center;justify-content:center;position:relative;transform:rotate(-45deg)}.logo-symbol span{width:16px;height:16px;border-top:3px solid var(--gold);border-right:3px solid var(--gold);display:block}.logo-symbol::after{content:"";position:absolute;height:3px;width:17px;background:var(--gold);left:-4px;bottom:7px}.logo-wordmark{display:flex;flex-direction:column;font-size:18px;line-height:1.05;font-weight:800;letter-spacing:.055em}.logo-wordmark small{font-size:10px;letter-spacing:.27em;font-weight:700;color:var(--gold);margin-top:5px}.main-nav{display:flex;gap:25px;align-items:center;justify-content:center;flex:1}.main-nav a{font-size:13px;color:#e4e8e8;transition:color .2s;white-space:nowrap}.main-nav a:hover{color:var(--gold-soft)}.header-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;white-space:nowrap;border-bottom:1px solid var(--gold);color:var(--gold-soft);font-size:13px;font-weight:700;padding:12px 0}.header-cta:hover{color:#fff}.menu-toggle{display:none;appearance:none;border:0;background:none;color:#fff;padding:10px;position:relative;z-index:102}.menu-toggle span{display:block;background:var(--gold);height:2px;width:25px;margin:5px 0;transition:transform .2s,opacity .2s}
.hero{background:var(--navy);color:white;min-height:675px;position:relative;overflow:hidden}.hero-grid-overlay{position:absolute;inset:0;pointer-events:none;opacity:.15;background-image:linear-gradient(to right,#a8b6bd 1px,transparent 1px),linear-gradient(to bottom,#a8b6bd 1px,transparent 1px);background-size:110px 110px;mask-image:linear-gradient(to right,transparent 20%,#000 90%)}.hero-layout{display:grid;grid-template-columns:1.1fr .9fr;align-items:stretch;position:relative;min-height:685px}.hero-copy{padding:84px 40px 45px 0;align-self:center;position:relative;z-index:2}.hero-tag{border:1px solid rgba(207,165,107,.35);color:var(--gold-soft);display:inline-flex;gap:10px;align-items:center;font-size:10px;letter-spacing:.17em;font-weight:bold;padding:12px 13px;margin-bottom:41px}.live-dot{width:7px;height:7px;display:inline-block;background:var(--gold);border-radius:50%;box-shadow:0 0 0 4px rgba(207,165,107,.13)}.hero-pretitle{font-size:12px;letter-spacing:.25em;color:var(--gold);font-weight:700;margin:0 0 22px}.hero h1{font-size:clamp(3.5rem,5.2vw,6.1rem);font-weight:700;line-height:1.04;max-width:760px;margin:0 0 27px}.hero h1 em,.cost-left h2 em,.contact-intro h1 em{font-style:normal;color:var(--gold);font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.055em}.hero-description{font-size:17px;line-height:1.67;color:#cdd4d8;max-width:590px;margin:0 0 33px}.hero-buttons{display:flex;gap:15px;flex-wrap:wrap}.hero-bottom-line{display:flex;gap:15px;align-items:center;margin-top:66px;font-size:10px;letter-spacing:.12em;color:#9ca9b5;white-space:nowrap}.hero-bottom-line i{width:3px;height:3px;background:var(--gold);border-radius:50%}.tiny-cross{color:var(--gold);font-size:22px}.hero-visual{position:relative;min-width:0;display:flex;align-items:center;justify-content:center;padding:36px 0 54px}.hero-photo-frame{height:min(580px,100%);width:100%;position:relative;isolation:isolate;border:1px solid rgba(207,165,107,.32);background:#1c3041;overflow:hidden;clip-path:polygon(12% 0,100% 0,100% 89%,88% 100%,0 100%,0 12%)}.hero-photo-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(9,20,30,.26),transparent 60%);pointer-events:none}.hero-photo-frame img{height:100%;width:100%;object-fit:cover}.hero-coordinates{position:absolute;top:58px;right:18px;font-size:11px;letter-spacing:.16em;color:var(--gold-soft);background:rgba(16,28,42,.78);padding:10px 12px;display:flex;gap:16px}.coords-indicator{color:var(--gold)}.hero-visual-label{display:flex;justify-content:space-between;gap:20px;color:#afbdc8;position:absolute;bottom:30px;left:8%;right:0;font-size:10px;letter-spacing:.16em}.hero-visual-label span:first-child{color:var(--gold)}
.about-section{background:var(--paper)}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:start}.about-title h2{max-width:550px}.about-sign{font-family:Georgia,serif;font-style:italic;font-size:20px!important;color:#95784f;line-height:1.55;margin:42px 0 0;padding-left:24px;border-left:2px solid var(--gold)}.about-body{padding-top:54px}.about-body .lead-paragraph{font-size:25px;line-height:1.38;color:var(--ink);font-weight:600;letter-spacing:-.03em;margin-bottom:25px}.about-body p{font-size:16px;color:#596674}.about-body .text-link{margin-top:14px}
.services-section{background:#fff}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{background:var(--paper);display:flex;flex-direction:column;min-width:0;transition:box-shadow .2s,transform .2s}.service-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.service-art{width:100%;aspect-ratio:1.38;background:#dbe0df;overflow:hidden}.service-art img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.service-card:hover .service-art img{transform:scale(1.05)}.service-content{padding:26px 28px 30px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.card-index{font-size:11px;font-weight:bold;color:var(--gold-dark);letter-spacing:.11em;margin-bottom:16px}.service-content h3{font-size:clamp(23px,1.65vw,29px);line-height:1.18;margin-bottom:15px}.service-content p{color:var(--muted);font-size:14px;line-height:1.7;margin-bottom:26px}.service-content .text-link{margin-top:auto}
.terrain-section{background:var(--navy);color:#fff;padding:0}.terrain-layout{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:8%;min-height:580px}.terrain-visual{position:relative;min-height:570px;background:#21313f;margin-left:calc((min(var(--wrap),100vw - 80px) - 100vw) / 2);overflow:hidden}.terrain-visual img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.terrain-caption{position:absolute;left:55px;bottom:45px;background:rgba(15,28,41,.78);padding:14px 18px;letter-spacing:.14em;font-size:10px;display:flex;gap:14px;align-items:center}.cross-mark{color:var(--gold);font-size:22px}.terrain-copy{padding:100px 0 95px;align-self:center}.terrain-copy h2{max-width:540px;margin-bottom:27px}.terrain-copy h2 span{color:var(--gold)}.terrain-copy p{font-size:16px;color:#c4cdd4;margin-bottom:20px}.terrain-copy .btn{color:#fff;border-color:#78838b;margin-top:17px}.terrain-copy .btn:hover{color:var(--navy);background:var(--gold)}
.benefit-section{background:var(--paper)}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d6d8d6;border-left:1px solid #d6d8d6}.benefit-item{padding:37px 32px 35px;min-height:245px;border-right:1px solid #d6d8d6;border-bottom:1px solid #d6d8d6;transition:background .2s}.benefit-item:hover{background:#fff}.benefit-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}.benefit-icon{display:flex;align-items:center;justify-content:center;width:45px;height:45px;background:#e9e0d1;color:#937045}.benefit-icon svg{width:25px;height:25px}.benefit-number{color:#a2a9a9;font-size:12px;font-weight:bold}.benefit-item h3{font-size:21px;margin-bottom:12px}.benefit-item p{font-size:14px;color:var(--muted);margin:0;line-height:1.67}
.cost-section{background:var(--navy);color:white;position:relative;overflow:hidden}.cost-section::before{content:"";position:absolute;left:-250px;top:-200px;width:700px;height:700px;border:1px solid rgba(207,165,107,.13);border-radius:50%;box-shadow:0 0 0 70px rgba(207,165,107,.025),0 0 0 140px rgba(207,165,107,.025),0 0 0 210px rgba(207,165,107,.025);pointer-events:none}.cost-layout{display:grid;grid-template-columns:1fr 440px;gap:10%;align-items:center;position:relative}.cost-left h2{font-size:clamp(3rem,4.6vw,5.2rem);margin-bottom:25px}.cost-left p{color:#ccd5dc;font-size:17px;max-width:480px}.cost-decoration{display:flex;gap:18px;align-items:center;color:#a6b3bd;letter-spacing:.14em;font-size:10px;margin-top:70px}.cost-decoration span:first-child{color:var(--gold)}.cost-line{height:1px;background:var(--gold-dark);width:70px}.cost-card{background:#fff;color:var(--ink);padding:43px 42px 37px;box-shadow:0 18px 60px rgba(0,0,0,.22)}.cost-card-label{font-weight:700;letter-spacing:.15em;font-size:11px;color:var(--gold-dark)}.cost-card h3{font-size:36px;margin:16px 0 11px}.cost-card>p{color:var(--muted);font-size:14px;margin-bottom:25px}
.lead-form{position:relative}.form-fields{display:flex;flex-direction:column;gap:18px}.field{display:flex;flex-direction:column;gap:9px}.field>span{font-weight:bold;font-size:12px;letter-spacing:.035em}.field input{height:55px;width:100%;border:1px solid #d6dbde;border-radius:2px;outline:none;padding:15px;background:#f8f8f6;color:var(--ink);font-size:15px;transition:border .2s,box-shadow .2s}.field input:focus{border-color:var(--gold-dark);box-shadow:0 0 0 3px rgba(207,165,107,.15)}.field input::placeholder{color:#8b959c}.form-consent{display:flex;gap:11px;align-items:flex-start;line-height:1.5;font-size:11px;color:#606e78;margin:18px 0 22px;cursor:pointer}.form-consent input{appearance:auto;accent-color:var(--gold-dark);margin:2px 0 0;flex-shrink:0;width:17px;height:17px}.form-consent a{text-decoration:underline;text-underline-offset:2px;color:var(--ink)}.form-submit{width:100%;justify-content:space-between}.form-message{margin:12px 0 0;color:#257145;font-size:13px;line-height:1.5;min-height:0}.form-message.is-error{color:#a42f27}.form-submit[disabled]{opacity:.6;cursor:progress}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.faq-section{background:#fff}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:10%}.faq-layout h2{font-size:clamp(2.6rem,3.4vw,4rem);margin-bottom:25px}.faq-side-note{font-size:15px;color:var(--muted);max-width:320px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{display:grid;grid-template-columns:35px 1fr 25px;gap:18px;align-items:center;padding:27px 0;cursor:pointer;list-style:none;font-weight:700;font-size:17px;line-height:1.35}.faq-item summary::-webkit-details-marker{display:none}.faq-index{color:var(--gold-dark);font-size:12px}.faq-toggle{font-size:26px;font-weight:300;color:var(--gold-dark);transition:transform .2s}.faq-item[open] .faq-toggle{transform:rotate(45deg)}.faq-answer{padding:0 42px 23px 53px}.faq-answer p{color:var(--muted);font-size:15px;max-width:540px;margin:0}
.site-footer{background:var(--navy-deep);color:#d8dfe4;padding:76px 0 22px}.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:35px}.footer-brand p{font-size:14px;line-height:1.6;color:#a6b3bd;max-width:340px;margin:23px 0 0}.footer-grid h3{font-size:13px;letter-spacing:.06em;margin:5px 0 22px;font-weight:700;color:#fff}.footer-grid>div:not(:first-child)>a{display:block;margin-bottom:17px;font-size:13px;color:#9fabba}.footer-grid>div:not(:first-child)>a:hover{color:var(--gold)}.footer-grid .footer-contact{color:var(--gold-soft)!important;display:inline-flex!important;align-items:center;gap:9px;border-bottom:1px solid var(--gold);padding-bottom:6px}.footer-bottom{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:68px;padding-top:23px;border-top:1px solid #273443;color:#8292a1;font-size:12px}.footer-bottom a:hover{color:var(--gold)}
/* Internal pages */
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:13px;color:#aebac5;font-size:12px;margin-bottom:56px}.breadcrumbs a:hover{color:var(--gold)}.breadcrumbs>span:last-child{color:var(--gold-soft)}.service-hero{background:var(--navy);color:#fff;padding:39px 0 100px;position:relative;overflow:hidden}.service-hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(to right,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.025) 1px,transparent 1px);background-size:82px 82px;pointer-events:none}.service-hero-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:7%;align-items:center;position:relative;z-index:1}.service-hero-layout h1{font-size:clamp(3.2rem,5vw,5.7rem);margin:0 0 24px}.service-hero-layout p{font-size:17px;max-width:650px;color:#cad3da;margin-bottom:30px}.service-hero-visual{overflow:hidden;background:#233345;border:1px solid rgba(207,165,107,.3);aspect-ratio:1.4;position:relative}.service-hero-visual img{width:100%;height:100%;object-fit:cover}.two-col-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:13%}.two-col-section h2{max-width:490px}.two-col-section>div>p{color:var(--muted);max-width:410px}.includes-list{border-top:1px solid var(--line)}.includes-item{display:flex;gap:23px;align-items:center;padding:25px 7px;border-bottom:1px solid var(--line)}.includes-item>span{flex-shrink:0;color:var(--gold-dark);width:34px;height:34px;background:var(--paper);display:flex;align-items:center;justify-content:center}.includes-item svg{width:21px;height:21px}.includes-item p{font-size:17px;margin:0;line-height:1.4;font-weight:600}.process-section{background:var(--paper)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.process-item{border-top:2px solid var(--gold);padding:29px 30px 38px;background:#fff}.process-num{font-size:13px;color:var(--gold-dark);font-weight:700;letter-spacing:.15em}.process-item h3{font-size:25px;margin:35px 0 16px}.process-item p{color:var(--muted);font-size:14px}.related-section{background:#fff}.related-section .service-grid{grid-template-columns:repeat(2,1fr)}
.inner-hero{background:var(--paper);padding:50px 0 90px}.inner-hero h1{font-size:clamp(3.5rem,5vw,5.8rem);max-width:900px;margin-bottom:28px}.inner-hero p{font-size:18px;max-width:690px;color:#64717c}.inner-hero .btn{margin-top:20px}.dark-crumbs{color:#64717c}.dark-crumbs>span:last-child{color:var(--gold-dark)}.contact-section{background:#fff}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%}.contact-info h2{font-size:clamp(2.2rem,3vw,3.4rem)}.contact-info>p{color:var(--muted);max-width:480px}.contact-detail{display:flex;flex-direction:column;border-top:1px solid var(--line);gap:10px;padding:25px 0}.contact-detail:first-of-type{margin-top:32px}.contact-detail>span{font-size:11px;letter-spacing:.15em;color:var(--gold-dark);font-weight:700}.contact-detail>a,.contact-detail strong{font-size:22px;font-weight:700}.contact-note{display:flex;gap:20px;align-items:flex-start;background:var(--paper);padding:28px;margin-top:40px}.contact-note-icon{color:var(--gold-dark);flex-shrink:0}.contact-note-icon svg{width:32px;height:32px}.contact-note p{font-size:14px;color:#62707d;margin:0}.contact-form-wrap{border:1px solid var(--line);background:var(--paper);padding:45px 52px}.contact-form-wrap h2{font-size:40px;margin:0 0 13px}.contact-form-wrap>p{color:var(--muted);font-size:15px;margin-bottom:27px}.contact-form-wrap .field input{background:#fff}.privacy-intro h1{font-size:clamp(3rem,4.5vw,5rem)}.privacy-content{padding-top:65px}.legal-text h2{font-size:25px;letter-spacing:-.025em;margin:35px 0 15px}.legal-text p{color:#4b5a66;font-size:16px}.legal-text a{text-decoration:underline}.setup-warning{padding:25px;border-left:4px solid #ce9e53;background:#fff5e5;color:#765328;line-height:1.6}.setup-warning code,.policy-note{font-size:13px}.policy-note{padding-top:30px;border-top:1px solid var(--line)}
/* Admin */
.admin-login{background:var(--paper);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px}.admin-panel{background:white;padding:50px;max-width:480px;width:100%;box-shadow:var(--shadow)}.admin-panel h1{font-size:40px}.admin-panel .btn{margin-top:25px}.admin-panel p{color:var(--muted)}.back-link{display:block;font-size:13px;color:var(--gold-dark);margin-bottom:28px}.admin-area{background:var(--paper);min-height:100vh;padding:60px 0}.admin-head{display:flex;justify-content:space-between;gap:25px;align-items:flex-end;margin-bottom:35px}.admin-head h1{font-size:55px;margin:0}.muted{color:var(--gold-dark)}.admin-actions{display:flex;gap:12px;align-items:center}.admin-actions form{margin:0}.table-scroll{overflow-x:auto;background:white;border:1px solid var(--line)}.admin-table{border-collapse:collapse;width:100%;min-width:720px;text-align:left}.admin-table th{font-size:12px;letter-spacing:.09em;text-transform:uppercase;background:var(--navy);color:white;padding:19px}.admin-table td{border-top:1px solid var(--line);padding:20px 19px;font-size:14px;vertical-align:top}.admin-table td:nth-child(3) a{color:var(--gold-dark);font-weight:700}.admin-note{font-size:13px;color:var(--muted);margin-top:20px}.alert-error{color:#b43b31!important;background:#fff4f3;padding:14px}
@media(max-width:1130px){.container{width:calc(100% - 56px)}.main-nav{gap:15px}.main-nav a{font-size:12px}.logo-wordmark{font-size:15px}.header-cta{font-size:12px}.hero-layout{grid-template-columns:1.05fr .95fr}.hero h1{font-size:clamp(3.3rem,5.5vw,5.3rem)}.hero-bottom-line{gap:9px;letter-spacing:.05em}.cost-layout{gap:5%}.terrain-layout{gap:5%}.terrain-visual{margin-left:-28px}}
@media(max-width:940px){.section{padding:80px 0}.site-header{position:sticky}.header-inner{min-height:72px}.header-cta{margin-left:auto}.menu-toggle{display:block;order:3}.main-nav{display:none;position:absolute;z-index:100;top:100%;left:0;right:0;padding:18px 28px 28px;background:var(--navy);border-top:1px solid #304052;box-shadow:0 20px 30px rgba(0,0,0,.25);flex-direction:column;align-items:stretch;gap:0}.main-nav.is-open{display:flex}.main-nav a{padding:14px 0;font-size:16px;border-bottom:1px solid #2b3949}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}.hero-layout{grid-template-columns:1.12fr .88fr;min-height:590px}.hero-copy{padding:70px 10px 55px 0}.hero h1{font-size:clamp(3.1rem,5.7vw,4.9rem)}.hero-description{font-size:15px}.hero-bottom-line{display:none}.hero-visual{padding:28px 0 42px}.hero-photo-frame{height:450px}.hero-visual-label{font-size:9px}.service-grid{gap:15px}.service-content{padding:23px 20px}.service-content h3{font-size:23px}.terrain-layout{gap:7%}.terrain-copy{padding:70px 0}.terrain-visual{min-height:520px}.benefit-item{padding:30px 23px}.cost-layout{grid-template-columns:1fr 420px;gap:35px}.cost-card{padding:34px}.faq-layout{gap:5%}.footer-grid{grid-template-columns:1.4fr 1fr 1fr;row-gap:35px}.footer-grid>div:last-child{grid-column:2 / span 2}.service-hero-layout{gap:4%}.service-hero-visual{aspect-ratio:1.15}}
@media(max-width:740px){html{scroll-padding-top:70px}.container{width:calc(100% - 40px)}.section{padding:70px 0}.eyebrow{margin-bottom:20px}.site-header .header-cta{display:none}.logo-wordmark{font-size:15px}.header-inner{justify-content:space-between}.hero{min-height:0}.hero-layout{display:flex;flex-direction:column}.hero-copy{padding:65px 0 30px}.hero-tag{margin-bottom:25px}.hero h1{font-size:clamp(3.1rem,10.5vw,5rem)}.hero-description{max-width:620px}.hero-visual{padding:10px 0 50px}.hero-photo-frame{height:390px;max-width:100%}.hero-coordinates{top:30px}.hero-visual-label{bottom:22px}.about-layout,.terrain-layout,.cost-layout,.faq-layout,.two-col-section,.contact-layout,.service-hero-layout{grid-template-columns:1fr;gap:34px}.about-body{padding-top:0}.about-sign{margin-top:30px}.service-grid{grid-template-columns:1fr}.service-card{display:grid;grid-template-columns:.43fr .57fr;align-items:stretch}.service-art{height:100%;aspect-ratio:auto}.service-content{padding:24px}.service-content h3{font-size:24px}.service-content p{font-size:13px}.terrain-visual{margin:0 -20px;min-height:360px}.terrain-copy{padding:20px 0 70px}.terrain-caption{left:22px;bottom:24px}.benefit-grid{grid-template-columns:repeat(2,1fr)}.benefit-item{min-height:230px}.cost-section::before{left:-450px}.cost-left h2{max-width:640px}.cost-decoration{margin-top:35px}.cost-card{max-width:540px}.faq-layout{gap:25px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / span 2}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column;align-items:flex-start;gap:15px;margin-top:50px}.service-hero{padding:25px 0 60px}.service-hero-layout h1{font-size:clamp(3.1rem,9vw,5rem)}.service-hero-visual{aspect-ratio:1.5}.breadcrumbs{margin-bottom:35px}.process-grid{grid-template-columns:1fr}.process-item h3{margin-top:20px}.related-section .service-grid{grid-template-columns:1fr}.contact-form-wrap{padding:32px}.inner-hero{padding:30px 0 70px}.admin-head{flex-direction:column;align-items:flex-start}}
@media(max-width:510px){.container{width:calc(100% - 34px)}.hero-copy{padding-top:43px}.hero h1{font-size:clamp(2.85rem,12vw,4rem)}.hero-tag{font-size:9px;letter-spacing:.11em}.hero-buttons{flex-direction:column;align-items:stretch}.hero-buttons .btn{justify-content:space-between}.hero-photo-frame{height:300px}.hero-coordinates{font-size:9px;gap:6px}.hero-visual-label{font-size:8px}.about-body .lead-paragraph{font-size:22px}.section-heading h2,.about-title h2,.terrain-copy h2,.faq-layout h2{font-size:clamp(2.4rem,10vw,3.5rem)}.service-card{display:flex;flex-direction:column}.service-art{aspect-ratio:1.55}.service-content{padding:24px}.benefit-grid{grid-template-columns:1fr}.benefit-item{min-height:0}.cost-left h2{font-size:clamp(2.7rem,11vw,4rem)}.cost-card{padding:30px 24px}.cost-card h3{font-size:31px}.faq-item summary{grid-template-columns:25px 1fr 22px;gap:10px;font-size:15px;padding:22px 0}.faq-answer{padding-left:35px}.footer-grid{gap:30px 20px}.footer-grid h3{margin-bottom:15px}.footer-grid>div:last-child{grid-column:1 / span 2}.logo-wordmark{font-size:14px}.service-hero-layout h1{font-size:clamp(2.9rem,11.5vw,4rem)}.service-hero-visual{aspect-ratio:1.33}.process-item{padding:26px}.contact-form-wrap{padding:27px 22px}.contact-form-wrap h2{font-size:33px}.inner-hero h1{font-size:clamp(2.9rem,11.5vw,4rem)}.admin-panel{padding:30px 22px}.admin-actions{flex-direction:column;align-items:stretch;width:100%}.admin-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Бренд: оригинальный логотип из фирменного КП. */
.logo-symbol{width:40px;height:42px;border:0;transform:none;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.logo-symbol::after,.logo-symbol>span{display:none!important}.logo-symbol img{width:38px;height:40px;display:block;object-fit:contain}.site-header .logo,.site-footer .logo{gap:12px}.hero-copy{padding-top:76px}.hero-pretitle{margin-bottom:28px}.hero h1{max-width:750px}.hero-visual{padding-bottom:30px}.hero-photo-frame{height:min(590px,100%)}.about-title h2{margin-bottom:0}.cost-left h2{margin-top:0}.section-heading p:empty{display:none}
@media(max-width:740px){.hero-copy{padding-top:54px}.hero-photo-frame{height:390px}}


/* Объекты, каталог и подробные направления работ */
.all-services-link{display:flex;justify-content:center;margin-top:45px}
.price-mini{margin-top:13px;padding:12px 18px;align-self:flex-start;font-size:12px;min-height:0;width:max-content;max-width:100%;gap:15px}
.price-mini svg{width:15px;height:15px}.service-content{display:flex;flex-direction:column;align-items:flex-start}
.portfolio-section{background:#f4f3ef}.portfolio-section .section-heading{max-width:890px}
.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.project-card{background:#fff;overflow:hidden;border:1px solid var(--line);display:flex;flex-direction:column}
.project-cover{display:block;overflow:hidden;aspect-ratio:1.35;background:#dae1de}
.project-cover img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.project-cover:hover img{transform:scale(1.045)}
.project-card-content{padding:28px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.project-kind{font-size:11px;color:var(--gold-dark);font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.project-card h3{margin:16px 0 13px;font-size:clamp(20px,2vw,26px);line-height:1.23}
.project-card p{font-size:14px;color:var(--muted);margin:0 0 15px}.project-card .text-link{margin-top:auto}
.project-card .project-client{font-weight:700;color:var(--navy)}
.project-feature-list{display:grid;gap:64px}.project-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:6%;align-items:center;scroll-margin-top:90px;padding-bottom:55px;border-bottom:1px solid var(--line)}
.project-feature:nth-child(even) .project-feature-photos{order:2}
.project-feature-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.project-feature-photos img{width:100%;height:340px;object-fit:cover;background:#d8ddda}
.project-feature-photos img:only-child{grid-column:span 2;height:410px}
.project-feature h2{font-size:clamp(30px,3.3vw,50px);line-height:1.13;margin:0 0 23px}
.project-feature p{font-size:16px;color:var(--muted)}.project-feature .project-client{color:var(--navy);margin-bottom:16px}
.project-feature .btn{margin-top:18px}
.variants-section{background:#f5f4f0}.variants-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.variant-item{border:1px solid #deded8;background:#fff;padding:28px;display:flex;flex-direction:column;align-items:start;justify-content:space-between;min-height:206px;gap:25px}
.variant-item h3{font-size:22px;margin:0 0 11px;line-height:1.2}
.variant-item p{font-size:14px;color:var(--muted);margin:0}
.variant-item .btn{min-height:0;padding:12px 20px;gap:14px;font-size:12px}.variant-item svg{width:16px;height:16px}
.consult-note{margin-top:35px;padding:18px 24px;background:#fff6e7;border-left:3px solid var(--gold);font-size:14px;color:#605342}
.catalog-notice{padding-top:30px;padding-bottom:50px;background:var(--paper)}.catalog-notice p{color:var(--muted);font-size:14px}
@media(max-width:940px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-feature{gap:4%}.project-feature-photos img{height:270px}.project-feature-photos img:only-child{height:340px}}
@media(max-width:740px){.projects-grid,.variants-grid,.project-feature{grid-template-columns:1fr}.project-feature:nth-child(even) .project-feature-photos{order:0}.project-feature{gap:23px}.project-feature-photos img{height:320px}.project-feature-photos img:only-child{height:340px}.project-feature-list{gap:40px}.project-card-content{padding:23px}}
@media(max-width:510px){.project-feature-photos img{height:220px}.project-feature-photos img:only-child{height:300px}.project-feature h2{font-size:30px}.variant-item{padding:22px;min-height:0}}


/* Калькулятор для запроса индивидуальной стоимости */
.calc-intro{background:#f3f1eb}.calc-intro h1{max-width:870px}.calc-intro h1 em{font-style:normal;color:var(--gold-dark)}.calc-intro p{max-width:780px}
.calc-section{background:linear-gradient(140deg,#f8f7f3,#eef0ee);padding-top:75px;padding-bottom:100px}
.calculator-layout{display:block}
.calc-main{background:#fff;border:1px solid #e4e4df;padding:42px 48px;box-shadow:0 14px 55px rgba(17,32,42,.05);max-width:960px;margin:0 auto}
.calc-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:30px}
.calc-step{font-size:11px;letter-spacing:.15em;color:var(--gold-dark);font-weight:800}.calc-subtitle{font-size:12px;color:var(--muted)}
.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:27px 23px}
.calc-wide{grid-column:1/-1}.calc-field{display:flex;flex-direction:column;gap:10px;min-width:0;font-size:14px;font-weight:700;color:#1d2c38}
.calc-field>span:first-child{font-size:13px;font-weight:700}
.calc-field select,.calc-field input[type=number],.calc-field input[type=tel]{width:100%;height:55px;padding:0 17px;border:1px solid #c6cfce;border-radius:3px;background:#fff;color:#1c2935;font:400 16px/1.3 Arial,Helvetica,sans-serif;min-width:0}
.calc-field select{appearance:none;padding-right:45px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23987044' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center}
.calc-field select:focus,.calc-field input:focus{outline:2px solid #cfa56b;outline-offset:2px}
.calc-quantity{display:flex;gap:12px;align-items:center}.calc-quantity input{flex:1}.calc-quantity span{min-width:50px;font-size:14px;color:var(--muted);font-weight:400;text-align:right}
.calc-range{width:100%;appearance:none;height:5px;border-radius:10px;background:linear-gradient(to right,#b9905d var(--progress,15%),#e1e5e2 var(--progress,15%));margin:11px 0 0;cursor:pointer}
.calc-range::-webkit-slider-thumb{appearance:none;background:#fff;border:4px solid var(--gold-dark);width:22px;height:22px;border-radius:100%;box-shadow:0 1px 6px #6665}.calc-range::-moz-range-thumb{background:#fff;border:4px solid var(--gold-dark);width:15px;height:15px;border-radius:50%}
.calc-range-labels{display:flex;justify-content:space-between;color:#78858b;font-weight:400;font-size:11px}
.calc-disclaimer,.calc-note{font-size:12px;color:#64727b;margin:27px 0 18px;line-height:1.6}
.calc-submit{width:100%;max-width:420px;justify-content:space-between;margin-top:30px}
.calc-result[hidden],.calc-form[hidden]{display:none!important}
body.calc-modal-open{overflow:hidden}
.calc-modal{position:fixed;inset:0;z-index:2000;background:rgba(11,21,33,.76);display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}
.calc-dialog{position:relative;background:#fff;border-top:5px solid var(--gold);padding:38px 40px 26px;max-width:650px;width:100%;max-height:calc(100dvh - 40px);overflow-y:auto;box-shadow:0 24px 80px rgba(0,0,0,.35)}
.calc-modal-close{position:absolute;top:14px;right:14px;border:0;background:transparent;color:var(--ink);font-size:32px;line-height:1;cursor:pointer;padding:4px 11px}
.calc-dialog h2{font-size:clamp(29px,4vw,43px);margin:16px 0 12px;color:var(--navy)}
.calc-modal-lead{color:var(--ink);line-height:1.55;margin:0 0 14px;font-size:15px}
.calc-result-caption{color:var(--muted);font-size:13px;line-height:1.5;margin-bottom:0;padding:12px 15px;background:#f6f4ef;border-left:3px solid var(--gold)}
.calc-contact{margin-top:18px;padding:0;background:none;border:0}.calc-contact .calc-field{max-width:none}.calc-contact .calc-field input{width:100%}
.calc-consent{margin:18px 0 20px}.calc-consent span{font-size:12px;line-height:1.5}.calc-consent a{text-decoration:underline}.calc-reset{margin-top:14px;padding:10px 0;background:none;border:0;color:#926b43;text-decoration:underline;font-weight:700;font-size:14px;cursor:pointer}.calc-lead-form .form-submit{width:100%;max-width:none;justify-content:space-between}
@media(max-width:510px){.calc-modal{padding:10px;align-items:center}.calc-dialog{padding:33px 20px 18px;max-height:calc(100dvh - 20px)}.calc-modal-close{top:10px;right:8px}}
.cost-left>.btn{margin-top:27px}
@media(max-width:1020px){.calc-main{padding:32px}}
@media(max-width:780px){.calc-intro{padding-bottom:55px}.calc-section{padding-top:35px}}
@media(max-width:510px){.calc-main{padding:25px 18px}.calc-grid{grid-template-columns:1fr;gap:22px}.calc-wide{grid-column:auto}.calc-topline{flex-direction:column;align-items:flex-start}.calc-contact{padding:22px 18px}.calc-submit{white-space:normal;text-align:left}}

/* Центрирование вступительного блока на странице контактов. */
.contact-intro .container{text-align:center}
.contact-intro .breadcrumbs{justify-content:center;display:flex;align-items:center;gap:12px}
.contact-intro .eyebrow{display:block}
.contact-intro h1,.contact-intro p{margin-left:auto;margin-right:auto;text-align:center}

/* Разделение крупных и локальных выполненных работ */
.portfolio-group-title{font-size:clamp(27px,3vw,39px);line-height:1.15;letter-spacing:-.04em;margin:0 0 34px;color:var(--navy)}
.portfolio-group-secondary{margin-top:76px;padding-top:46px;border-top:1px solid var(--line)}
@media(max-width:740px){.portfolio-group-title{margin-bottom:28px}.portfolio-group-secondary{margin-top:48px;padding-top:36px}}

/* SEO content: integrated with existing visual language */
.footer-region{font-size:13px;line-height:1.5;color:#aab4bf;max-width:360px;margin-top:10px}
.service-hero-layout h1{font-size:clamp(2.65rem,4.4vw,5rem);overflow-wrap:break-word}
.service-hero-layout .service-region{color:#d9c7a6;font-size:14px;line-height:1.5;margin-top:0}
.seo-service-section{background:#fff;padding-top:66px;padding-bottom:67px}
.seo-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.seo-service-grid article{border-top:2px solid var(--gold);padding-top:27px}
.seo-service-grid .eyebrow{margin-bottom:12px}
.seo-service-grid h2{font-size:clamp(1.65rem,2.7vw,2.5rem);line-height:1.15;margin:0 0 16px}
.seo-service-grid p{max-width:580px;color:var(--muted);line-height:1.7}
.seo-service-note{font-size:13px;color:var(--muted);margin:26px 0 0}
@media(max-width:740px){.seo-service-grid{grid-template-columns:1fr;gap:34px}.seo-service-section{padding-top:50px;padding-bottom:50px}.service-hero-layout h1{font-size:clamp(2.4rem,8vw,4rem)}}

/* Knowledge hub and short answer sections. Shared responsive site tokens. */
.knowledge-teaser,.knowledge-list,.service-faq{background:var(--paper,#f8f8f5)}
.knowledge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.knowledge-card{background:#fff;border:1px solid var(--line,#e2e4e6);padding:30px 26px;min-width:0;display:flex;flex-direction:column;gap:12px}
.knowledge-card h3{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.22;margin:0;color:var(--navy)}
.knowledge-card h3 a{color:inherit;text-decoration:none}
.knowledge-card h3 a:hover,.knowledge-card h3 a:focus-visible{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.knowledge-card p{font-size:15px;line-height:1.65;color:var(--muted);margin:0 0 15px;flex:1}
.knowledge-card .text-link{align-self:flex-start}
.service-faq h2{font-size:clamp(1.7rem,3vw,2.8rem);line-height:1.2;margin-bottom:24px}
.service-guide-link{margin-top:25px;color:var(--muted);font-size:15px}
.service-guide-link a{color:var(--navy);text-underline-offset:3px}
.article-hero .container{padding-top:20px;padding-bottom:18px}
.article-hero h1{overflow-wrap:anywhere;font-size:clamp(2rem,4.2vw,4.1rem);line-height:1.12}
.article-byline{font-size:13px!important;letter-spacing:0!important;opacity:.75}
.article-shell{padding-top:50px;padding-bottom:76px}
.article-toc{border-left:3px solid var(--gold);padding:22px 28px;margin:0 0 50px;background:#f6f6f3}
.article-toc strong{display:block;margin-bottom:10px}
.article-toc ol{margin:0;padding-left:20px}
.article-toc li{padding:5px 0}
.article-toc a{color:var(--navy);text-decoration:underline;text-underline-offset:3px}
.article-part{scroll-margin-top:95px;margin:0 0 34px}
.article-part h2,.article-faq h2,.article-cta h2{color:var(--navy);font-size:clamp(1.5rem,2.7vw,2.35rem);line-height:1.2;margin:0 0 14px}
.article-part p,.article-cta p,.article-note{font-size:16px;line-height:1.85;color:var(--muted);max-width:740px}
.article-faq{margin:56px 0}
.article-faq h2{margin-bottom:24px}
.article-cta{padding:30px;background:#f5f5f1;border:1px solid var(--line,#ddd)}
.article-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.article-note{font-size:13px;margin-top:26px}
@media(max-width:940px){.knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.knowledge-grid{grid-template-columns:1fr}.knowledge-card{padding:24px 22px}.article-toc{padding:18px}.article-shell{padding-top:30px;padding-bottom:50px}.article-cta{padding:20px}.article-actions .btn{width:100%;justify-content:center}}

/* Дополнения для базы знаний (v3) */
.article-checklist{margin:18px 0 4px;padding:0 0 0 25px;color:#384859;font-size:16px;line-height:1.75}
.article-checklist li{margin:9px 0;padding-left:4px}
.article-checklist li::marker{color:#ac8432}
.article-source{margin:32px 0 50px;padding:24px 28px;background:#f5f5f1;border-left:3px solid var(--gold)}
.article-source h2,.article-related h2{font-size:clamp(1.3rem,2.4vw,1.85rem);line-height:1.2;color:var(--navy);margin:0 0 12px}
.article-source p{font-size:15px;line-height:1.72;color:var(--muted);margin:0 0 12px}
.article-source a{font-weight:600;color:var(--navy);text-decoration:underline;overflow-wrap:anywhere;text-underline-offset:3px}
.article-related{margin:45px 0 42px}.article-related .knowledge-grid{gap:12px}.article-related .knowledge-card{padding:19px 18px}
.article-related .knowledge-card h3{font-size:1.18rem}.article-related .knowledge-card p{font-size:13px;margin-bottom:0}
@media(min-width:941px) and (max-width:1130px){.main-nav{gap:10px}.main-nav a{font-size:11px}}
@media(max-width:650px){.article-source{padding:18px}.article-related .knowledge-grid{grid-template-columns:1fr}}

/* База знаний: структура 20 подробных материалов */
.knowledge-topic-nav{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap;padding:20px 22px;margin-bottom:34px;background:#f4f4f0;border-radius:12px;line-height:1.5}
.knowledge-topic-nav strong{font-weight:700;color:#182639}.knowledge-topic-nav a{color:#253951;text-decoration:underline;text-underline-offset:4px;font-size:14px}
.knowledge-category{scroll-margin-top:95px;margin-bottom:58px}.knowledge-category>h2{font-size:clamp(1.55rem,2.8vw,2.15rem);margin:0 0 24px;color:#16273b}
.article-part p+p{margin-top:16px}.article-part p{line-height:1.84}.article-part{scroll-margin-top:94px}
.article-source ul{margin-top:12px}.article-source li{overflow-wrap:anywhere}
@media(max-width:680px){.knowledge-topic-nav{padding:17px 15px;gap:9px 15px}.knowledge-category{margin-bottom:44px}.article-toc{padding:20px 18px}}

/* SEO 2026-10-31: компактные блоки без внешних ресурсов. */
.seo-service-detail p{max-width:82ch;line-height:1.75}.seo-service-detail h3{margin-top:1.8rem}.seo-service-detail li{margin:.6rem 0;line-height:1.6}.seo-related-links{display:flex;flex-wrap:wrap;gap:.75rem 1.2rem;margin-top:2rem}.seo-related-links a,.project-service-links a{color:var(--accent,#c8652b);text-decoration:underline;text-underline-offset:3px}.project-service-links a{display:inline-block;margin-right:1rem}.seo-ordering{padding-bottom:3rem}.seo-ordering h3{margin-bottom:1rem}.seo-ordering .btn{margin-top:1rem}
@media(max-width:740px){.terrain-visual{max-width:100%;min-width:0;overflow:hidden}.terrain-visual img{max-width:100%}}
.knowledge-search-label{display:block;font-weight:700;margin-bottom:10px}.knowledge-search{width:100%;max-width:640px;padding:15px 18px;border:1px solid #bac3cc;border-radius:3px;background:#fff;color:#172638;font:inherit}.knowledge-search:focus{outline:2px solid var(--gold);outline-offset:3px}.knowledge-card[hidden],.knowledge-category[hidden]{display:none}.article-editorial-note{padding:18px 22px;border-left:3px solid var(--gold);background:var(--paper);font-size:14px;line-height:1.65}
/* FAQ без номера содержит только текст и кнопку: отдельная двухколоночная сетка. */
.service-faq .faq-item summary,.article-faq .faq-item summary{grid-template-columns:minmax(0,1fr) 28px;gap:18px}
.service-faq .faq-item summary>span:first-child,.article-faq .faq-item summary>span:first-child{min-width:0;overflow-wrap:break-word}
.service-faq .faq-toggle,.article-faq .faq-toggle{justify-self:end;line-height:1}
.service-faq .faq-answer,.article-faq .faq-answer{padding:0 46px 23px 0}
.service-faq .faq-answer p,.article-faq .faq-answer p{max-width:80ch}
@media(max-width:510px){.service-faq .faq-item summary,.article-faq .faq-item summary{grid-template-columns:minmax(0,1fr) 24px;gap:12px}.service-faq .faq-answer,.article-faq .faq-answer{padding-right:0}}
