/* Nevtis homepage — editorial field-service design */
.home {
  --home-red: var(--red);
  --home-red-dark: var(--red-hover);
  --home-navy: var(--navy);
  --home-ink: var(--ink);
  --home-muted: var(--text-muted);
  --home-line: #dedede;
  --home-cream: #f8f9fb;
  background: #fff;
  color: var(--home-ink);
  overflow: hidden;
}
.home h1,.home h2,.home h3 { color: inherit; }
.home a { transition: color .2s ease,background .2s ease,border-color .2s ease; }
.home-section { padding: clamp(4.5rem,8vw,8rem) 0; }
.home-kicker { display:flex;align-items:center;gap:.8rem;color:var(--home-red);font-family:var(--font-body);font-size:.74rem;font-weight:700;letter-spacing:.18em;line-height:1.4;margin:0 0 1.3rem;text-transform:uppercase; }
.home-kicker--light { color:#fff;justify-content:center; }
.home-kicker-line { display:block;width:28px;height:1px;background:rgba(255,255,255,.65); }
.home h2 { font-family:var(--font-heading);font-size:clamp(2.6rem,4.5vw,4.8rem);font-weight:700;letter-spacing:-.048em;line-height:1.06; }
.home h2 em,.home h1 em { font-style:normal;font-weight:700;color:var(--home-red); }
.home-hero h1 em,.home-final h2 em { color:#fff; }
.home-button { display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-height:58px;padding:.95rem 1.5rem;font-family:var(--font-body);font-weight:700;font-size:.88rem;letter-spacing:.02em;line-height:1.2;text-align:left;border-radius:var(--radius-sm); }
.home-button span { font-size:1.2rem;font-weight:400;line-height:1; }
.home-button--red { background:var(--home-red);border:1px solid var(--home-red);color:#fff; }
.home-button--red:hover { background:var(--home-red-dark);border-color:var(--home-red-dark);color:#fff; }
.home-button--ghost { border:1px solid rgba(255,255,255,.58);color:#fff; }
.home-button--ghost:hover { background:rgba(255,255,255,.14);color:#fff; }
.home-button--light { background:#fff;border:1px solid #fff;color:var(--home-red-dark); }
.home-button--light:hover { background:#f3ece9;color:var(--home-red-dark); }
.home-text-link { display:inline-flex;align-items:center;gap:1.8rem;padding:0 0 .45rem;border-bottom:2px solid var(--home-red);color:var(--home-ink);font-size:.85rem;font-weight:700; }
.home-text-link:hover { color:var(--home-red); }
.home-text-link span { color:var(--home-red);font-size:1.15rem;font-weight:400;line-height:1; }

/* Hero: a field of navy, abstract stars and restrained flag stripes */
.home-hero { background:var(--home-navy);color:#fff;position:relative;isolation:isolate;text-align:center; }
.home-hero::before { content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 0%,rgba(80,104,133,.22),transparent 57%); }
.home-hero-inner { position:relative;z-index:2;padding-top:clamp(4rem,5vw,5rem);padding-bottom:clamp(4rem,5vw,5rem); }
.home-hero-stars { position:absolute;inset:0;max-width:1200px;margin:auto;pointer-events:none; }
.home-hero-stars span { position:absolute;width:4px;height:4px;background:#fff;opacity:.55;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%); }
.home-hero-stars span:nth-child(1){top:13%;left:9%}.home-hero-stars span:nth-child(2){top:27%;left:18%}.home-hero-stars span:nth-child(3){top:48%;left:8%}.home-hero-stars span:nth-child(4){top:70%;left:15%}.home-hero-stars span:nth-child(5){top:83%;left:29%}.home-hero-stars span:nth-child(6){top:16%;left:34%}.home-hero-stars span:nth-child(7){top:10%;left:57%}.home-hero-stars span:nth-child(8){top:22%;left:79%}.home-hero-stars span:nth-child(9){top:45%;left:92%}.home-hero-stars span:nth-child(10){top:68%;left:84%}.home-hero-stars span:nth-child(11){top:83%;left:68%}.home-hero-stars span:nth-child(12){top:34%;left:6%}.home-hero-stars span:nth-child(13){top:15%;left:92%}.home-hero-stars span:nth-child(14){top:87%;left:94%}.home-hero-stars span:nth-child(15){top:72%;left:4%}
.home-hero h1 { max-width:1030px;margin:0 auto 1.3rem;color:#fff;font-family:var(--font-heading);font-size:clamp(3.65rem,6vw,6.3rem);font-weight:700;letter-spacing:-.065em;line-height:1; }
.home-hero h1 em { color:#f2dfe0; }
.home-hero-lead { max-width:690px;margin:0 auto;color:#d6dce4;font-size:clamp(1.04rem,1.5vw,1.24rem);line-height:1.8; }
.home-hero-actions { display:flex;justify-content:center;flex-wrap:wrap;gap:.8rem;margin-top:2.25rem; }
.home-hero-note { margin:1.8rem 0 0;color:#b8c4d2;font-size:.75rem;font-weight:600;letter-spacing:.075em;text-transform:uppercase; }
.home-hero-note span { color:#d8a3a7;margin:0 .6rem; }
.home-hero-stripes { height:14px;background:#fff; }
.home-hero-stripes span { display:block;height:5px;background:var(--home-red); }
.home-hero-stripes span + span { height:9px;background:#fff; }

/* Contact strip */
.home-contact-strip { background:var(--home-red);color:#fff; }
.home-contact-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;padding-top:.8rem;padding-bottom:.8rem; }
.home-contact-item { min-height:110px;display:flex;align-items:center;gap:1rem;padding:1.4rem 1.25rem;color:#fff;min-width:0;border:1px solid rgba(255,255,255,.23);border-radius:var(--radius-md); }
.home-contact-item:hover { background:rgba(80,0,0,.13);color:#fff; }
.home-contact-item > span:nth-child(2) { min-width:0; }
.home-contact-item small { display:block;margin-bottom:.25rem;font-size:.64rem;font-weight:700;letter-spacing:.15em;opacity:.8; }
.home-contact-item strong { display:block;font-size:clamp(.86rem,1.22vw,1.02rem);line-height:1.2;white-space:nowrap; }
.home-contact-icon { width:36px;height:36px;flex:none;display:grid;place-items:center;border:1px solid rgba(255,255,255,.65);border-radius:50%;font-size:.67rem;font-weight:700; }
.home-contact-arrow { margin-left:auto;font-size:1.1rem;opacity:.78; }

/* Request and guides */
.home-request { background:#fff;scroll-margin-top:20px; }
.home-section-intro { max-width:720px;margin:0 auto 3.5rem;text-align:center; }
.home-section-intro .home-kicker { justify-content:center; }
.home-section-intro h2 { margin-bottom:1.25rem; }
.home-section-intro > p:last-child { color:var(--home-muted);font-size:1.09rem;line-height:1.75; }
.home-request-grid { display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:clamp(2.5rem,6vw,6rem);align-items:start; }
.home-panel-heading { display:flex;align-items:center;gap:1.25rem;margin-bottom:1.3rem; }
.home-panel-number { white-space:nowrap;color:var(--home-red);font-size:.7rem;font-weight:700;letter-spacing:.15em; }
.home-panel-rule { flex:1;height:1px;background:var(--home-line); }
.home-request-grid h3 { margin:0 0 .6rem;font-family:var(--font-heading);font-size:clamp(1.75rem,2.4vw,2.4rem);letter-spacing:-.035em;line-height:1.15; }
.home-panel-desc { max-width:520px;margin:0 0 1.65rem;color:var(--home-muted);font-size:.98rem;line-height:1.7; }
.home-request-form .b-form-card { padding:0;background:transparent;border:0;box-shadow:none; }
.home-request-form .btn-primary,.home-request-form .b-submit { background:var(--home-red);border-color:var(--home-red);color:#fff; }
.home-request-form .btn-primary:hover,.home-request-form .b-submit:hover { background:var(--home-red-dark);border-color:var(--home-red-dark); }
.home-request-form .form-input:focus { border-color:var(--home-red); }
.home-guide-list { display:grid;gap:.75rem; }
.home-guide { display:grid;grid-template-columns:96px 1fr 1rem;gap:1rem;align-items:start;padding:1rem;border:1px solid var(--home-line);border-radius:var(--radius-md);color:var(--home-ink); }
.home-guide:hover { color:var(--home-red); }
.home-guide-thumb { width:96px;height:88px;object-fit:cover;border-radius:var(--radius-sm); }
.home-guide small { display:block;margin-bottom:.42rem;color:var(--home-red);font-size:.65rem;font-weight:700;letter-spacing:.15em; }
.home-guide strong { display:block;font-family:var(--font-heading);font-size:1.32rem;line-height:1.2;letter-spacing:-.02em; }
.home-guide span span { display:block;margin-top:.45rem;color:var(--home-muted);font-size:.88rem;line-height:1.5; }
.home-guide b { font-size:1.1rem;font-weight:400; }
.home-helpful > .home-text-link { margin-top:1.7rem; }
.home-help-note { display:flex;align-items:center;gap:1.2rem;margin-top:2.7rem;padding:1.5rem;background:var(--home-cream);border-left:3px solid var(--home-red);border-radius:var(--radius-md); }
.home-help-note-mark { color:var(--home-red);font-family:var(--font-heading);font-size:2.6rem;font-weight:700;line-height:1; }
.home-help-note p { margin:0;color:var(--home-muted);font-size:.87rem;line-height:1.65; }
.home-help-note strong { color:var(--home-ink); }
.home-help-note a { color:var(--home-red);text-decoration:underline;text-underline-offset:3px; }

/* About */
.home-about { background:var(--home-cream); }
.home-about-grid { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(3rem,7vw,7rem);align-items:center; }
.home-about-image { position:relative; }
.home-about-image::before { content:"";position:absolute;z-index:0;left:-16px;top:-16px;width:45%;height:45%;border-top:5px solid var(--home-red);border-left:5px solid var(--home-red); }
.home-about-image img { position:relative;z-index:1;width:100%;height:clamp(410px,44vw,610px);object-fit:cover;object-position:center;filter:saturate(.85);border-radius:var(--radius-lg); }
.home-image-caption { position:relative;z-index:1;display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;color:var(--home-muted);font-size:.67rem;font-weight:700;letter-spacing:.13em; }
.home-about-copy h2 { margin:0 0 1.6rem; }
.home-about-copy > p:not(.home-kicker) { color:var(--home-muted);line-height:1.8;margin-bottom:1.15rem; }
.home-about-copy .home-about-lead { color:var(--home-ink)!important;font-size:1.13rem;font-weight:600; }
.home-about-rule { height:1px;background:var(--home-line);margin:2rem 0; }
.home-about-mini { display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin-bottom:2.2rem; }
.home-about-mini span { display:block;color:var(--home-red);font-size:.72rem;font-weight:700;margin-bottom:.5rem; }
.home-about-mini strong { display:block;font-size:.89rem;line-height:1.4; }
.home-about-mini p { margin:.35rem 0 0;color:var(--home-muted);font-size:.82rem;line-height:1.5; }

/* Location and service availability */
.home-area { background:#fff;border-bottom:1px solid var(--home-line); }
.home-area-grid { display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2.5rem,8vw,8rem);align-items:center; }
.home-area-copy h2 { max-width:650px;margin-bottom:1.4rem; }
.home-area-copy > p:not(.home-kicker) { max-width:580px;color:var(--home-muted);font-size:1.06rem;line-height:1.75;margin-bottom:2rem; }
.home-area-card { padding:clamp(2rem,4vw,3.5rem);background:var(--home-cream);border-top:5px solid var(--home-red);border-radius:var(--radius-lg); }
.home-area-label { color:var(--home-red);font-size:.7rem;font-weight:700;letter-spacing:.14em; }
.home-area-card h3 { margin:1.8rem 0 1rem;font-size:clamp(1.6rem,3vw,2.25rem); }
.home-area-card address { font-style:normal;font-size:1.03rem;font-weight:600;line-height:1.65; }
.home-area-card p { margin:1.6rem 0;color:var(--home-muted);line-height:1.6; }
.home-area-card a { display:inline-flex;gap:1.3rem;color:var(--home-red);font-weight:700;border-bottom:2px solid var(--home-red);padding-bottom:.35rem; }

/* Included common problems section */
.home .problems-merged .pm-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin-bottom:3rem; }
.home .problems-merged .pm-card { min-width:0;background:#fff;border:1px solid var(--home-line);border-radius:var(--radius-lg);overflow:hidden; }
.home .problems-merged .pm-card img { display:block;width:100%;object-fit:cover;border-bottom:1px solid var(--home-line); }
.home .problems-merged .pm-data h3 { margin-bottom:.7rem; }
.home .problems-merged .pm-data p { font-size:.94rem; }
.home .problems-merged .pm-action { text-align:center; }
.home .problems-merged { background:#fff;padding:clamp(4.5rem,8vw,8rem) 0;border-top:0; }
.home .problems-merged .sec-header { max-width:720px;margin-bottom:3rem; }
.home .problems-merged .eyebrow { color:var(--home-red);font-size:.74rem;letter-spacing:.15em; }
.home .problems-merged .sec-title { font-size:clamp(2.5rem,4vw,4rem);letter-spacing:-.04em; }
.home .problems-merged .pm-card img { aspect-ratio: 1.55;filter:saturate(.85);border-color:var(--home-line); }
.home .problems-merged .pm-data { padding:1.65rem; }
.home .problems-merged .pm-data h3 { font-size:1.35rem;letter-spacing:-.02em; }
.home .problems-merged .pm-data p { color:var(--home-muted);line-height:1.65; }
.home .problems-merged .btn-primary { background:var(--home-red);border-color:var(--home-red); }
.home .problems-merged .btn-primary:hover { background:var(--home-red-dark);border-color:var(--home-red-dark); }

/* Why and process */
.home-why { background:var(--home-cream); }
.home-why-heading { display:grid;grid-template-columns:1.3fr .7fr;gap:4rem;align-items:end;margin-bottom:3.5rem; }
.home-why-heading > p { max-width:400px;color:var(--home-muted);font-size:1.06rem;line-height:1.75; }
.home-why-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:1rem; }
.home-why-card { min-height:270px;padding:2rem 1.5rem;border:1px solid var(--home-line);border-radius:var(--radius-lg);background:#fff; }
.home-why-card > span { display:block;margin-bottom:3rem;color:var(--home-red);font-size:.76rem;font-weight:700;letter-spacing:.1em; }
.home-why-card h3 { margin-bottom:.75rem;font-family:var(--font-heading);font-size:1.48rem;letter-spacing:-.03em; }
.home-why-card p { color:var(--home-muted);font-size:.91rem;line-height:1.7; }
.home-confidence { background:#fff; }
.home-confidence-grid { display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,8rem);align-items:start; }
.home-confidence-copy { position:sticky;top:2rem; }
.home-confidence-copy h2 { margin-bottom:1.5rem; }
.home-confidence-copy > p:not(.home-kicker) { max-width:470px;margin-bottom:2rem;color:var(--home-muted);font-size:1.05rem;line-height:1.75; }
.home-steps { display:grid;gap:.85rem; }
.home-step { display:grid;grid-template-columns:3rem 1fr;gap:1.2rem;padding:1.5rem;border:1px solid var(--home-line);border-radius:var(--radius-md); }
.home-step > span { color:var(--home-red);font-family:var(--font-heading);font-size:1.8rem;line-height:1; }
.home-step h3 { margin-bottom:.65rem;font-family:var(--font-heading);font-size:1.5rem;letter-spacing:-.025em; }
.home-step p { color:var(--home-muted);font-size:.94rem;line-height:1.7; }

/* FAQ and closing */
.home-faq { background:var(--home-cream); }
.home-faq-grid { display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);align-items:start; }
.home-faq-intro { position:sticky;top:2rem; }
.home-faq-intro h2 { margin-bottom:1.25rem; }
.home-faq-intro > p:not(.home-kicker) { color:var(--home-muted);font-size:1.03rem;line-height:1.7;margin-bottom:2rem; }
.home-faq-list { display:grid;gap:.75rem; }
.home-faq-item { border:1px solid var(--home-line);border-radius:var(--radius-md);background:#fff;padding:0 1.25rem; }
.home-faq-item summary { display:flex;justify-content:space-between;align-items:center;gap:1rem;list-style:none;cursor:pointer;padding:1.45rem .1rem;color:var(--home-ink);font-family:var(--font-heading);font-size:1.2rem;font-weight:600;line-height:1.3; }
.home-faq-item summary::-webkit-details-marker { display:none; }
.home-faq-item summary::after { content:"+";display:grid;place-items:center;width:28px;height:28px;flex:none;color:var(--home-red);font-family:var(--font-body);font-size:1.45rem;font-weight:400; }
.home-faq-item[open] summary::after { content:"−"; }
.home-faq-item p { padding:0 2.5rem 1.5rem .1rem;color:var(--home-muted);font-size:.95rem;line-height:1.75; }
.home-final { position:relative;background:var(--home-red);color:#fff;text-align:center;padding:clamp(5.5rem,9vw,9rem) 0; }
.home-final::before,.home-final::after { content:"";position:absolute;top:0;bottom:0;width:1px;background:rgba(255,255,255,.13);pointer-events:none; }
.home-final::before { left:10%; }.home-final::after { right:10%; }
.home-final-inner { position:relative;z-index:1; }
.home-final h2 { max-width:850px;margin:0 auto 1.3rem;color:#fff;font-size:clamp(3.1rem,6vw,6rem); }
.home-final-inner > p:not(.home-kicker) { max-width:570px;margin:0 auto;color:#ffe4e5;font-size:1.12rem;line-height:1.7; }

@media (max-width: 1050px) {
  .home-contact-grid { grid-template-columns:repeat(2,1fr); }
  .home-why-grid { grid-template-columns:repeat(2,1fr); }
  .home .problems-merged .pm-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767px) {
  .home-section { padding:4.5rem 0; }
  .home-hero-inner { padding-top:3.75rem;padding-bottom:3.75rem; }
  .home-hero h1 { font-size:clamp(3.4rem,12vw,5rem); }
  .home-hero-stars span { opacity:.3; }
  .home-hero-lead { font-size:1rem;line-height:1.7; }
  .home-hero-note { font-size:.62rem;line-height:1.8; }
  .home-contact-item { min-height:92px;padding:1.15rem .8rem;gap:.65rem; }
  .home-contact-icon { width:29px;height:29px;font-size:.59rem; }
  .home-contact-item strong { font-size:.81rem; }
  .home-contact-item small { font-size:.56rem; }
  .home-contact-arrow { display:none; }
  .home-section-intro { text-align:left;margin-bottom:2.8rem; }
  .home-section-intro .home-kicker { justify-content:flex-start; }
  .home-request-grid,.home-about-grid,.home-area-grid,.home-why-heading,.home-confidence-grid,.home-faq-grid { grid-template-columns:1fr; }
  .home-request-grid { gap:4rem; }
  .home-about-grid { gap:2rem; }
  .home-about-image img { height:auto;max-height:490px;aspect-ratio:1/1;object-fit:cover; }
  .home-about-image::before { left:-8px;top:-8px; }
  .home-why-heading { gap:1.25rem;margin-bottom:2.5rem; }
  .home-why-grid { grid-template-columns:1fr; }
  .home-confidence-grid,.home-faq-grid { gap:2.4rem; }
  .home-confidence-copy,.home-faq-intro { position:static; }
  .home .problems-merged { padding:4.5rem 0; }
  .home .problems-merged .pm-grid { grid-template-columns:1fr; }
}
@media (max-width: 480px) {
  .home-hero-actions { flex-direction:column;align-items:stretch; }
  .home-button { width:100%; }
  .home-hero-note span { margin:0 .24rem; }
  .home-contact-item { padding:1rem .45rem; }
  .home-contact-icon { display:none; }
  .home-contact-item strong { white-space:normal; }
  .home-why-card { min-height:0;padding:1.5rem; }
  .home-why-card > span { margin-bottom:1.2rem; }
  .home-about-mini { gap:.8rem; }
  .home-image-caption { font-size:.55rem; }
  .home-guide { grid-template-columns:76px 1fr 1rem;gap:.75rem; }
  .home-guide-thumb { width:76px;height:76px; }
}
@media (prefers-reduced-motion: reduce) {
  .home a { transition:none; }
}