/* About page: story, how we work, insurance claims and service areas. */
.about-hero { padding:140px 0 0; background:linear-gradient(#ecf1ed,var(--paper) 70%); }
.about-hero .breadcrumb { margin-bottom:48px; }
.about-hero-layout { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:clamp(32px,5vw,80px); align-items:center; }
.about-hero-copy h1 { margin:0; font-size:clamp(44px,5.4vw,76px); font-weight:500; line-height:1.02; letter-spacing:-.05em; }
.about-hero-copy h1.is-compact { font-size:clamp(38px,4.2vw,58px); line-height:1.06; letter-spacing:-.045em; }
.about-hero-copy p { max-width:470px; margin:26px 0 0; font-size:16px; line-height:1.65; }
.about-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px 26px; margin-top:34px; }
.about-call { display:inline-flex; align-items:center; gap:10px; font-size:14px; font-weight:500; }
.about-call .icon { width:18px; height:18px; color:var(--muted); }
.about-call:hover { text-decoration:underline; text-underline-offset:4px; }
.about-hero-photo { position:relative; margin:0; overflow:hidden; border-radius:30px; aspect-ratio:6/5; background:#dfe6e2; box-shadow:0 50px 90px -60px #0b1816a6; }
.about-hero-photo img { width:100%; height:100%; object-fit:cover; }
.about-hero-photo figcaption,.about-crew figcaption { position:absolute; left:18px; bottom:18px; display:grid; gap:2px; padding:14px 18px; border-radius:16px; background:#ffffffe6; backdrop-filter:blur(10px); }
.about-hero-photo figcaption strong,.about-crew figcaption strong { font-size:15px; font-weight:560; letter-spacing:-.02em; }
.about-hero-photo figcaption span,.about-crew figcaption span { color:var(--muted); font-size:12px; }

.about-facts { padding:56px 0 0; }
.about-facts ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; padding:0; list-style:none; border-block:1px solid var(--line); }
.about-facts li { display:grid; align-content:start; gap:4px; padding:28px 24px 28px 0; }
.about-facts li+li { padding-left:24px; border-left:1px solid var(--line); }
.about-fact-icon { display:grid; place-items:center; width:38px; height:38px; margin-bottom:12px; border-radius:11px; background:#e8eeea; color:#173342; }
.about-fact-icon .icon { width:19px; height:19px; }
.about-facts strong { font-size:15px; font-weight:560; letter-spacing:-.015em; }
.about-facts li>span:last-child { color:var(--muted); font-size:13px; line-height:1.5; }

.about-heading { max-width:640px; margin-bottom:48px; }
.about-heading h2 { margin:0; }
.about-heading-split { display:flex; max-width:none; justify-content:space-between; align-items:end; gap:40px; }
.about-heading-split p { max-width:380px; margin:0; }
.about-value-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:0; padding:0; list-style:none; }
.about-value-list li { padding:30px 28px 32px; border:1px solid #e3e8e5; border-radius:24px; background:#fff; }
.about-value-icon { display:grid; place-items:center; width:44px; height:44px; margin-bottom:26px; border-radius:13px; background:#173342; color:#fff; }
.about-value-icon .icon { width:21px; height:21px; }
.about-value-list h3 { margin:0 0 10px; font-size:20px; font-weight:500; letter-spacing:-.03em; }
.about-value-list p { margin:0; font-size:14px; line-height:1.65; }
.about-values-layout { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:18px; }
.about-values-layout .about-value-list { grid-template-columns:1fr; grid-auto-rows:1fr; }
.about-values-layout .about-value-list li { display:grid; grid-template-columns:44px minmax(0,1fr); align-content:center; column-gap:22px; }
.about-values-layout .about-value-icon { grid-row:span 2; margin:0; }
.about-crew { position:relative; margin:0; overflow:hidden; border-radius:30px; aspect-ratio:4/5; background:#dfe6e2; box-shadow:0 50px 90px -60px #0b1816a6; }
.about-crew video { display:block; width:100%; height:100%; object-fit:cover; object-position:50% 30%; }
.about-crew-toggle { position:absolute; top:16px; right:16px; display:grid; place-items:center; width:40px; height:40px; padding:0; border:0; border-radius:50%; background:#ffffffd9; color:var(--ink); backdrop-filter:blur(10px); cursor:pointer; }
.about-crew-toggle .icon { width:16px; height:16px; }
.about-crew-toggle .icon:last-child,.about-crew.is-paused .about-crew-toggle .icon:first-child { display:none; }
.about-crew.is-paused .about-crew-toggle .icon:last-child { display:block; }

.about-claims { padding:112px 0; background:radial-gradient(90% 70% at 100% 0,#284b5b 0,#173342 55%,#122935 100%); color:#fff; }
.about-hero+.about-claims { margin-top:clamp(48px,7vw,96px); }
.about-claims .eyebrow { color:#ffffff99; }
.about-claims-head { display:grid; grid-template-columns:minmax(0,6fr) minmax(0,4fr); gap:40px; align-items:end; margin-bottom:56px; }
.about-claims-head h2 { max-width:620px; margin:0; color:#fff; }
.about-claims-head p { margin:0; color:#ffffffb3; font-size:15px; line-height:1.65; }
.claim-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:0; padding:0; list-style:none; counter-reset:none; }
.claim-steps li { position:relative; padding:26px 24px 28px; border:1px solid #ffffff1f; border-radius:22px; background:#ffffff0a; }
.claim-step-number { display:block; margin-bottom:40px; color:#c8963a; font-size:13px; font-weight:600; letter-spacing:.06em; }
.claim-steps h3 { margin:0 0 10px; color:#fff; font-size:18px; font-weight:500; letter-spacing:-.025em; }
.claim-steps p { margin:0; color:#ffffffa6; font-size:13.5px; line-height:1.6; }
.about-claims-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:14px; }
.claim-card { padding:30px 28px; border-radius:22px; background:#fff; color:var(--ink); }
.claim-card h3 { margin:0 0 12px; font-size:20px; font-weight:500; letter-spacing:-.03em; }
.claim-card p { margin:0; font-size:14px; line-height:1.65; }
.claim-damage { display:flex; flex-wrap:wrap; gap:8px; margin:4px 0 26px; padding:0; list-style:none; }
.claim-damage li { display:inline-flex; align-items:center; gap:8px; padding:9px 14px 9px 11px; border-radius:999px; background:#eef2f0; font-size:13px; }
.claim-damage .icon { width:16px; height:16px; color:#173342; }
.claim-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; }
.claim-actions>a:last-child { color:var(--muted); font-size:13px; }
.claim-actions>a:last-child:hover { color:var(--ink); text-decoration:underline; text-underline-offset:3px; }
.claim-story-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:0; padding:0; list-style:none; }
.claim-story-list .review-card { flex:none; width:auto; min-width:0; }
.claim-more { margin:28px 0 0; font-size:14px; }
.claim-more a { color:var(--ink); text-decoration:underline; text-underline-offset:3px; }
.about-values+.reviews-section { padding-top:0; }
.button.button-light { background:#173342; border-color:#173342; }
.button.button-light:hover { background:#0f2530; }


@media (max-width:1000px) {
 .about-facts ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .about-facts li:nth-child(3) { padding-left:0; border-left:0; }
 .about-facts li:nth-child(n+3) { border-top:1px solid var(--line); }
 .claim-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .about-value-list,.claim-story-list { grid-template-columns:1fr; }
 .about-value-list li { display:grid; grid-template-columns:44px minmax(0,1fr); column-gap:20px; }
 .about-value-icon { grid-row:span 2; margin:0; }
}
@media (max-width:900px) {
 .about-hero { padding-top:110px; }
 .about-hero .breadcrumb { margin-bottom:36px; }
 .about-hero-layout,.about-claims-head,.about-claims-details { grid-template-columns:1fr; }
 .about-hero-photo { aspect-ratio:4/3; }
 .about-values-layout { grid-template-columns:1fr; }
 .about-values-layout .about-value-list { grid-auto-rows:auto; }
 .about-crew { width:100%; max-width:460px; margin-inline:auto; }
 .about-heading-split { display:block; }
 .about-heading-split p { margin-top:16px; }
 .about-claims { padding:80px 0; }
 .about-claims-head { gap:18px; margin-bottom:36px; }
}
@media (max-width:560px) {
 .about-facts ul { grid-template-columns:1fr; }
 .about-facts li,.about-facts li+li { padding:20px 0; border-left:0; }
 .about-facts li+li { border-top:1px solid var(--line); }
 .about-facts li { grid-template-columns:38px minmax(0,1fr); column-gap:16px; }
 .about-fact-icon { grid-row:span 2; margin:0; }
 .claim-steps { grid-template-columns:1fr; }
 .claim-step-number { margin-bottom:18px; }
 .about-value-list li,.claim-card { padding:24px 20px; }
 .about-hero-photo,.about-crew { border-radius:22px; }
}

@media (max-width:760px) {
 .about-heading { margin-inline:auto; text-align:center; }
 .about-heading-split p { margin-inline:auto; }
}