/* Shared visual rhythm: white content, graphite openings, GVM red accents. */
:root{--bleed:calc((min(1280px,100vw - 96px) - 100vw)/2)}
.home-page .hero,.service-hero{position:relative;isolation:isolate;color:#fff}
.home-page .hero::before,.service-hero::before{content:'';position:absolute;inset:0 var(--bleed);z-index:-1;background:var(--dark);border-bottom:4px solid var(--red)}
.home-page .hero{padding-block:56px}.home-page .hero h1 em{color:white}.home-page .hero .lead,.home-page .hero-bottom>span{color:#d4d6dc}.home-page .hero .eyebrow{color:#e0e2e6}.home-page .hero-bottom{border-color:#51545b}.home-page .hero .text-link:hover{color:white;text-decoration:underline;text-underline-offset:5px}.home-page .photo-hero{background:transparent}.home-page .photo-hero figcaption{background:transparent;color:#d4d6dc}.home-page .scope{margin-top:24px}
.service-hero{padding-block:36px 56px;margin-bottom:40px}.service-hero .breadcrumb,.service-hero .lead,.service-hero .service-boundary,.service-hero .document-language{color:#d4d6dc}.service-hero .eyebrow{color:#e0e2e6}.service-hero h1{max-width:1040px}.service-hero .breadcrumb a:hover{text-decoration:underline;text-underline-offset:5px}
.service-photo{border-top:4px solid var(--red);padding-top:0}.service-photo figcaption{padding-block:12px}.service-prep{border-top:0;padding-top:32px}.service-prep li{background:var(--paper);border-top:0;border-left:3px solid var(--red);padding:22px 24px;margin-bottom:12px}.service-prep li span{font-size:14px;font-weight:600}.service-prep li p{min-width:0}.service-page .documents{border-top:1px solid var(--line)}
.document-page .legal-toc{background:var(--paper);border-top:3px solid var(--red);padding:20px 22px}.legal-toc nav p{margin-bottom:12px}.legal-content h2{border-top:1px solid var(--line);padding-top:24px}.legal-content h2:first-child{border-top:0;padding-top:0}.legal-content a:hover{text-decoration-thickness:2px}
footer.wrap{position:relative;isolation:isolate;color:white;margin-top:0}footer.wrap::before{content:'';position:absolute;inset:0 var(--bleed);background:var(--dark);z-index:-1;border-top:4px solid var(--red)}
footer .company-contact,footer .company-contact>div,footer .footer-bottom{border-color:#51545b}footer .company-contact .eyebrow,footer .company-contact .hotline-note,footer .footer-documents .eyebrow,footer .footer-top strong{color:white}footer .company-contact p,footer .footer-identity p,footer .footer-bottom{color:#d4d6dc}footer .footer-about{color:white;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:5px}footer .company-contact a:hover,footer .footer-document-grid a:hover{color:white;text-decoration:underline;text-underline-offset:5px}footer .footer-document-grid a{color:#e0e2e6}
@media(max-width:1100px){:root{--bleed:-28px}}
@media(max-width:820px){.home-page .hero{padding-block:36px}.service-hero{padding-bottom:44px}}
@media(max-width:600px){:root{--bleed:-20px}.home-page .hero{padding-block:28px 36px}.service-hero{padding-block:28px 40px;margin-bottom:28px}.service-prep li{padding:18px;gap:18px}.document-page .legal-toc{padding:18px}.home-page .hero .text-link{line-height:1.5}}
@media print{.service-hero{color:var(--dark);margin-bottom:20px}.service-hero::before{display:none}.service-hero .lead,.service-hero .document-language{color:var(--dark)}.legal-content h2{border-top:0}}

.assurances{background:var(--paper);padding-block:76px}.assurance-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.assurance-card{padding:32px;background:white;border-top:3px solid var(--red);min-width:0}.assurance-tag{font-size:12px;font-weight:700;letter-spacing:.8px;color:var(--muted)}.assurance-card h3{font-size:28px;margin:14px 0 16px;letter-spacing:-.6px}.assurance-card>p{font-size:16px;color:var(--muted)}.iso-documents{display:grid;grid-template-columns:1fr 1fr;gap:24px}.iso-documents a{display:flex;flex-direction:column;align-items:center;padding:16px;border:1px solid var(--line);gap:16px}.iso-documents img{width:100%;height:210px;object-fit:contain;background:white}.iso-documents span,.recognition-grid span{font-size:14px;line-height:1.5;font-weight:600}.iso-documents a:hover,.recognition-grid a:hover{border-color:var(--red);color:var(--red)}.assurance-card .assurance-note{font-size:14px;margin:20px 0 0}.insurance-card{display:flex;flex-direction:column;align-items:flex-start}.assurance-card .insurance-amount{font-size:clamp(38px,4.5vw,62px);letter-spacing:-2px;margin:24px 0 8px}.insurance-amount span{font-size:24px;letter-spacing:0;font-weight:500}.insurance-partner{display:flex;align-items:center;gap:20px;padding-block:16px;margin-block:4px 12px}.insurance-partner img{width:56px;height:56px;object-fit:contain}.insurance-partner p{margin:0;font-size:17px;font-weight:600}.insurance-partner p span{font-size:14px;color:var(--muted);font-weight:400}.insurance-card .insurance-terms{font-size:15px;line-height:1.75;max-width:440px}.insurance-card .text-link{margin-top:auto;color:var(--red);min-height:44px}.recognitions-heading{margin-top:40px}.recognitions-heading h3{font-size:23px;margin-bottom:10px}.recognitions-heading p{font-size:15px;color:var(--muted)}.recognition-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.recognition-grid a{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:16px;background:white;border:1px solid var(--line);padding:24px 16px;text-align:center}.recognition-grid img{width:100%;height:130px;object-fit:contain;background:white}
@media(max-width:820px){.assurances{padding-block:56px}.assurance-grid{gap:24px}.assurance-card{padding:24px}.iso-documents{gap:12px}.iso-documents a{padding:12px}.iso-documents img{height:160px}.recognition-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.assurances{padding-block:48px}.assurance-grid{grid-template-columns:1fr}.assurance-card{padding:24px}.iso-documents img{height:150px}.insurance-card .insurance-amount{font-size:46px}.recognition-grid{gap:12px}.recognition-grid a{padding:20px 12px}.recognition-grid img{height:100px}.recognition-grid span{font-size:14px}}
