
:root{--primary:#0a5aa6;--accent:#29b6f6;--dark:#0e2433;--light:#f6f9fc;--radius:14px}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;color:var(--dark);line-height:1.6}
img{max-width:100%;display:block}
a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}
.container{width:min(1120px,92%);margin:0 auto}
.btn{display:inline-block;padding:.7rem 1rem;border-radius:10px;border:1px solid transparent;font-weight:600}
.btn-primary{background:var(--primary);color:#fff}.btn-ghost{border-color:var(--primary);color:var(--primary)}
.site-header{background:#fff;position:sticky;top:0;border-bottom:1px solid #eef2f7;z-index:10}
.header-inner{display:flex;align-items:center;gap:1rem;padding:.7rem 0}
.logo{display:flex;align-items:center;gap:.5rem}
.logo img{height:28px}
.nav-list{display:flex;gap:1rem;list-style:none;margin:0;padding:0}
.menu-toggle{display:none}
.has-sub{position:relative}.has-sub .sub{display:none;position:absolute;background:#fff;border:1px solid #e9f0f7;border-radius:10px;padding:.5rem;list-style:none}
.has-sub:hover .sub{display:block}
@media(max-width:860px){.menu-toggle{display:block;border:1px solid #dbe5ef;padding:.5rem .75rem;border-radius:10px;background:#fff}
.nav-list{display:none;flex-direction:column}.nav-list.open{display:flex}.hide-mobile{display:none}}
.hero{background:linear-gradient(180deg,var(--light) 0%,#fff 60%);padding:2.2rem 0 1.2rem}
.section{padding:2rem 0}.alt{background:#fafcff}
.grid{display:grid;gap:1rem}
.cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.card{border:1px solid #e9f0f7;border-radius:var(--radius);padding:1rem;background:#fff}
.pricing{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.price-card{border:1px solid #e7eef7;border-radius:var(--radius);padding:1rem}
.breadcrumbs ol{display:flex;gap:.5rem;padding:0;margin:0;list-style:none}.breadcrumbs li::after{content:'›';margin:0 .25rem;color:#789}.breadcrumbs li:last-child::after{content:''}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
.before-after{position:relative;border-radius:12px;overflow:hidden;border:1px solid #e9f0f7}
.before-after figure{margin:0}
.site-footer{background:#0f1d29;color:#d6e2ee}.footer-inner{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;padding:1rem 0}
.review{border:1px solid #e9f0f7;border-radius:12px;padding:1rem;background:#fff}
.stars{letter-spacing:2px}
.banner{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid #eaeef4;padding:1rem;display:none}
.banner.show{display:block}
