@import url("site.css");

:root{
  --halloween-night:#211747;
  --halloween-deep:#130d2d;
  --halloween-purple:#633f9f;
  --halloween-orange:#f58b2a;
  --halloween-coral:#f25f5c;
  --halloween-mint:#9ee6bc;
  --halloween-paper:#fffaf2;
}

body.tpl-halloween{
  background:var(--halloween-deep);
  background-image:radial-gradient(circle,rgba(255,255,255,.16) 1px,transparent 1.5px);
  background-size:62px 62px;
}
.tpl-halloween .site-head{background:rgba(19,13,45,.92)}
.tpl-halloween .site-head .btn-primary{background:var(--halloween-orange);color:var(--halloween-deep);box-shadow:0 4px 0 #a84d13}

.halloween-hero{
  position:relative;min-height:min(760px,calc(100svh - 74px));
  display:flex;align-items:stretch;overflow:hidden;background:var(--halloween-night);
}
.halloween-hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% center}
.halloween-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,13,45,.98) 0%,rgba(19,13,45,.88) 31%,rgba(19,13,45,.22) 63%,rgba(19,13,45,.08) 100%)}
.halloween-hero-inner{position:relative;z-index:1;width:100%;display:flex;align-items:center;padding-top:56px;padding-bottom:68px}
.halloween-hero-copy{max-width:590px}
.halloween-kicker{font-family:'Fredoka',sans-serif;font-weight:600;color:#ffd369;text-transform:uppercase;font-size:.88rem;margin-bottom:16px}
.halloween-hero h1{font-size:clamp(2.55rem,6vw,4.8rem);line-height:1.02;color:#fff;max-width:760px;margin-bottom:20px;text-wrap:balance}
.halloween-lede{font-size:clamp(1.08rem,2vw,1.3rem);line-height:1.55;color:rgba(255,255,255,.9);max-width:570px;margin-bottom:28px}
.halloween-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px}
.btn-halloween{background:var(--halloween-orange);color:var(--halloween-deep);box-shadow:0 5px 0 #a84d13;padding:16px 26px}
.btn-halloween:hover{transform:translateY(-2px);box-shadow:0 7px 0 #a84d13}
.halloween-text-link{color:#fff;text-decoration:none;font-family:'Fredoka',sans-serif;font-weight:600}
.halloween-text-link:hover{color:#ffd369}
.halloween-trust{display:flex;flex-wrap:wrap;gap:9px 20px;margin-top:25px;color:rgba(255,255,255,.82);font-size:.9rem}
.halloween-trust span::before{content:'✓';display:inline-block;margin-right:7px;color:var(--halloween-mint);font-weight:800}

.halloween-page{background:var(--halloween-paper);color:var(--navy);padding:0 0 76px}
.halloween-page h2,.halloween-page h3{color:var(--navy)}
.halloween-page p,.halloween-page li{color:var(--ink-soft)}
.halloween-page a{color:var(--green-dark)}
.halloween-page a.btn-primary,.halloween-page a.btn-primary:hover{color:#fff}
.halloween-page a.btn-halloween,.halloween-page a.btn-halloween:hover{color:var(--halloween-deep)}
.halloween-section{padding:72px 22px;max-width:1044px;margin:0 auto}
.halloween-section + .halloween-section{border-top:1px solid rgba(30,46,87,.1)}
.halloween-section h2{font-size:clamp(1.8rem,4vw,2.65rem);max-width:720px;margin:0 0 18px;text-wrap:balance}
.halloween-section > p{max-width:760px;font-size:1.04rem}
.halloween-intro{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:48px}
.halloween-quote{margin:0;background:#fff;border-left:5px solid var(--halloween-orange);padding:26px 28px;box-shadow:0 10px 30px rgba(33,23,71,.09)}
.halloween-quote p{font-family:'Fredoka',sans-serif;color:var(--halloween-night);font-size:1.2rem;line-height:1.5;margin:0}
.halloween-eyebrow{color:#6a4b9c!important;text-transform:uppercase;font-family:'Fredoka',sans-serif;font-size:.85rem!important;font-weight:600;margin-bottom:10px!important}
.halloween-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.halloween-card{background:#fff;border:1px solid rgba(33,23,71,.1);padding:26px 24px;box-shadow:0 8px 24px rgba(33,23,71,.07)}
.halloween-card .card-icon{font-size:1.8rem;line-height:1;margin-bottom:14px}
.halloween-card h3{font-size:1.25rem;margin:0 0 8px}
.halloween-card p{font-size:.95rem;margin:0}
.halloween-card ul{padding-left:20px;margin:12px 0 0}
.halloween-card li{margin-bottom:7px}
.halloween-steps{counter-reset:hstep}
.halloween-steps .halloween-card{position:relative;padding-top:70px}
.halloween-steps .halloween-card::before{counter-increment:hstep;content:counter(hstep);position:absolute;top:24px;left:24px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--halloween-orange);color:var(--halloween-deep);font-family:'Fredoka',sans-serif;font-weight:700}
.halloween-conversion{background:var(--halloween-night);color:#fff;max-width:none;padding:68px 22px}
.halloween-conversion-inner{max-width:1000px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:36px}
.halloween-conversion h2{color:#fff;margin-bottom:10px}
.halloween-conversion p{color:rgba(255,255,255,.8);margin:0;max-width:650px}
.halloween-conversion .btn{flex:none}
.halloween-faq details{background:#fff;border:1px solid rgba(33,23,71,.1);margin-bottom:12px;padding:0 22px}
.halloween-faq summary{cursor:pointer;list-style:none;font-family:'Fredoka',sans-serif;font-weight:600;color:var(--navy);padding:18px 36px 18px 0;position:relative}
.halloween-faq summary::-webkit-details-marker{display:none}
.halloween-faq summary::after{content:'+';position:absolute;right:0;top:14px;font-size:1.45rem;color:var(--halloween-purple)}
.halloween-faq details[open] summary::after{content:'−'}
.halloween-faq details p{padding-bottom:18px;margin:0;max-width:760px}
.tpl-halloween .cta-band{background:var(--halloween-deep);padding:58px 22px 24px}
.tpl-halloween .cta-band .btn-primary{background:var(--halloween-orange);color:var(--halloween-deep);box-shadow:0 5px 0 #a84d13}
.tpl-halloween footer{background:var(--halloween-deep)}

@media(max-width:800px){
  .halloween-hero{min-height:auto;padding-top:340px}
  .halloween-hero-art{height:390px;object-position:70% center}
  .halloween-hero-shade{background:linear-gradient(180deg,rgba(19,13,45,.03) 0,rgba(19,13,45,.45) 280px,var(--halloween-night) 390px)}
  .halloween-hero-inner{padding-top:38px;padding-bottom:52px;align-items:flex-end}
  .halloween-hero-copy{max-width:none}
  .halloween-intro{grid-template-columns:1fr;gap:28px}
  .halloween-grid{grid-template-columns:1fr}
  .halloween-conversion-inner{display:block}
  .halloween-conversion .btn{margin-top:24px}
}
@media(max-width:460px){
  .halloween-hero{padding-top:270px}
  .halloween-hero-art{height:320px}
  .halloween-hero h1{font-size:2.45rem}
  .halloween-actions{align-items:flex-start;flex-direction:column}
  .halloween-section{padding:54px 20px}
  .halloween-trust{display:grid}
}
