/* Landing page extras. Homepage hero, steps, and buttons come from /landing.css.
   Footer rules match the homepage footer (those rules live inline in index.html). */

.skip-link{position:absolute;left:8px;top:-60px;z-index:200;padding:10px 16px;background:var(--green);color:#fff;font-weight:700;border-radius:10px}
.skip-link:focus{top:8px;text-decoration:none;outline:3px solid var(--ink);outline-offset:2px}

.hero-grid{display:grid;grid-template-columns:1.15fr 0.85fr;gap:48px;align-items:center}

.crumb{font-size:14px;color:var(--gray);margin-bottom:16px}
.crumb a{color:var(--gray);text-decoration:underline}

.hero .lede{margin-bottom:22px}
.fineprint{font-size:14px;color:var(--gray);max-width:640px;margin-top:4px}
.fineprint a{text-decoration:underline}

.btn-ghost{display:inline-flex;align-items:center;min-height:52px;padding:14px 22px;border-radius:100px;border:1px solid var(--line);font-weight:700;color:var(--ink);background:#fff}
.btn-ghost:hover{text-decoration:none;border-color:var(--green);color:var(--green)}

.why{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.why article{background:var(--bg-soft);border:1px solid var(--line);border-radius:16px;padding:24px}
.why p{color:var(--gray);font-size:15px}
.why a{text-decoration:underline}
@media (max-width:760px){.why{grid-template-columns:1fr}}

.shot{max-width:360px;margin:8px 0 0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px}
.shot.hero-shot{justify-self:center;width:100%;max-width:340px;margin:0}
.shot img{width:100%;height:auto;border-radius:8px}
.shot figcaption{font-size:13px;color:var(--gray);margin-top:8px;line-height:1.45}
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr;gap:28px}
  .shot.hero-shot{max-width:280px;order:2;margin:8px auto 0}
}

.limit{max-width:760px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px;margin-top:28px}
.limit p{color:var(--gray);font-size:15px;margin:0}
.limit a{text-decoration:underline}

.faq-list{max-width:760px}
details{border-bottom:1px solid var(--line);padding:20px 0}
details summary{cursor:pointer;font-weight:700;font-size:18px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}
details summary::-webkit-details-marker{display:none}
details summary::after{content:"+";font-size:24px;font-weight:400;color:var(--mute)}
details[open] summary::after{content:"–"}
details p{color:var(--gray);font-size:15px;margin-top:12px}
details a{text-decoration:underline}

.final-cta{background:linear-gradient(135deg,var(--ink) 0%,#1a2a20 100%);color:#fff;border-radius:24px;padding:64px 40px;text-align:center;margin:0 auto 72px;max-width:960px}
.final-cta h2{color:#fff;margin-left:auto;margin-right:auto}
.final-cta p{font-size:18px;color:#bfd0c5;margin-bottom:32px;max-width:520px;margin-left:auto;margin-right:auto}
.final-cta .btn-primary{background:#fff;color:var(--green);box-shadow:0 8px 24px rgba(255,255,255,0.15)}
.final-cta .btn-primary:hover{background:#eaf6ea}
.final-cta .btn-primary svg{fill:var(--green)}
@media (max-width:760px){.final-cta{padding:40px 20px}}

footer{background:var(--bg-soft);padding:48px 0 32px;border-top:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;color:var(--ink)}
.brand-mark{width:30px;height:30px;border-radius:8px;object-fit:cover;display:block}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(5,1fr);gap:28px;margin-bottom:32px}
@media (max-width:1000px){.footer-grid{grid-template-columns:repeat(3,1fr);row-gap:40px}.footer-grid>:first-child{grid-column:1/-1}}
@media (max-width:760px){.footer-grid{grid-template-columns:repeat(2,1fr);row-gap:36px}.footer-grid>:first-child{grid-column:1/-1}}
.footer-grid h4{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--mute);margin-bottom:14px}
.footer-grid ul{list-style:none}
.footer-grid li{margin-bottom:8px}
.footer-grid a{color:var(--gray);font-size:15px}
.footer-tag{color:var(--gray);font-size:14px;max-width:280px;margin-top:8px}
.footer-bottom{padding-top:24px;border-top:1px solid var(--line);text-align:center;color:var(--mute);font-size:13px;line-height:1.5}
.footer-bottom a{color:var(--gray);display:inline-block;min-height:44px;padding:10px 4px}
