/* Shared footer and FAQ presentation. Loaded after the page styles. */
.footer .footer-grid{grid-template-columns:minmax(230px,1.7fr) repeat(3,minmax(130px,1fr));gap:32px}
.footer-identity{min-width:0}
.footer-seller{margin:14px 0 8px;font-weight:800;color:#fff!important}
.footer .footer-note{max-width:325px;margin:0;font-size:.79rem;line-height:1.55}
.footer-note-mobile{display:none}
.footer-group{min-width:0}
.footer-group summary{list-style:none;font:700 1rem Outfit,system-ui,sans-serif;margin:0 0 19px;color:#fff}
.footer-group summary::-webkit-details-marker{display:none}
.footer-group summary::after{display:none}
.footer-group .footer-links a{overflow-wrap:anywhere}
.footer .footer-bottom{align-items:center;margin-top:42px}
.footer-legal{display:flex;align-items:center;gap:18px}
.footer .footer-legal a{display:inline;margin:0;color:inherit;font-size:inherit}
.footer .footer-legal a:hover{color:#c8ff5c}
.faq-page{background:#f2faf7}
.faq-eyebrow{display:inline-block;color:#008f83;font-size:.73rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.faq-hero{position:relative;overflow:hidden;background:linear-gradient(118deg,#047a75 0%,#04bcb2 72%,#0ac6b3 100%);color:#fff}
.faq-hero::before{content:"";position:absolute;inset:auto -18% -450px 35%;height:720px;border:1px solid #ffffff25;border-radius:50%;pointer-events:none}
.faq-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:center;gap:55px;min-height:450px;padding:70px 0}
.faq-hero .faq-eyebrow{color:#c7ff47}
.faq-hero h1{margin:18px 0 19px;font-size:clamp(3.1rem,6vw,5.8rem);line-height:.98;letter-spacing:-.055em}
.faq-hero p{max-width:640px;margin:0 0 27px;color:#e7fffa;font-size:1.13rem;line-height:1.6}
.faq-hero-link{display:inline-flex;align-items:center;gap:17px;border-radius:999px;padding:12px 13px 12px 22px;background:#d0ff63;color:#073f3b;font-weight:800;box-shadow:0 11px 25px #02514d30}
.faq-hero-link span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#083f3d;color:#fff}
.faq-hero-link:hover{background:#e3ff9d}
.faq-hero-art{position:relative;isolation:isolate;width:300px;height:300px;margin:auto;display:grid;place-items:center;border:1px solid #ffffff8a;border-radius:50%;background:radial-gradient(circle at 35% 25%,#e4fff4 0%,#b6f8d5 45%,#69d9bf 100%);box-shadow:0 30px 55px #03635b50,inset -15px -18px 30px #118d792b;transform:rotate(-8deg)}
.faq-hero-art strong{color:#067f73;font:800 13rem/.8 Outfit,system-ui,sans-serif;text-shadow:8px 10px 0 #ffffff7d}
.faq-hero-art small{position:absolute;right:5px;bottom:11px;display:grid;place-items:center;width:100px;height:100px;border-radius:50%;background:#cbff47;color:#07524a;font:800 1rem/1.05 Outfit,system-ui,sans-serif;text-align:center;box-shadow:0 15px 25px #00665a35}
.faq-orbit{position:absolute;z-index:-1;border:1px solid #ffffff70;border-radius:50%;pointer-events:none}
.faq-orbit-one{inset:-22px}
.faq-orbit-two{inset:-48px;border-color:#ffffff2d}
.faq-page-content{padding:85px 0 95px;background:linear-gradient(180deg,#f0fbf6,#f9fffc)}
.faq-page-grid{display:grid;grid-template-columns:minmax(220px,310px) minmax(0,1fr);gap:55px;align-items:start}
.faq-page-intro{position:sticky;top:25px}
.faq-page-intro h2{margin:14px 0 17px;font-size:clamp(2.4rem,3.4vw,3.7rem);color:#084b47}
.faq-page-intro p{max-width:300px;color:#52716b}
.faq-page-intro a{display:inline-block;margin-top:12px;color:#008a80;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.faq-list{display:grid;gap:11px}
.faq-item{min-width:0;margin:0;border:1px solid #cde8df;border-radius:17px;background:#fff;box-shadow:0 7px 22px #064e4210;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.faq-item:hover{border-color:#55cbb6;box-shadow:0 12px 24px #064e4219}
.faq-item[open]{border-color:#17b2a2;box-shadow:0 15px 30px #064e421c}
.faq-item summary{display:grid;grid-template-columns:38px minmax(0,1fr) 32px;gap:15px;align-items:center;padding:17px 19px;cursor:pointer;list-style:none;color:#104b47}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:focus-visible{outline:3px solid #0aa99c;outline-offset:-4px}
.faq-number{display:grid;place-items:center;min-width:38px;height:38px;border-radius:10px;background:#e5f9ef;color:#008f84;font:800 .78rem Outfit,system-ui,sans-serif}
.faq-question{font:700 1.13rem/1.35 Outfit,system-ui,sans-serif;letter-spacing:-.015em}
.faq-toggle{position:relative;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#caff59;color:#07534c}
.faq-toggle::before,.faq-toggle::after{content:"";position:absolute;width:12px;height:2px;border-radius:2px;background:currentColor;transition:transform .2s}
.faq-toggle::after{transform:rotate(90deg)}
.faq-item[open] .faq-toggle::after{transform:rotate(0)}
.faq-answer{padding:0 23px 21px 72px}
.faq-answer p{margin:0;color:#526f68;line-height:1.7;overflow-wrap:anywhere}
.faq-empty{padding:30px;border:1px dashed #8acfbf;border-radius:17px;background:#fff}
.faq-empty h3{margin-bottom:8px;color:#084b47}
.faq-empty p{margin:0}
.faq-contact-section{padding:0 0 90px;background:#f9fffc}
.faq-contact-card{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:40px 48px;border-radius:27px;background:linear-gradient(110deg,#073f3f,#078e83);color:#fff;box-shadow:0 25px 50px #064e4229}
.faq-contact-card .faq-eyebrow{color:#c8ff5c}
.faq-contact-card h2{margin:10px 0;font-size:clamp(2rem,3.2vw,3.3rem)}
.faq-contact-card p{margin:0;max-width:530px;color:#d3f3e9}
.faq-contact-card a{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-width:185px;padding:14px 17px;border-radius:12px;background:#caff59;color:#064c45;font-weight:800;white-space:nowrap}
.faq-contact-card a:hover{background:#e3ff9d}

.checkout-faq{margin-top:28px;padding:32px;border:1px solid #bce6d7;border-radius:25px;background:linear-gradient(145deg,#effdf6,#e0f7ee)}
.checkout-faq .faq-section-head{max-width:690px;margin-bottom:24px}
.checkout-faq .faq-section-head h2{margin:11px 0 10px;color:#084b47;font-size:clamp(2rem,3.3vw,3rem)}
.checkout-faq .faq-section-head p{margin:0;color:#54736b}
.checkout-faq .faq-item{margin:0;padding:0;border:1px solid #c7e7dc;border-radius:15px;background:#fff}
.checkout-faq .faq-item summary{display:grid;grid-template-columns:38px minmax(0,1fr) 32px;gap:15px;padding:15px 18px;list-style:none;color:#104b47}
.checkout-faq .faq-item summary::after{content:none;display:none}
.checkout-faq .faq-answer p{margin:0;padding:0;color:#526f68}
.faq-page-link{display:inline-flex;align-items:center;gap:10px;margin-top:22px;color:#008a7e;font-weight:800}
.faq-page-link:hover{text-decoration:underline;text-underline-offset:4px}

@media(max-width:800px){
  .faq-hero-grid{grid-template-columns:minmax(0,1fr) 230px;gap:20px}
  .faq-hero-art{width:220px;height:220px}
  .faq-hero-art strong{font-size:9rem}
  .faq-hero-art small{width:72px;height:72px;font-size:.78rem}
  .faq-page-grid{grid-template-columns:1fr;gap:27px}
  .faq-page-intro{position:static}
  .faq-page-intro p{max-width:650px}
}
@media(max-width:700px){
  .footer,.home-page .footer{padding-top:24px}
  .footer .footer-grid,.home-page .footer .footer-grid{display:block}
  .footer-identity{padding-bottom:16px}
  .footer .footer-logo,.home-page .footer-logo{width:100px;max-height:51px}
  .footer-seller{margin:8px 0 3px;font-size:.9rem}
  .footer .footer-note{display:none}
  .footer .footer-note-mobile{display:block;margin:0;color:#effffb;font-size:.74rem;line-height:1.4}
  .footer-group{border-top:1px solid #ffffff35}
  .footer-group summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;margin:0;font-size:.93rem;cursor:pointer}
  .footer-group summary::after{display:grid;place-items:center;content:"+";width:24px;height:24px;border:1px solid #ffffff66;border-radius:50%;font:700 1rem/1 system-ui,sans-serif}
  .footer-group[open] summary::after{content:"−"}
  .footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 16px;padding:0 0 13px}
  .footer .footer-links a{margin:0;padding:6px 0;font-size:.81rem;line-height:1.35}
  .footer .footer-bottom,.home-page .footer .footer-bottom{align-items:flex-start;gap:6px;margin-top:3px;padding:15px 0 20px;font-size:.69rem;line-height:1.35}
  .footer-legal{gap:16px;flex-wrap:wrap}
  .faq-hero-grid{display:block;min-height:0;padding:62px 0 68px}
  .faq-hero h1{font-size:clamp(2.8rem,11vw,4.2rem)}
  .faq-hero p{font-size:1rem}
  .faq-hero-art{display:none}
  .faq-page-content{padding:46px 0 55px}
  .faq-page-intro h2{font-size:2.5rem}
  .faq-contact-section{padding:0 0 54px}
  .faq-contact-card{display:block;padding:27px;border-radius:21px}
  .faq-contact-card p{font-size:.93rem}
  .faq-contact-card a{width:100%;margin-top:24px}
  .faq-item summary,.checkout-faq .faq-item summary{grid-template-columns:30px minmax(0,1fr) 28px;gap:10px;padding:14px}
  .faq-number{min-width:30px;height:30px;font-size:.72rem}
  .faq-question{font-size:1rem}
  .faq-toggle{width:28px;height:28px}
  .faq-answer{padding:0 15px 17px}
  .checkout-pick-card{grid-template-columns:minmax(0,1fr)}
  .checkout-pick-card>div{min-width:0}
  .checkout-pick-card .checkout-price span{flex-wrap:wrap}
  .checkout-pick-card .checkout-price b{margin-left:auto;white-space:normal;text-align:right}
  .checkout-faq{padding:20px 15px;margin-top:22px;border-radius:20px}
  .checkout-faq .faq-section-head{margin-bottom:18px}
  .checkout-faq .faq-section-head h2{font-size:2rem}
}
@media(prefers-reduced-motion:reduce){.faq-item,.faq-toggle::after{transition:none}}
@media(max-width:700px){
  .footer .footer-note-mobile,.footer .footer-links a,.footer .footer-bottom,.home-page .footer .footer-bottom{font-size:.875rem;line-height:1.5}
  .footer .footer-links a{padding:9px 0}
}
