.damage-guide {
    --damage-ink: #102a43;
    --damage-muted: #52657a;
    --damage-line: #dce6ee;
    --damage-paper: #ffffff;
    --damage-canvas: #f3f7f8;
    --damage-primary: #006c68;
    --damage-primary-dark: #00514e;
    --damage-yellow: #fff3bf;
    --damage-orange: #fff0df;
    --damage-red: #b42318;
    --damage-red-bg: #fff0ef;
    --damage-shadow: 0 14px 34px rgba(15, 55, 70, .10);
    color: var(--damage-ink);
    background: var(--damage-canvas);
    padding-bottom: calc(5.5rem + env(safe-area-inset-bottom));
}

.damage-guide *, .damage-guide *::before, .damage-guide *::after { box-sizing: border-box; }
.damage-guide a { color: inherit; }
.damage-container { width: min(100% - 2rem, 1060px); margin: 0 auto; }
.damage-breadcrumb { padding: 1.15rem 0 .7rem; color: #597080; font-size: .82rem; }
.damage-breadcrumb a { color: #27626a; font-weight: 700; text-decoration: none; }
.damage-breadcrumb span { margin: 0 .4rem; color: #91a2ae; }
.damage-hero { overflow: hidden; background: var(--damage-paper); border: 1px solid var(--damage-line); border-radius: 1.35rem; box-shadow: var(--damage-shadow); }
.damage-hero__content { padding: clamp(1.45rem, 3vw, 3rem); }
.damage-kicker, .damage-section-kicker { margin: 0; color: var(--damage-primary); font-size: .74rem; font-weight: 900; letter-spacing: .12em; }
.damage-hero h1 { max-width: 780px; margin: .55rem 0 0; color: #08233b; font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 900; line-height: 1.2; letter-spacing: .015em; }
.damage-hero__lead { max-width: 730px; margin: 1rem 0 0; color: #345268; font-size: clamp(1rem, 2vw, 1.17rem); line-height: 1.9; }
.damage-hero__image { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.damage-image-note { margin: 0; padding: .55rem 1rem; color: #64748b; background: #f8fafc; font-size: .72rem; line-height: 1.55; }
.damage-main { padding: 1.35rem 0 2rem; }
.damage-section { margin-top: 1.25rem; padding: clamp(1.25rem, 2.6vw, 2rem); background: var(--damage-paper); border: 1px solid var(--damage-line); border-radius: 1.2rem; box-shadow: 0 6px 18px rgba(15, 55, 70, .04); }
.damage-section h2 { margin: .35rem 0 0; color: #102a43; font-size: clamp(1.35rem, 2.7vw, 2rem); font-weight: 900; line-height: 1.42; }
.damage-section h3 { margin: 1.45rem 0 .45rem; color: #123a53; font-size: 1.12rem; font-weight: 900; line-height: 1.55; }
.damage-section p, .damage-section li { color: var(--damage-muted); font-size: .96rem; line-height: 1.85; }
.damage-section p { margin: .65rem 0 0; }
.damage-section ul, .damage-section ol { margin: .65rem 0 0; padding-left: 1.3rem; }
.damage-section li + li { margin-top: .35rem; }
.damage-photo-first { margin-top: 1.25rem; padding: clamp(1.25rem, 2.8vw, 2.2rem); background: var(--damage-yellow); border: 2px solid #e8bf40; border-radius: 1.2rem; box-shadow: 0 9px 25px rgba(145, 104, 5, .11); }
.damage-photo-first h2 { margin: .4rem 0 0; color: #593b00; font-size: clamp(1.3rem, 2.8vw, 1.95rem); font-weight: 900; line-height: 1.42; }
.damage-photo-first p { margin: .75rem 0 0; color: #614b15; font-size: .96rem; line-height: 1.85; }
.damage-photo-first__caution { padding-top: .8rem; border-top: 1px solid rgba(132, 88, 0, .22); font-weight: 700; }
.damage-branch-grid { display: grid; gap: 1rem; margin-top: 1rem; }
.damage-branch-card { display: flex; flex-direction: column; padding: 1.25rem; border: 1px solid var(--damage-line); border-radius: 1rem; background: #fbfefd; text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.damage-branch-card:hover { transform: translateY(-2px); border-color: #5eb9ad; box-shadow: var(--damage-shadow); }
.damage-branch-card__icon { display: grid; width: 2.8rem; height: 2.8rem; place-items: center; border-radius: .85rem; color: #fff; background: var(--damage-primary); font-size: 1.35rem; font-weight: 900; }
.damage-branch-card h3 { margin: .85rem 0 0; color: #102a43; font-size: 1.22rem; font-weight: 900; }
.damage-branch-card p { flex: 1; margin: .45rem 0 1rem; color: var(--damage-muted); font-size: .91rem; line-height: 1.75; }
.damage-branch-card__cta { display: flex; align-items: center; justify-content: space-between; gap: .75rem; min-height: 3.2rem; margin-top: auto; padding: .72rem .85rem .72rem 1rem; color: #fff; border: 1px solid var(--damage-primary-dark); border-radius: .76rem; background: var(--damage-primary); box-shadow: 0 5px 12px rgba(0, 108, 104, .18); font-size: .94rem; font-weight: 900; line-height: 1.35; }
.damage-branch-card__cta > span:last-child { display: grid; width: 1.65rem; height: 1.65rem; flex: 0 0 1.65rem; place-items: center; border-radius: 50%; background: rgba(255, 255, 255, .2); font-size: 1.08rem; line-height: 1; transition: transform .18s ease, background-color .18s ease; }
.damage-branch-card:hover .damage-branch-card__cta, .damage-branch-card:focus-visible .damage-branch-card__cta { background: var(--damage-primary-dark); }
.damage-branch-card:hover .damage-branch-card__cta > span:last-child, .damage-branch-card:focus-visible .damage-branch-card__cta > span:last-child { transform: translateX(.18rem); background: rgba(255, 255, 255, .3); }
.damage-branch-card:focus-visible { outline: 3px solid #e8bf40; outline-offset: 3px; }
.damage-timeline { display: grid; gap: .8rem; margin-top: 1rem; }
.damage-step { display: grid; grid-template-columns: 2.35rem minmax(0, 1fr); gap: .85rem; align-items: start; padding: 1rem; background: #f8fbfc; border-radius: .85rem; }
.damage-step__number { display: grid; width: 2.35rem; height: 2.35rem; place-items: center; color: #fff; background: var(--damage-primary); border-radius: 50%; font-weight: 900; }
.damage-step h3 { margin: .05rem 0 0; font-size: 1rem; }
.damage-step p { margin: .25rem 0 0; }
.damage-contact-card { display: grid; gap: 1rem; margin-top: 1.25rem; padding: clamp(1.25rem, 2.8vw, 2rem); color: #fff; background: linear-gradient(132deg, #005a59, #097776); border-radius: 1.2rem; box-shadow: var(--damage-shadow); }
.damage-contact-card h2 { margin: .35rem 0 0; font-size: clamp(1.3rem, 2.5vw, 1.7rem); font-weight: 900; }
.damage-contact-card p { margin: .5rem 0 0; color: #d5f4f1; font-size: .88rem; line-height: 1.7; }
.damage-contact-card > div > a { display: inline-block; margin-top: .8rem; color: #fff; font-size: .86rem; font-weight: 800; }
.damage-contact-card__actions { display: grid; gap: .6rem; align-content: center; }
.damage-button { display: inline-flex; align-items: center; justify-content: center; min-height: 3rem; padding: .75rem 1rem; border-radius: .75rem; font-size: .9rem; font-weight: 900; text-align: center; text-decoration: none; }
.damage-button strong { margin-left: .5rem; font-size: 1rem; }
.damage-contact-card__actions .damage-button--phone,
.damage-contact-card__actions .damage-button--mail { color: #fff; border: 1px solid rgba(255,255,255,.65); }
.damage-status { margin-top: 1.25rem; padding: 1.25rem; border: 1px solid #bdd2ec; border-radius: 1rem; background: #f1f7ff; }
.damage-status h2 { margin: .25rem 0 0; color: #173c63; font-size: 1.25rem; font-weight: 900; }
.damage-status p { margin: .55rem 0 0; color: #395a79; font-size: .92rem; line-height: 1.8; }
.damage-status__links { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: .8rem; }
.damage-status__links a, .damage-link { color: #075c79; font-weight: 900; text-decoration: underline; text-underline-offset: .18em; }
.damage-panel { margin-top: 1rem; padding: 1rem; border-left: 4px solid #efaa3e; border-radius: .65rem; background: var(--damage-orange); }
.damage-panel--danger { border-color: #d92d20; background: var(--damage-red-bg); }
.damage-panel strong { display: block; color: #7a3100; font-size: 1rem; }
.damage-panel--danger strong { color: var(--damage-red); }
.damage-panel p { margin: .38rem 0 0; color: #714c31; }
.damage-panel--danger p { color: #7a2923; }
.damage-check-grid { display: grid; gap: .65rem; margin-top: 1rem; }
.damage-check-item { display: grid; grid-template-columns: 4.8rem minmax(0, 1fr); gap: .65rem; align-items: start; padding: .8rem; border: 1px solid #dce8e5; border-radius: .75rem; background: #fbfffe; }
.damage-check-item__point { display: inline-flex; min-height: 1.55rem; align-items: center; justify-content: center; padding: .2rem .35rem; color: #075c58; border-radius: .35rem; background: #dff5f1; font-size: .68rem; font-weight: 900; letter-spacing: .04em; line-height: 1; white-space: nowrap; }
.damage-check-item strong { display: block; color: #174154; font-size: .96rem; }
.damage-check-item span { display: block; margin-top: .1rem; color: #5e717e; font-size: .86rem; line-height: 1.65; }
.damage-two-col { display: grid; gap: 1rem; }
.damage-source-list { display: grid; gap: .7rem; margin-top: 1rem; }
.damage-source-list a { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem 1rem; color: #164c60; border: 1px solid #cfe1e6; border-radius: .75rem; background: #f8fcfd; font-size: .9rem; font-weight: 800; text-decoration: none; }
.damage-source-list a:hover { border-color: #4ea29b; background: #edfbf8; }
.damage-faq { margin-top: 1rem; }
.damage-faq details { border-top: 1px solid var(--damage-line); }
.damage-faq details:last-child { border-bottom: 1px solid var(--damage-line); }
.damage-faq summary { padding: 1rem .2rem; color: #173f55; cursor: pointer; font-weight: 900; line-height: 1.55; }
.damage-faq p { margin: 0; padding: 0 .2rem 1rem; }
.damage-sticky-nav { position: fixed; z-index: 40; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1px; padding-bottom: env(safe-area-inset-bottom); background: #c4d3d7; box-shadow: 0 -5px 18px rgba(8,35,59,.16); }
.damage-sticky-nav a { min-height: 3.45rem; display: grid; place-items: center; padding: .45rem; color: #174154; background: #fff; font-size: .74rem; font-weight: 900; line-height: 1.25; text-align: center; text-decoration: none; }
.damage-sticky-nav .damage-sticky-nav__call { color: #fff; background: #08716d; }
.damage-guide [id] { scroll-margin-top: 1rem; }
@media (min-width: 700px) { .damage-hero { display: grid; grid-template-columns: 1.08fr .92fr; } .damage-hero__image-wrap { align-self: stretch; } .damage-hero__image { height: 100%; min-height: 320px; } .damage-branch-grid { grid-template-columns: 1fr 1fr; } .damage-contact-card { grid-template-columns: 1.25fr .75fr; align-items: center; } .damage-two-col { grid-template-columns: 1fr 1fr; } .damage-sticky-nav { left: 50%; right: auto; bottom: 1.25rem; width: min(600px, calc(100% - 2rem)); transform: translateX(-50%); border: 1px solid #c4d3d7; border-radius: .85rem; overflow: hidden; } }
@media (min-width: 900px) { .damage-container { width: min(100% - 3rem, 1060px); } .damage-sticky-nav { display: none; } .damage-guide { padding-bottom: 2rem; } }
@media print { .damage-sticky-nav, .damage-hero__image-wrap, header, footer, .site-header, .site-footer { display: none !important; } .damage-guide { background: #fff; padding: 0; } .damage-container { width: 100%; } .damage-hero, .damage-section, .damage-photo-first, .damage-contact-card, .damage-status { box-shadow: none; break-inside: avoid; } .damage-section { border-color: #cbd5e1; } a[href]::after { content: none !important; } }
