:root{--paper:#FBFBF9;--ink:#212729;--steel:#5E6E7A;--line:#DFE2DD;--alt:#F1F2EE;
--grid:rgba(94,110,122,.08);--cut:#E8611C;--cut-dark:#C94F12;--mail:#3A5F8A;--mail-dark:#2C4B6F;--wa:#0E8A49;
--chip:#DFC7A0;--chip-edge:#B99668;--sheet:#EFE6D3}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Manrope',system-ui,sans-serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
main a:not(.btn):not(.card-link){color:var(--cut-dark);border-bottom:1px solid rgba(201,79,18,.35)}
main a:not(.btn):not(.card-link):hover{border-bottom-color:var(--cut-dark)}
:focus-visible{outline:2px solid var(--cut);outline-offset:2px;border-radius:2px}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace}
.display{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.025em;line-height:1.07;font-weight:600}
#devnote{background:#FFF4E2;border-bottom:1px solid #E9C793;color:#7A5218;font-size:.74rem;text-align:center;padding:8px 16px}
.stubnote{background:#FFF4E2;border-bottom:1px solid #E9C793;color:#7A5218;font-size:.72rem;text-align:center;padding:6px 14px}
header.top{position:sticky;top:0;z-index:40;background:rgba(251,251,249,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:18px;height:62px}
.brand{font-family:'Oswald',sans-serif;font-weight:600;font-size:1.22rem;letter-spacing:.07em;display:flex;align-items:baseline;gap:10px}
.brand span{font-family:'JetBrains Mono',monospace;font-weight:400;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--steel)}
.topnav{display:flex;gap:20px;font-size:.87rem;font-weight:500;letter-spacing:.02em;color:var(--steel)}
.topnav a:hover{color:var(--ink)}
.topcta{display:flex;align-items:center;gap:14px}
.topcta .phone{font-size:.85rem;font-weight:600}
.topcta .phone:hover{color:var(--cut-dark)}
.burger{display:none;background:none;border:0;cursor:pointer;padding:8px}
.burger span{display:block;width:20px;height:2px;background:var(--ink);margin:4px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:3px;padding:13px 24px;font-weight:700;font-size:.94rem;letter-spacing:.01em;border:1px solid transparent;transition:background .15s,color .15s;cursor:pointer}
.btn-primary{background:var(--cut);color:#fff}.btn-primary:hover{background:var(--cut-dark)}
.btn-mail{background:var(--mail);color:#fff}.btn-mail:hover{background:var(--mail-dark)}
.btn-wa{background:var(--wa);color:#fff}
.btn-ghost{background:transparent;border-color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}
.dim-label{display:flex;align-items:center;gap:14px;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--steel);margin-bottom:16px}
.dim-label::before,.dim-label::after{content:"";flex:1;height:9px;opacity:.55;
background:linear-gradient(to bottom,transparent 4px,var(--steel) 4px,var(--steel) 5px,transparent 5px)}
.dim-label::before{max-width:46px;border-left:1px solid var(--steel)}
.dim-label::after{border-right:1px solid var(--steel)}
.crumbs{font-size:.78rem;color:var(--steel);padding-top:20px;display:flex;gap:8px}
.crumbs a{border-bottom:1px solid var(--line)}
.pagehead{padding:34px 24px 8px}
.pagehead h1{font-size:clamp(2rem,4.6vw,3rem)}
.pagebody{padding:12px 24px 84px}
.pagebody .lead{margin:16px 0 20px}
.hero{padding:76px 0 86px;border-bottom:1px solid var(--line);
background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);
background-size:24px 24px}
.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:54px;align-items:center}
.hero h1{font-size:clamp(2.1rem,4.8vw,3.4rem)}
.lead{font-size:1.16rem;line-height:1.65;color:#3C464B;max-width:38em;margin-top:18px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 4px}
.note{font-size:.85rem;color:var(--steel);margin-top:16px;max-width:38em}
.nest-wrap{margin:0}
.nest{width:100%;height:auto;display:block;filter:drop-shadow(0 10px 22px rgba(33,39,41,.08))}
.nest-wrap figcaption{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--steel);text-align:center;margin-top:14px}
.section{padding:84px 0}
.section.alt{background-color:var(--alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line);
background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);
background-size:24px 24px}
h2.h2{font-size:clamp(1.5rem,2.9vw,2.05rem);margin-bottom:24px}
h2.h2::after{content:"";display:block;width:56px;height:2px;background:var(--ink);margin-top:12px}
.pagebody h2.h2{margin-top:48px}
.table-scroll{overflow-x:auto;margin:16px 0}
table.price{width:100%;border-collapse:collapse;min-width:540px}
table.price caption{text-align:left;font-family:'JetBrains Mono',monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--steel);padding-bottom:8px}
table.price th{font-family:'JetBrains Mono',monospace;font-weight:600;font-size:.69rem;letter-spacing:.12em;text-transform:uppercase;color:var(--steel);text-align:left;padding:0 14px 10px;border-bottom:2px solid var(--ink)}
table.price td{padding:13px 14px;border-bottom:1px solid var(--line);font-size:.94rem;vertical-align:top}
table.price tbody tr:hover{background:var(--alt)}
td.num{font-family:'JetBrains Mono',monospace;font-weight:600;white-space:nowrap}
td.unit{color:var(--steel);white-space:nowrap}
.fine{font-size:.85rem;color:var(--steel);margin-top:14px;max-width:48em}
.fine strong{color:var(--ink)}
.disclaimer{border-left:3px solid var(--cut);padding-left:12px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.card{background:#fff;border:1px solid var(--line);border-radius:3px;padding:0 0 18px;overflow:hidden;display:block}
.card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;border-bottom:1px solid var(--line)}
.card h3{font-size:1rem;font-weight:700;margin:16px 18px 6px}
.card p{font-size:.87rem;color:#3C464B;margin:0 18px}
.card-link{transition:border-color .15s,transform .15s}
.card-link:hover{border-color:var(--chip-edge);transform:translateY(-2px)}
.feats{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.feat{border-top:2px solid var(--ink);padding-top:16px}
.feat .big{font-weight:600;font-size:1.3rem;color:var(--cut-dark);display:block;margin-bottom:8px;font-family:'JetBrains Mono',monospace}
.feat p{font-size:.9rem;color:#3C464B}
ol.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
ol.steps.steps-long{grid-template-columns:1fr;gap:34px;max-width:56em}
ol.steps li{border-top:2px solid var(--ink);padding-top:16px}
ol.steps .num{font-family:'JetBrains Mono',monospace;font-weight:600;font-size:.8rem;color:var(--cut);letter-spacing:.12em;display:block;margin-bottom:9px}
ol.steps h3{font-family:'Oswald',sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:.03em;font-size:1.06rem;margin-bottom:9px}
ol.steps p{font-size:.93rem;color:#3C464B;margin-bottom:8px}
ul.plain{list-style:none;margin:10px 0}
ul.plain li{padding:8px 0 8px 18px;position:relative;font-size:.93rem;color:#3C464B}
ul.plain li::before{content:"";position:absolute;left:0;top:16px;width:8px;height:2px;background:var(--cut)}
.faq{max-width:56em}
.faq details{border-top:1px solid var(--line);padding:2px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font-weight:700;font-size:.97rem;padding:15px 26px 15px 0;position:relative;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:2px;top:12px;font-family:'JetBrains Mono',monospace;color:var(--cut);font-size:1.1rem}
.faq details[open] summary::after{content:"–"}
.faq p{font-size:.92rem;color:#3C464B;padding:0 0 16px;max-width:52em}
.photo,.photo-stub{margin:26px 0;max-width:640px}
.photo img{width:100%;display:block;border:1px solid var(--line);border-radius:3px}
.photo figcaption{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--steel);margin-top:9px}
.photo-stub svg{width:100%;height:auto;display:block;border-radius:3px}
.map-stub{border:1px dashed var(--steel);border-radius:3px;padding:48px 20px;text-align:center;color:var(--steel);font-size:.8rem;margin:18px 0;max-width:640px}
.contacts{text-align:center}
.contacts .cta-row{justify-content:center}
.phone-big{font-size:clamp(1.8rem,4.6vw,2.9rem);display:inline-block;margin:6px 0 16px}
.phone-big:hover{color:var(--cut-dark)}
.contact-line{font-size:.8rem;letter-spacing:.05em;color:var(--steel);margin-top:12px}
.cross{background:var(--alt);border:1px solid var(--line);border-radius:3px;padding:15px 18px;margin:28px 0 14px}
.cross p{font-size:.86rem;color:#3C464B}
.cross .mono{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--steel);display:block;margin-bottom:4px}
.cross a{color:var(--cut-dark);border-bottom:1px solid rgba(201,79,18,.35)}
footer{border-top:2px solid var(--ink);padding:40px 0 34px;margin-top:48px}
.foot-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:36px}
.foot-line{font-size:.78rem;color:var(--steel);margin-top:9px}
.footnav{display:grid;grid-template-columns:1fr 1fr;gap:9px 24px;align-content:start;font-size:.86rem}
.footnav a:hover{color:var(--cut-dark)}
.rekv-line{border-top:1px solid var(--line);padding-top:12px;margin-top:16px}
.rekv-line,.rekv{font-size:.74rem;color:var(--steel)}
.rekv{letter-spacing:.03em}
.mobilebar{display:none}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.feats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:940px){.topcta .phone{display:none}}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:40px}.nest-wrap{max-width:560px;margin:0 auto;width:100%}}
@media(max-width:860px){
.topnav{display:none;position:absolute;top:62px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:8px 24px 14px}
.topnav.open{display:flex}
.topnav a{padding:12px 0;border-bottom:1px solid var(--line)}
.burger{display:block}
ol.steps{grid-template-columns:1fr}}
@media(max-width:720px){
body{padding-bottom:78px}
.mobilebar{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--paper);border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom))}
.hero{padding:46px 0 56px}.section{padding:56px 0}
.pagebody{padding-bottom:64px}
.cards{grid-template-columns:1fr}.feats{grid-template-columns:1fr}
.foot-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}}
