:root{
  --navy:#062650;
  --navy2:#001d43;
  --blue:#0b76e9;
  --blue-d:#0655c5;
  --cyan:#12c8e8;
  --teal:#11b6b4;
  --green:#42b83c;
  --lime:#78c51a;
  --ink:#071b3c;
  --muted:#546579;
  --line:#dbe8f4;
  --white:#fff;
  --soft:#f4fbff;
  --shadow:0 12px 30px rgba(8,42,84,.14);
  --shadow-sm:0 6px 16px rgba(8,42,84,.08);
  --radius:16px;
  --maxw:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  color:var(--ink);
  background:#fff;
  -webkit-font-smoothing:antialiased;
}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(var(--maxw), calc(100% - 48px));margin:0 auto}
.skip-link{position:absolute;left:-999px;top:0;background:#fff;color:var(--navy);padding:10px 16px;z-index:200;border-radius:0 0 8px 0}
.skip-link:focus{left:0}
:focus-visible{outline:3px solid #0a6de4;outline-offset:2px;border-radius:4px}

/* ---------- Topbar ---------- */
.topbar{background:linear-gradient(90deg,#06234d,#001b3f);color:#fff;font-size:13.5px}
.topbar-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:6px 0}
.top-left{display:flex;align-items:center;gap:9px}
.top-points{display:flex;gap:26px;font-weight:700}
.top-points span{white-space:nowrap;display:inline-flex;align-items:center;gap:7px}
.top-points .dot{color:var(--lime);font-size:9px}
.shield{display:inline-grid;place-items:center;width:20px;height:20px;border:1.4px solid rgba(255,255,255,.85);border-radius:50%;font-size:11px}

/* ---------- Header ---------- */
.site-header{background:#fff;border-bottom:1px solid #e9f1f8;position:sticky;top:0;z-index:50;box-shadow:0 2px 14px rgba(5,31,68,.05)}
.header-inner{min-height:82px;display:flex;align-items:center;gap:24px;padding:10px 0}
.brand img{width:230px;height:auto}
.nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:14px;font-weight:700;color:#10284d}
.nav a{padding:6px 0;position:relative;transition:color .15s}
.nav a:hover{color:var(--blue)}
.book-btn{margin-left:14px;background:linear-gradient(180deg,#88cf28,#39a92e);color:#fff;font-weight:800;padding:14px 22px;border-radius:10px;box-shadow:0 9px 18px rgba(75,175,38,.28);white-space:nowrap;display:inline-flex;align-items:center;gap:9px;transition:transform .12s,box-shadow .12s}
.book-btn:hover{transform:translateY(-1px);box-shadow:0 12px 22px rgba(75,175,38,.36)}
.menu-toggle{display:none;margin-left:auto;border:0;background:#fff;width:46px;height:46px;cursor:pointer}
.menu-toggle span{display:block;width:24px;height:3px;background:var(--navy);margin:5px auto;border-radius:99px;transition:.2s}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

/* ---------- Hero ---------- */
.hero{position:relative;background:#eef7ff;overflow:hidden}
.hero-image{position:absolute;right:0;top:0;width:58%;height:100%;background:url('assets/hero-inspector-image.png') center right/cover no-repeat}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#eef7ff 0%,#eef7ff 30%,rgba(238,247,255,.82) 46%,rgba(238,247,255,0) 64%);z-index:1}
.hero-inner{position:relative;z-index:2;display:flex;align-items:center;min-height:520px;padding:48px 0}
.hero-copy{width:min(560px,100%)}
.eyebrow{text-transform:uppercase;letter-spacing:.06em;color:#017cf3;font-size:13px;font-weight:800;margin:0 0 16px}
h1{font-size:clamp(34px,5vw,52px);line-height:1.02;margin:0 0 18px;color:#061f4a;letter-spacing:-.02em;font-weight:800}
h1 span{color:#086ee9}
.hero-text{font-size:17px;line-height:1.5;color:#142a4b;margin:0 0 26px;max-width:480px}
.hero-features{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;max-width:520px}
.hero-features div{text-align:center}
.feature-icon{display:grid;place-items:center;margin:0 auto 9px;width:48px;height:48px;border-radius:14px;color:#fff;font-size:22px}
.shield-icon{background:linear-gradient(135deg,#21c7ee,#0870e3)}
.clock-icon{background:linear-gradient(135deg,#14cfdc,#76c929)}
.flask-icon{background:linear-gradient(135deg,#18c5e6,#0e7ae8)}
.home-icon{background:linear-gradient(135deg,#0b83f0,#50be40)}
.hero-features b{display:block;font-size:13px;color:#0a234a;margin-bottom:3px}
.hero-features small{display:block;font-size:11.5px;color:#46587a;line-height:1.3}
.hero-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.btn{border:0;border-radius:10px;padding:15px 26px;font-weight:800;display:inline-flex;gap:12px;align-items:center;justify-content:center;cursor:pointer;line-height:1;transition:transform .12s,box-shadow .12s;font-size:15px}
.btn-primary{background:linear-gradient(180deg,#8fd22c,#35a72d);color:#fff;box-shadow:0 10px 20px rgba(53,167,45,.28)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 14px 24px rgba(53,167,45,.36)}
.btn-outline{background:#fff;color:#0655c5;border:1.5px solid #0a6de4;box-shadow:var(--shadow-sm)}
.btn-outline:hover{background:#f3f9ff}
.serving-note{font-size:13.5px;color:#16334e;margin:20px 0 0;display:flex;align-items:center;gap:8px}

/* ---------- Section scaffolding ---------- */
.section{padding:64px 0}
.section-tight{padding:44px 0}
.section-title{text-align:center;margin-bottom:38px}
.section-title p{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#006ff0;font-weight:800;margin:0 0 8px}
.section-title h2{font-size:clamp(24px,3.2vw,32px);margin:0;color:#061f4a;letter-spacing:-.01em}
.section-title.light p{color:#9fd0ff}
.section-title.light h2{color:#fff}

/* ---------- Services ---------- */
.services{background:#f7fbff}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.service-card{background:#fff;border:1px solid #dbe7f2;border-radius:14px;box-shadow:var(--shadow-sm);padding:26px 22px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .15s,box-shadow .15s}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.service-icon{height:62px;display:grid;place-items:center;margin-bottom:14px}
.service-icon img{height:56px;width:auto;object-fit:contain}
.service-card h3{font-size:17px;line-height:1.2;margin:0 0 10px;color:#061f4a}
.service-card p{font-size:13.5px;line-height:1.45;color:#48597a;margin:0 0 18px;flex:1}
.learn{font-size:13px;color:#fff;font-weight:700;padding:9px 22px;border-radius:8px;box-shadow:0 5px 11px rgba(0,0,0,.12);transition:filter .15s}
.learn:hover{filter:brightness(1.08)}
.dark{background:#042d61}.blue{background:#056fe7}.teal{background:#0aa8aa}.green{background:#47ae3e}.lime{background:#82c51c}

/* ---------- Process ---------- */
.process{background:#fff}
.process-panel{border-radius:18px;background:linear-gradient(90deg,#08275a,#004b9e,#006fc5);color:#fff;box-shadow:var(--shadow);padding:36px 32px}
.process-panel h2{text-align:center;margin:0 0 26px;font-size:clamp(22px,3vw,28px);color:#fff}
.steps{display:grid;grid-template-columns:1fr 44px 1fr 44px 1fr;align-items:center;gap:14px}
.step{display:flex;align-items:center;gap:16px}
.num{flex:none;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#0f9afe,#0a56d2);display:grid;place-items:center;font-size:24px;font-weight:800}
.step-icon{flex:none;width:58px;height:58px;display:grid;place-items:center;background:rgba(255,255,255,.1);border-radius:14px}
.step-icon img{width:42px;height:42px;object-fit:contain;filter:brightness(0) invert(1)}
.step h3{font-size:15px;margin:0 0 5px;color:#fff}
.step p{font-size:13px;line-height:1.35;margin:0;color:rgba(255,255,255,.88)}
.arrow{font-size:30px;color:rgba(255,255,255,.85);text-align:center}

/* ---------- Report + Area ---------- */
.report-area{background:#f7fbff}
.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.report-card{background:#fff;border:1px solid #dce8f4;border-radius:16px;box-shadow:var(--shadow-sm);overflow:hidden}
.report-card h2{font-size:21px;color:#061f4a;margin:0 0 10px}
.report-card p{font-size:14px;line-height:1.45;color:#48597a;margin:0}
.sample{display:grid;grid-template-columns:1.1fr .9fr;align-items:stretch}
.report-copy{padding:30px 24px}
.report-copy ul{list-style:none;margin:16px 0 18px;padding:0}
.report-copy li{font-size:14px;color:#2c4061;margin:7px 0;display:flex;align-items:center;gap:8px}
.report-copy li:before{content:"✓";color:#39b046;font-weight:800}
.small-btn{display:inline-flex;align-items:center;gap:7px;background:#036bd9;color:#fff;font-size:13.5px;font-weight:700;padding:11px 20px;border-radius:9px;transition:filter .15s}
.small-btn:hover{filter:brightness(1.08)}
.report-img-wrap{background:#eef4fb;display:grid;place-items:center;padding:20px}
.report-img{width:100%;height:auto;border-radius:8px;box-shadow:var(--shadow-sm)}
.area{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:18px;padding:30px 24px}
.area img{width:100%;max-width:200px;justify-self:center}
.pin-row{display:flex;align-items:flex-start;gap:14px;margin-top:20px}
.pin{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#0a7cf3;color:#fff;font-size:15px}
.pin-row p{font-size:13.5px;line-height:1.5}

/* ---------- Bottom cards ---------- */
.bottom-cards{background:#fff}
.bottom-grid{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:22px;align-items:stretch}
.card,.cta-card{border:1px solid #dce8f4;border-radius:16px;box-shadow:var(--shadow-sm);background:#fff;padding:26px 24px;display:flex;flex-direction:column}
.card h2,.cta-card h2{font-size:19px;margin:0 0 12px;color:#061f4a}
.quote-mark{font-size:46px;color:#0a77e6;line-height:.4;margin:6px 0 10px}
.testimonial p{font-size:14px;line-height:1.5;margin:0 0 16px;color:#33486a;flex:1}
.review-row{display:flex;align-items:center;gap:12px}
.review-row img{width:50px;height:50px;border-radius:50%;object-fit:cover}
.stars{color:#ffb400;letter-spacing:3px;font-size:18px;line-height:1;margin-bottom:3px}
.review-row strong{font-size:13px;color:#0b2348}
.faq-card details{border-bottom:1px solid #d7e3ee;padding:11px 0}
.faq-card summary{font-size:14px;font-weight:700;list-style:none;color:#0b2348;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px}
.faq-card summary::-webkit-details-marker{display:none}
.faq-card summary::after{content:"+";font-weight:800;font-size:18px;color:#0a77e6}
.faq-card details[open] summary::after{content:"−"}
.faq-card p{font-size:13px;color:#566a7e;margin:9px 0 2px;line-height:1.5}
.faq-card .small-btn{margin-top:16px;align-self:flex-start}
.cta-card{background:linear-gradient(135deg,#006eec,#00bcf2);color:#fff;position:relative;overflow:hidden}
.cta-card h2{color:#fff;margin-bottom:8px}
.cta-card p{font-size:14px;line-height:1.4;margin:0 0 16px}
.cta-card .phone{font-size:23px;font-weight:800;display:inline-flex;align-items:center;gap:9px;margin-bottom:14px}
.cta-card .btn{padding:13px 22px;border-radius:9px}
.cta-card small{display:block;font-size:11.5px;margin-top:14px;opacity:.95}
.cta-house{position:absolute;right:-10px;bottom:-10px;width:130px;opacity:.9;pointer-events:none}

/* ---------- Booking form ---------- */
.booking-form{background:linear-gradient(180deg,#eef7ff,#fff)}
.form-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px;align-items:start;background:#fff;border:1px solid #dbe8f4;border-radius:18px;box-shadow:var(--shadow);padding:38px}
.form-wrap .eyebrow{margin-bottom:10px}
.form-wrap h2{font-size:clamp(26px,3.4vw,34px);line-height:1.05;margin:0 0 14px;color:#061f4a}
.form-wrap .lead{color:#546579;line-height:1.55;margin:0}
.form-trust{margin:20px 0 0;padding:0;list-style:none}
.form-trust li{font-size:13.5px;color:#2c4061;margin:9px 0;display:flex;gap:9px;align-items:center}
.form-trust li:before{content:"✓";color:#39b046;font-weight:800}
form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{font-size:12.5px;font-weight:700;color:#33486a;margin-bottom:-6px}
.field{display:flex;flex-direction:column;gap:6px}
.field.full{grid-column:1/-1}
input,select,textarea{width:100%;border:1px solid #ccdce9;border-radius:10px;padding:13px 14px;font:inherit;background:#fff;transition:border-color .15s,box-shadow .15s}
input:focus,select:focus,textarea:focus{border-color:#0a6de4;box-shadow:0 0 0 3px rgba(10,109,228,.12);outline:none}
textarea{grid-column:1/-1;resize:vertical}
form button{grid-column:1/-1;justify-self:start}
.form-status{grid-column:1/-1;font-size:14px;font-weight:700;padding:12px 14px;border-radius:10px;display:none}
.form-status.ok{display:block;background:#e9f9ee;color:#1c7a32;border:1px solid #bce9c8}
.form-status.err{display:block;background:#fdecec;color:#b3261e;border:1px solid #f3c2c0}
.form-status.sending{display:block;background:#eef4fb;color:#0655c5;border:1px solid #cfe2f7}

/* ---------- Footer ---------- */
footer{background:linear-gradient(90deg,#082652,#001b3f);color:#fff;padding:48px 0 18px}
.footer-grid{display:grid;grid-template-columns:1.6fr .8fr .8fr .8fr 1.2fr;gap:30px}
.footer-logo{width:200px;margin-bottom:12px}
footer .tagline{color:rgba(255,255,255,.78);font-size:13px;line-height:1.5;margin:0 0 14px}
footer h3{font-size:13px;margin:0 0 12px;color:#fff;letter-spacing:.02em}
footer a, .footer-grid > div p{display:block;color:rgba(255,255,255,.78);font-size:13px;line-height:1.4;margin:6px 0;transition:color .15s}
footer a:hover{color:#fff}
.socials{display:flex;gap:12px;margin-top:14px}
.socials a{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);font-size:15px;font-weight:700;margin:0}
.socials a:hover{background:rgba(255,255,255,.22)}
.footer-contact a{display:flex;align-items:center;gap:9px}
.copyright{text-align:center;color:rgba(255,255,255,.6);font-size:12px;margin-top:30px;border-top:1px solid rgba(255,255,255,.12);padding-top:18px}

/* ---------- City pages ---------- */
.city-hero{position:relative;background:linear-gradient(120deg,#062650,#0a4ea0 60%,#0b76e9);color:#fff;overflow:hidden}
.city-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(18,200,232,.28),transparent 55%);pointer-events:none}
.city-hero-inner{position:relative;z-index:2;padding:62px 0 56px;max-width:760px}
.crumbs{font-size:12.5px;color:rgba(255,255,255,.7);margin:0 0 18px}
.crumbs a:hover{color:#fff;text-decoration:underline}
.crumbs span{margin:0 7px;opacity:.6}
.city-hero .eyebrow{color:#8fe0ff}
.city-hero h1{color:#fff;font-size:clamp(30px,4.4vw,46px)}
.city-hero h1 span{color:#7ce0a0}
.city-hero p.lead{font-size:17px;line-height:1.55;color:rgba(255,255,255,.92);max-width:620px;margin:0 0 28px}
.city-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn-white{background:#fff;color:#0655c5}
.btn-ghost{background:rgba(255,255,255,.12);color:#fff;border:1.5px solid rgba(255,255,255,.5)}
.btn-ghost:hover{background:rgba(255,255,255,.2)}

.city-body{background:#fff}
.city-layout{display:grid;grid-template-columns:1.4fr .9fr;gap:40px;align-items:start}
.city-content h2{font-size:24px;color:#061f4a;margin:0 0 12px;letter-spacing:-.01em}
.city-content h2:not(:first-child){margin-top:34px}
.city-content p{font-size:15px;line-height:1.65;color:#3a4d6c;margin:0 0 14px}
.city-content ul{margin:0 0 16px;padding-left:0;list-style:none}
.city-content ul li{font-size:14.5px;line-height:1.5;color:#3a4d6c;margin:9px 0;display:flex;gap:9px;align-items:flex-start}
.city-content ul li:before{content:"✓";color:#39b046;font-weight:800;margin-top:1px}
.city-aside{position:sticky;top:104px;display:flex;flex-direction:column;gap:20px}
.map-card{border:1px solid #dce8f4;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm);background:#fff}
.map-card iframe{width:100%;height:280px;border:0;display:block}
.map-card .map-label{padding:13px 16px;font-size:13px;color:#33486a;display:flex;align-items:center;gap:8px;font-weight:600;flex-wrap:wrap}
.map-card .map-label a{color:#0655c5;text-decoration:underline}
.map-pin{color:#0a7cf3}
.aside-cta{background:linear-gradient(135deg,#006eec,#00bcf2);color:#fff;border-radius:16px;padding:24px;box-shadow:var(--shadow-sm)}
.aside-cta h3{margin:0 0 8px;font-size:18px;color:#fff}
.aside-cta p{font-size:13.5px;line-height:1.45;margin:0 0 14px;opacity:.95}
.aside-cta .phone{font-size:20px;font-weight:800;display:flex;align-items:center;gap:8px;margin-bottom:14px;color:#fff}
.aside-cta .btn{width:100%}

.city-services{background:#f7fbff}
.city-services .service-grid{grid-template-columns:repeat(3,1fr)}
.nearby{background:#fff}
.nearby-grid{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:880px;margin:0 auto}
.nearby-grid a{font-size:13.5px;font-weight:600;color:#0655c5;background:#eef4fb;border:1px solid #d7e7f6;padding:9px 16px;border-radius:99px;transition:background .15s,transform .12s}
.nearby-grid a:hover{background:#dceafb;transform:translateY(-1px)}
.city-faq{background:#f7fbff}
.city-faq .faq-card{max-width:760px;margin:0 auto;border:1px solid #dce8f4;border-radius:16px;box-shadow:var(--shadow-sm);padding:14px 26px}

/* ---------- Responsive ---------- */
@media(max-width:1000px){
  .container{width:calc(100% - 32px)}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:#fff;border-top:1px solid #e9f1f8;box-shadow:var(--shadow);padding:6px 24px 14px;align-items:stretch}
  .nav.open{display:flex}
  .nav a{padding:13px 0;border-bottom:1px solid #eef4fb}
  .book-btn{display:none}
  .menu-toggle{display:block}
  .site-header{position:sticky}
  .header-inner{position:relative}
  .hero-image{width:100%;height:46%;top:auto;bottom:0}
  .hero::before{background:linear-gradient(180deg,#eef7ff 0%,rgba(238,247,255,.92) 50%,rgba(238,247,255,.15) 100%)}
  .hero-inner{min-height:auto;padding:40px 0 56vw}
  .hero-copy{width:100%}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .city-services .service-grid{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:1fr}
  .arrow{display:none}
  .report-grid,.bottom-grid,.form-wrap{grid-template-columns:1fr}
  .city-layout{grid-template-columns:1fr}
  .city-aside{position:static}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .topbar-inner{flex-direction:column;align-items:flex-start;gap:6px}
  .top-points{gap:14px}
  .hero-features{grid-template-columns:repeat(2,1fr)}
  .service-grid,.city-services .service-grid{grid-template-columns:1fr}
  form{grid-template-columns:1fr}
  .field{grid-column:1/-1!important}
  .sample,.area{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .hero-actions{flex-direction:column;align-items:stretch}
  .btn{width:100%}
  .section{padding:48px 0}
}
@media(prefers-reduced-motion:reduce){
  *{transition:none!important;scroll-behavior:auto!important}
}

/* ---------- Content / legal / article pages ---------- */
.doc-body{background:#fff}
.doc-wrap{max-width:820px;margin:0 auto}
.doc-meta{font-size:13px;color:#7488a3;margin:0 0 28px}
.doc-toc{background:#f4faff;border:1px solid #dbe8f4;border-radius:14px;padding:20px 24px;margin:0 0 34px}
.doc-toc h2{font-size:15px;margin:0 0 12px;color:#061f4a;text-transform:uppercase;letter-spacing:.04em}
.doc-toc ol{margin:0;padding-left:20px;columns:2;column-gap:30px}
.doc-toc li{font-size:14px;line-height:1.7;break-inside:avoid}
.doc-toc a{color:#0655c5}
.doc-toc a:hover{text-decoration:underline}
.doc-wrap h2{font-size:23px;color:#061f4a;margin:36px 0 12px;letter-spacing:-.01em;scroll-margin-top:104px}
.doc-wrap h3{font-size:17px;color:#0b2a55;margin:22px 0 8px}
.doc-wrap p{font-size:15px;line-height:1.7;color:#3a4d6c;margin:0 0 14px}
.doc-wrap ul,.doc-wrap ol{margin:0 0 16px;padding-left:0;list-style:none}
.doc-wrap ol.numbered{padding-left:22px;list-style:decimal}
.doc-wrap ol.numbered li{margin:8px 0;padding-left:6px}
.doc-wrap ul li{font-size:15px;line-height:1.6;color:#3a4d6c;margin:9px 0;display:flex;gap:10px;align-items:flex-start}
.doc-wrap ul li:before{content:"✓";color:#39b046;font-weight:800;margin-top:1px}
.doc-wrap ul.plain li:before{content:"•";color:#0a7cf3}
.doc-wrap a.inline{color:#0655c5;text-decoration:underline}
.callout{background:linear-gradient(135deg,#eef7ff,#f4faff);border-left:4px solid #0a6de4;border-radius:10px;padding:16px 20px;margin:0 0 18px}
.callout p{margin:0;font-size:14.5px;color:#23406a}
.result-card{border:1px solid #dce8f4;border-radius:14px;box-shadow:var(--shadow-sm);padding:20px 22px;margin:0 0 16px}
.result-card h3{margin-top:0;display:flex;align-items:center;gap:10px}
.tag{font-size:12px;font-weight:800;padding:3px 10px;border-radius:99px;color:#fff}
.tag.low{background:#39b046}.tag.mod{background:#e8a300}.tag.high{background:#d9453c}
.prep-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0 0 18px}
.prep-card{border:1px solid #dce8f4;border-radius:14px;box-shadow:var(--shadow-sm);padding:20px 22px}
.prep-card h3{margin-top:0}
@media(max-width:700px){.doc-toc ol{columns:1}.prep-grid{grid-template-columns:1fr}}

/* ---------- Sample Report page ---------- */
.report-intro{background:#fff}
.report-intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.report-intro h2{font-size:26px;color:#061f4a;margin:0 0 14px;letter-spacing:-.01em}
.report-intro p{font-size:15px;line-height:1.65;color:#3a4d6c;margin:0 0 14px}
.report-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}
.report-cover{border:1px solid #dce8f4;border-radius:16px;box-shadow:var(--shadow);overflow:hidden;background:#fff}
.report-cover img{width:100%;display:block}
.report-highlights{background:#f7fbff}
.hl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.hl-card{background:#fff;border:1px solid #dce8f4;border-radius:14px;box-shadow:var(--shadow-sm);padding:24px 22px}
.hl-card .hl-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;color:#fff;font-size:22px;margin-bottom:14px}
.hl-card h3{font-size:17px;color:#061f4a;margin:0 0 8px}
.hl-card p{font-size:14px;line-height:1.55;color:#48597a;margin:0}
.report-pages{background:#fff}
.pages-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.page-thumb{border:1px solid #dce8f4;border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden;background:#fff;transition:transform .15s,box-shadow .15s}
.page-thumb:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.page-thumb img{width:100%;display:block;border-bottom:1px solid #eef4fb}
.page-thumb span{display:block;text-align:center;font-size:12.5px;font-weight:700;color:#33486a;padding:10px}
.report-note{max-width:820px;margin:0 auto}
@media(max-width:1000px){.report-intro-grid{grid-template-columns:1fr}.hl-grid{grid-template-columns:1fr}.pages-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.pages-grid{grid-template-columns:1fr}}
