:root{
  --red:#c9162d;
  --red-dark:#a90f22;
  --ink:#202020;
  --muted:#686868;
  --warm:#fbfaf7;
  --soft:#f3f2ee;
  --white:#ffffff;
  --line:#e5e2dc;
  --shadow:0 14px 42px rgba(32,32,32,.08);
  --radius:18px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--warm);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.58;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
.skip-link{position:absolute;left:-10000px;top:auto}.skip-link:focus{left:16px;top:16px;z-index:1000;background:#fff;padding:10px 14px;border-radius:8px}
.topline{background:var(--ink);color:#fff;font-size:.88rem}
.topline .container{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.topline a{font-weight:800;letter-spacing:.01em}
.site-header{position:sticky;top:0;z-index:80;background:rgba(251,250,247,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:block;width:270px;flex:0 0 auto}.brand img{width:100%;height:auto}
.nav{display:flex;align-items:center;gap:24px;font-size:.94rem;font-weight:760}.nav>a:not(.nav-cta){padding:28px 0}.nav>a[aria-current="page"]{color:var(--red)}.nav>a:not(.nav-cta):hover{color:var(--red)}
.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:10px;border:2px solid var(--red);background:var(--red);color:#fff;font-weight:850;line-height:1.15;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}
.nav-cta:hover,.btn:hover{background:var(--red-dark);border-color:var(--red-dark);transform:translateY(-1px);box-shadow:0 8px 18px rgba(201,22,45,.18)}
.btn.outline{background:transparent;color:var(--ink);border-color:#cbc8c2}.btn.outline:hover{background:#fff;border-color:var(--ink);box-shadow:none}.btn.light{background:#fff;color:var(--ink);border-color:#fff}.btn.light:hover{background:#f7f7f7;border-color:#f7f7f7;box-shadow:none}
.menu-btn{display:none;width:46px;height:46px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);align-items:center;justify-content:center}.menu-btn svg{width:24px;height:24px}
.eyebrow,.kicker{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:900;color:var(--red)}
.hero{padding:62px 0 70px;background:var(--warm)}
.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:64px;align-items:center}
.hero-copy h1{font-size:clamp(3.15rem,6vw,5.8rem);line-height:.94;letter-spacing:-.055em;margin:14px 0 22px;max-width:750px}.hero-copy h1 span{color:var(--red)}
.hero-copy>p{font-size:1.15rem;color:var(--muted);max-width:650px;margin:0 0 28px}.actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-photo{position:relative;border-radius:22px;overflow:hidden;background:#ddd;box-shadow:var(--shadow)}.hero-photo>img{width:100%;aspect-ratio:4/4.45;object-fit:cover;object-position:center 38%}.hero-badge{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);border-radius:13px;padding:14px 16px;font-weight:900;box-shadow:0 8px 26px rgba(0,0,0,.12)}.hero-badge small{display:block;font-size:.82rem;color:var(--muted);font-weight:650;margin-top:2px}
.trustbar{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trustgrid{display:grid;grid-template-columns:repeat(4,1fr)}.trustitem{padding:20px 22px;border-right:1px solid var(--line)}.trustitem:first-child{padding-left:0}.trustitem:last-child{border-right:0}.trustitem strong{display:block;font-size:.96rem}.trustitem span{font-size:.85rem;color:var(--muted)}
.section{padding:84px 0}.section.white{background:#fff}.section.soft{background:var(--soft)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:46px;margin-bottom:34px}.section h2,.prose h2,.contact-panel h2{font-size:clamp(2rem,4.1vw,3.6rem);line-height:1.03;letter-spacing:-.043em;margin:9px 0 12px}.lead{font-size:1.08rem;color:var(--muted);max-width:700px;margin:0}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{display:block;background:var(--warm);border:1px solid var(--line);border-radius:var(--radius);padding:27px;min-height:260px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#d6d1ca}.service-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#fff1f3;color:var(--red);margin-bottom:22px}.service-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.service-card h3{font-size:1.23rem;line-height:1.2;margin:0 0 9px}.service-card p{margin:0 0 18px;color:var(--muted)}.more{color:var(--red);font-weight:850}
.split{display:grid;grid-template-columns:.95fr 1.05fr;gap:58px;align-items:center}.image-card{border-radius:22px;overflow:hidden;background:#ddd;box-shadow:var(--shadow)}.image-card img{width:100%;aspect-ratio:4/4.2;object-fit:cover;object-position:center 38%}.ticklist{list-style:none;margin:22px 0 28px;padding:0}.ticklist li{position:relative;padding:7px 0 7px 28px;color:#444}.ticklist li:before{content:"✓";position:absolute;left:0;color:var(--red);font-weight:950}
.area-pills{display:flex;flex-wrap:wrap;gap:10px}.pill{display:inline-flex;align-items:center;min-height:44px;padding:0 15px;border:1px solid var(--line);background:var(--warm);border-radius:999px;font-weight:760;font-size:.92rem}.pill:hover{border-color:#c8c4be;background:#fff}
.cta{background:var(--red);color:#fff;border-radius:22px;padding:40px;display:flex;align-items:center;justify-content:space-between;gap:36px}.cta h2{font-size:clamp(2rem,3.5vw,3.05rem);margin:0 0 8px;color:#fff}.cta p{margin:0;color:#ffe3e7;max-width:760px}
.page-hero{background:var(--soft);padding:70px 0 60px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.8rem,5.6vw,5.2rem);line-height:.96;letter-spacing:-.05em;margin:13px 0 20px;max-width:900px}.page-hero>div>p{font-size:1.1rem;color:var(--muted);max-width:780px;margin:0}.breadcrumbs{font-size:.82rem;color:#858585;margin-bottom:24px}.breadcrumbs a:hover{color:var(--red)}
.content-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:56px;align-items:start}.prose{max-width:800px}.prose p,.prose li{color:#505050}.prose h2{font-size:clamp(2rem,3.6vw,3rem)}.prose h3{font-size:1.3rem;margin:30px 0 12px}.checkgrid{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:6px 28px;padding:0;margin:18px 0 28px}.checkgrid li{position:relative;padding:7px 0 7px 25px}.checkgrid li:before{content:"✓";position:absolute;left:0;color:var(--red);font-weight:950}
.sidebar{position:sticky;top:112px;background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:27px}.sidebar h3{font-size:1.45rem;margin:9px 0 10px}.sidebar p{color:var(--muted)}.sidebar .btn{width:100%;margin-top:9px}.micro{font-size:.84rem;line-height:1.5}
.notice{margin:28px 0;background:#fff3f5;border:1px solid #f3c6cd;border-left:4px solid var(--red);padding:17px 18px;border-radius:12px;color:#50343a}.faq{margin-top:34px}.faq details{background:var(--warm);border:1px solid var(--line);border-radius:12px;margin:9px 0;overflow:hidden}.faq summary{cursor:pointer;font-weight:800;padding:16px 18px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";float:right;color:var(--red);font-size:1.2rem}.faq details[open] summary:after{content:"–"}.faq details p{padding:0 18px 17px;margin:0}
.contact-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:54px;align-items:start}.contact-panel{background:var(--ink);color:#fff;border-radius:20px;padding:34px}.contact-panel .kicker{color:#ff7181}.contact-panel h2{font-size:2.45rem;color:#fff}.contact-panel p{color:#d5d5d5}.contact-detail{padding:17px 0;border-top:1px solid #393939}.contact-detail strong{font-size:.84rem;text-transform:uppercase;letter-spacing:.08em;color:#bfbfbf}.contact-detail p{margin:4px 0 0}.contact-detail a{color:#fff;font-weight:800}
.form{display:grid;gap:15px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form label{font-size:.9rem;font-weight:800;color:#3c3c3c}.form input,.form select,.form textarea{width:100%;margin-top:6px;padding:13px 14px;border:1px solid #d7d3cd;background:#fff;border-radius:10px;color:var(--ink);outline:none}.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(201,22,45,.09)}.form textarea{min-height:140px;resize:vertical}.form-note{font-size:.84rem;color:var(--muted);margin:0}
.footer{background:#171717;color:#fff;padding:56px 0 22px}.footer-grid{display:grid;grid-template-columns:1.35fr .8fr .8fr;gap:48px}.footer-logo{width:270px;background:#fff;border-radius:8px;padding:7px;margin-bottom:18px}.footer p,.footer a,.footer span{color:#c6c6c6}.footer h4{margin:0 0 14px;font-size:1rem}.footer-links{display:grid;gap:9px}.footer a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #313131;margin-top:38px;padding-top:18px;font-size:.85rem}
.mobile-actions{display:none}
@media(max-width:980px){
  .brand{width:235px}.nav{gap:16px}.hero-grid{gap:36px}.service-grid{grid-template-columns:1fr 1fr}.content-layout,.contact-grid{grid-template-columns:1fr}.sidebar{position:static}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}
}
@media(max-width:820px){
  .topline-note{display:none}.topline .container{justify-content:center}.menu-btn{display:flex}.nav-wrap{min-height:72px}.brand{width:220px;max-width:68vw}.nav{display:none;position:absolute;left:20px;right:20px;top:72px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav>a:not(.nav-cta){padding:13px 12px;border-bottom:1px solid #efede9}.nav-cta{margin-top:10px}.hero{padding:40px 0 54px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero-copy h1{font-size:clamp(3rem,12vw,5rem)}.hero-photo{max-width:680px}.trustgrid{grid-template-columns:1fr 1fr}.trustitem{border-bottom:1px solid var(--line)}.trustitem:nth-child(2n){border-right:0}.trustitem:nth-child(3),.trustitem:nth-child(4){border-bottom:0}.trustitem:first-child{padding-left:22px}.split{grid-template-columns:1fr}.section-head{display:block}.section-head .lead{margin-top:14px}.page-hero{padding:52px 0 46px}
}
@media(max-width:620px){
  body{padding-bottom:74px}.container{width:min(calc(100% - 28px),var(--max))}.section{padding:62px 0}.hero{padding-top:34px}.hero-copy h1{font-size:3.3rem}.hero-copy>p{font-size:1.03rem}.actions{display:grid;grid-template-columns:1fr}.actions .btn{width:100%}.hero-photo>img{aspect-ratio:4/4.8}.trustgrid{grid-template-columns:1fr 1fr}.trustitem{padding:16px 12px}.trustitem:first-child{padding-left:12px}.trustitem strong{font-size:.88rem}.trustitem span{font-size:.77rem}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.section h2,.prose h2{font-size:2.35rem}.checkgrid{grid-template-columns:1fr}.cta{display:block;padding:28px}.cta .btn{width:100%;margin-top:22px}.page-hero h1{font-size:3.05rem}.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin:5px 0}.mobile-actions{display:grid;grid-template-columns:1fr 1.1fr;gap:8px;position:fixed;left:10px;right:10px;bottom:10px;z-index:120;background:rgba(255,255,255,.96);padding:8px;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 36px rgba(0,0,0,.18);backdrop-filter:blur(10px)}.mobile-actions .btn{min-height:48px;padding:0 12px;font-size:.9rem}.mobile-actions .btn.outline{background:#fff}.contact-panel{padding:28px}.sidebar{padding:24px}
}
