/* Hodoki — shared site styles */
@import url('https://fonts.googleapis.com/css2?family=Hauora:wght@300;400;500;600;700;800&display=swap');

html{scroll-behavior:smooth;}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
body{margin:0;background:#FEFCFB;color:#151515;font-family:'Hauora','Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;}
body.home{background:#001915;}
a{color:#001915;text-decoration:none;}
a:hover{color:#FAA534;}
::selection{background:#FAA534;color:#001915;}
summary::-webkit-details-marker{display:none;}
input,select,textarea{font-family:'Hauora','Segoe UI',sans-serif;}

/* FAQ accordion marker */
details.faq[open] summary span{transform:rotate(45deg);}
details.faq summary span{transition:transform .2s ease;display:inline-block;}

/* Keyframes */
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}

/* Article prose */
.prose p{margin:0 0 24px;font-size:19px;line-height:1.72;color:rgba(21,21,21,.82);text-wrap:pretty;}
.prose h2{margin:52px 0 18px;font-size:clamp(26px,2.6vw,34px);letter-spacing:-.02em;font-weight:800;color:#001915;scroll-margin-top:32px;}
.prose h3{margin:36px 0 12px;font-size:21px;font-weight:700;color:#001915;}
.prose ul{margin:0 0 24px;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:12px;}
.prose li{font-size:18px;line-height:1.6;color:rgba(21,21,21,.82);padding-left:30px;position:relative;}
.prose li:before{content:"";position:absolute;left:4px;top:11px;width:9px;height:9px;background:#FAA534;border-radius:2px;transform:rotate(45deg);}
.prose strong{color:#001915;font-weight:700;}

/* Image placeholder (stands in for the DC <image-slot> component) */
image-slot{display:flex;align-items:center;justify-content:center;width:100%;height:100%;box-sizing:border-box;background:radial-gradient(120% 120% at 70% 30%,#06352c,#001915);border-radius:20px;color:rgba(254,252,251,.55);font-size:14px;font-weight:600;text-align:center;padding:16px;}
image-slot:before{content:attr(placeholder);}

/* Responsive */
@media(max-width:960px){
.grid3{grid-template-columns:repeat(2,1fr)!important;}
.grid-steps{grid-template-columns:repeat(2,1fr)!important;}
.hero-grid{grid-template-columns:1fr!important;min-height:0!important;}
.cta-grid{grid-template-columns:1fr!important;padding:56px 32px!important;}
.two-col{grid-template-columns:1fr!important;gap:40px!important;}
.footer-grid{grid-template-columns:1fr 1fr!important;row-gap:40px!important;}
.svc-row{grid-template-columns:56px 1fr!important;}
.svc-row>div:last-child{grid-column:2;}
.faq-grid{grid-template-columns:1fr!important;gap:32px!important;}
.feat-grid{grid-template-columns:1fr!important;}
.article-grid{grid-template-columns:1fr!important;}
.article-grid aside{position:static!important;}
}
@media(max-width:640px){
.grid3{grid-template-columns:1fr!important;}
.grid-steps{grid-template-columns:1fr!important;}
.svc-row{grid-template-columns:1fr!important;gap:20px!important;}
.svc-row>div:last-child{grid-column:auto;}
.form-row{grid-template-columns:1fr!important;}
.footer-grid{grid-template-columns:1fr!important;}
.nav-links{display:none!important;}
.nav-burger{display:block!important;}
.nav-pill{padding:10px 16px 10px 20px!important;}
.hero-grid img{max-width:360px!important;margin:0 auto;}
.filter-row{overflow-x:auto;}
}
