/* Runehowl Features page only. Scoped to avoid changes elsewhere. */
.features-hero{min-height:490px;padding:65px 0 72px;background:linear-gradient(90deg,#06101bea 0%,#06101bb5 48%,#06101b66 100%),linear-gradient(0deg,#050b13 0%,transparent 52%),url('../img/hero_bkg.webp') center 44%/cover}
.features-hero-inner{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);align-items:center;gap:32px}
.features-hero-copy{position:relative;z-index:2}.features-hero h1{max-width:900px;font-size:clamp(40px,5vw,74px);line-height:1.11;letter-spacing:-.045em}.features-hero h1 em,.features-section-heading h2 em,.features-philosophy h2 em{color:#ff823c;font-style:normal}.features-hero .lead{max-width:610px;margin-top:24px;line-height:1.7}.features-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.features-hero-actions .btn{display:inline-flex;align-items:center;gap:12px;text-decoration:none}.features-hero-art{position:relative;height:330px;min-width:0}.features-brand-glow{position:absolute;inset:16% 4%;background:radial-gradient(ellipse,#fd7e2a28,transparent 65%);filter:blur(12px)}.features-hero-art img{position:absolute;object-fit:contain;height:auto;filter:drop-shadow(0 14px 25px #0007)}.features-wolf{width:75%;max-width:390px;right:16%;top:0}.features-tail{width:36%;max-width:180px;right:0;bottom:0}
.features-intro{padding-top:84px;padding-bottom:88px}.features-section-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:38px;align-items:end;margin-bottom:38px}.features-section-heading h2{font-size:clamp(34px,3.7vw,55px);line-height:1.18;margin:14px 0 0}.features-section-heading>p{color:#b7c7d2;line-height:1.8;max-width:440px;margin:0 0 4px}
.features-showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.features-showcase-card{display:flex;flex-direction:column;min-width:0;min-height:345px;padding:30px;border:1px solid #344454;border-radius:16px;background:radial-gradient(circle at 90% 0%,#f6781d0e,transparent 45%),linear-gradient(155deg,#122330,#08121c 85%);transition:transform .2s,border-color .2s,box-shadow .2s}.features-showcase-card:hover{transform:translateY(-4px);border-color:#ff914f80;box-shadow:0 18px 40px #0005}.features-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.features-symbol{display:grid;place-items:center;width:56px;height:56px;border-radius:14px;border:1px solid #465463;background:linear-gradient(145deg,#20313e,#0b1721);color:#ff823c;font-size:27px}.features-card-number{color:#9babb8;font-size:10px;font-weight:800;letter-spacing:.14em;text-align:right}.features-showcase-card h3{font-family:'DM Sans',Arial,sans-serif;font-size:30px;letter-spacing:-.04em;color:#fff;margin:26px 0 4px}.features-showcase-card h3 span{color:#ff823c}.features-card-lead{font-weight:750;color:#ffac6b!important;font-size:16px;margin:0 0 9px}.features-showcase-card>p:not(.features-card-lead){color:#bdcbd5;line-height:1.75;font-size:14px;margin:0 0 24px}.features-card-footer{border-top:1px solid #ffffff1a;padding-top:17px;margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.features-card-footer>span{font-size:11px;color:#91a5b4}.features-card-footer a{color:#ff9b57;font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.features-card-footer a:hover{text-decoration:underline}.features-ai-card{border-color:#b96d3980;background:radial-gradient(circle at 90% 0%,#f6781d1b,transparent 55%),linear-gradient(155deg,#18212b,#0c1017 85%)}
.features-philosophy{background:linear-gradient(90deg,#07111bea,#07111bc2),url('../img/community-powered-background.webp') center/cover;border-top:1px solid #ffffff18;border-bottom:1px solid #ffffff18}.features-philosophy-inner{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding-top:76px;padding-bottom:76px}.features-philosophy h2{font-size:clamp(34px,4vw,55px);line-height:1.18;margin:12px 0}.features-philosophy-inner>div:last-child p{color:#cbd5de;line-height:1.85;max-width:550px}.features-text-link{display:inline-block;margin-top:14px;color:#ff9954;font-weight:800;text-decoration:none}.features-text-link:hover{text-decoration:underline}
.features-final{text-align:center;padding-top:90px;padding-bottom:90px}.features-final h2{font-size:clamp(34px,4vw,52px);margin:14px 0}.features-final>p:not(.eyebrow):not(.features-availability){max-width:580px;margin:0 auto 25px;color:#bfcbd5;line-height:1.8}.features-final .btn{display:inline-flex;gap:12px;align-items:center}.features-availability{font-size:12px;color:#95a5b3;max-width:650px;margin:30px auto 0;line-height:1.65}
@media(max-width:1050px){.features-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.features-hero-inner{grid-template-columns:1.3fr .7fr}.features-hero-art{height:270px}.features-wolf{width:92%;right:12%}.features-tail{width:42%}}
@media(max-width:700px){.features-hero{padding:48px 0 55px;min-height:0}.features-hero-inner{grid-template-columns:1fr;gap:18px}.features-hero h1{font-size:clamp(36px,8.2vw,53px)}.features-hero-art{height:170px;max-width:390px;width:100%;margin-left:auto}.features-wolf{width:55%;right:26%;top:-6px}.features-tail{width:29%;right:7%;bottom:0}.features-section-heading,.features-philosophy-inner{grid-template-columns:1fr;gap:16px}.features-intro{padding-top:55px;padding-bottom:60px}.features-section-heading{margin-bottom:26px}.features-showcase-card{min-height:320px;padding:23px}.features-philosophy-inner{padding-top:60px;padding-bottom:60px}.features-final{padding-top:65px;padding-bottom:70px}}
@media(max-width:520px){.features-hero-actions{display:grid;grid-template-columns:1fr}.features-hero-actions .btn{justify-content:center}.features-showcase-grid{grid-template-columns:1fr;gap:13px}.features-showcase-card{min-height:0;padding:23px}.features-card-footer{margin-top:12px}.features-hero-art{height:150px}.features-wolf{width:52%;right:30%}.features-tail{width:26%;right:10%}.features-card-number{font-size:9px}}
@media(prefers-reduced-motion:reduce){.features-showcase-card{transition:none}.features-showcase-card:hover{transform:none}}

/* V2: prevent headline and mascot collision at intermediate widths */
.features-hero{overflow:hidden}
.features-hero-inner{grid-template-columns:minmax(0, 1.18fr) minmax(0, .82fr);gap:clamp(20px,3vw,52px)}
.features-hero-copy{min-width:0}
.features-hero h1{max-width:100%;font-size:clamp(39px,4.4vw,68px);overflow-wrap:normal;letter-spacing:-.048em}
.features-hero-art{width:100%;height:clamp(240px,27vw,350px);isolation:isolate}
.features-wolf{width:76%;right:20%;max-width:390px}
.features-tail{width:32%;right:1%;max-width:160px}
.features-section-heading{grid-template-columns:minmax(0,1fr) minmax(260px,.72fr)}
.features-section-heading>*{min-width:0}
.features-section-heading h2{overflow-wrap:normal}
@media(max-width:950px){
 .features-hero-inner{grid-template-columns:minmax(0,1fr) minmax(220px,.7fr)}
 .features-hero h1{font-size:clamp(36px,4.8vw,52px)}
 .features-hero-art{height:260px}
 .features-wolf{width:88%;right:13%}
 .features-tail{width:37%;right:0}
}
@media(max-width:760px){
 .features-hero-inner{grid-template-columns:1fr;gap:14px}
 .features-hero h1{font-size:clamp(38px,7.8vw,56px)}
 .features-hero-art{height:185px;max-width:440px;margin-left:auto}
 .features-wolf{width:53%;right:30%}
 .features-tail{width:27%;right:7%}
 .features-section-heading{grid-template-columns:1fr;gap:12px}
 .features-section-heading h2{font-size:clamp(32px,7vw,49px)}
}
@media(max-width:430px){.features-hero h1{font-size:clamp(34px,9vw,42px)}.features-hero-art{height:145px}}

/* Lightweight animated product relationship map, no additional image downloads */
.features-flow{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:center;gap:20px;padding:24px 30px;margin:0 0 28px;border:1px solid #334553;border-radius:18px;background:radial-gradient(ellipse at 70% 40%,#f8781817,transparent 48%),linear-gradient(135deg,#101e2a,#08121b);overflow:hidden}
.features-flow-copy{position:relative;z-index:2}
.features-flow-kicker{font-size:10px;letter-spacing:.18em;font-weight:800;color:#ff9955}
.features-flow-copy h3{font-size:clamp(23px,2.5vw,34px);line-height:1.2;margin:15px 0;color:#fff;letter-spacing:-.025em}
.features-flow-copy h3 span{color:#ff8a42}
.features-flow-copy p{font-size:13px;color:#b5c6d3;line-height:1.7;max-width:310px}
.features-flow-stage{position:relative;height:290px;min-width:0}
.features-flow-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.flow-path{fill:none;stroke:#ff8b47;stroke-width:1.8;stroke-opacity:.35;stroke-dasharray:5 7}
.flow-dot{fill:#ffb56b;filter:drop-shadow(0 0 5px #ff7e2b)}
.flow-node{position:absolute;z-index:1;display:flex;gap:7px;align-items:center;justify-content:center;white-space:nowrap;padding:10px 12px;border-radius:11px;border:1px solid #425362;background:#0d1b26;color:#ff934c;font-size:17px;box-shadow:0 8px 22px #0005}
.flow-node strong{color:#f7f7f7;font-size:12px}
.flow-core{left:50%;top:50%;transform:translate(-50%,-50%);background:#152432;border-color:#ff8a4280;padding:15px;box-shadow:0 0 35px #ff8a4222}
.flow-core-icon{color:#ff8a42;font-size:22px}
.flow-mail{left:18%;top:12%;transform:translate(-50%,-50%)}
.flow-calendar{left:82%;top:12%;transform:translate(-50%,-50%)}
.flow-contacts{left:18%;top:82%;transform:translate(-50%,-50%)}
.flow-bookings{left:82%;top:82%;transform:translate(-50%,-50%)}
.flow-ai{left:50%;top:1%;transform:translate(-50%,0)}
@media(max-width:800px){.features-flow{grid-template-columns:1fr;padding:22px 16px;gap:4px}.features-flow-copy p{max-width:none}.features-flow-stage{height:270px}}
@media(max-width:440px){.features-flow-stage{height:225px}.flow-node{padding:7px 6px;font-size:13px}.flow-node strong{font-size:10px}.flow-core{padding:11px}.flow-mail,.flow-contacts{left:19%}.flow-calendar,.flow-bookings{left:81%}}
@media(prefers-reduced-motion:reduce){.flow-dot{display:none}.features-showcase-card:hover{transform:none}}

/* v4: Features hero mascot spacing and performance. Scoped to this page. */
.features-hero-art{overflow:visible;contain:layout style;isolation:isolate}
.features-hero-art .features-wolf{width:64%;max-width:340px;right:35%;top:50%;bottom:auto;transform:translateY(-50%)}
.features-hero-art .features-tail{width:25%;max-width:135px;right:3%;top:55%;bottom:auto;transform:translateY(-35%)}
.features-hero-art img{display:block;max-height:100%;object-fit:contain}
@media(max-width:950px){
 .features-hero-art .features-wolf{width:63%;right:36%}
 .features-hero-art .features-tail{width:24%;right:4%}
}
@media(max-width:760px){
 .features-hero{background-image:linear-gradient(90deg,#06101bea 0%,#06101bb5 48%,#06101b66 100%),linear-gradient(0deg,#050b13 0%,transparent 52%),url('../img/hero_bkg_mobile.webp')}
 .features-hero-art .features-wolf{width:56%;right:40%;top:48%}
 .features-hero-art .features-tail{width:23%;right:10%;top:55%}
}
@media(max-width:430px){
 .features-hero-art .features-wolf{width:54%;right:42%}
 .features-hero-art .features-tail{width:22%;right:12%}
}

/* v5: Fix mascot collision and Meet position at all breakpoints. */
.features-hero-art {
  display:grid;
  grid-template-columns:minmax(0, 2.1fr) minmax(0, 1fr);
  align-items:center;
  column-gap:clamp(14px,2vw,34px);
  justify-items:center;
  width:100%;
  height:auto;
  min-height:280px;
  overflow:visible;
}
.features-hero-art .features-brand-glow {pointer-events:none;z-index:0}
.features-hero-art img.features-wolf,
.features-hero-art img.features-tail {
  position:relative;
  inset:auto;
  top:auto;
  right:auto;
  bottom:auto;
  left:auto;
  transform:none;
  display:block;
  width:100%;
  max-width:100%;
  max-height:none;
  height:auto;
  margin:0;
  z-index:1;
  object-fit:contain;
}
.features-hero-art img.features-wolf {grid-column:1;max-width:350px}
.features-hero-art img.features-tail {grid-column:2;max-width:145px}
/* Meet is the sixth spoke, at the bottom center, never in the Mail row. */
.features-flow-stage .flow-meet {
  position:absolute;
  left:50%;right:auto;top:auto;bottom:0;
  transform:translateX(-50%);
  z-index:3;
}
.features-flow-stage .flow-mail {left:18%;top:12%;transform:translate(-50%,-50%)}
.features-flow-stage .flow-ai {left:50%;top:1%;transform:translateX(-50%)}
@media(max-width:950px){
 .features-hero-art{min-height:230px;column-gap:18px}
}
@media(max-width:760px){
 .features-hero-art{min-height:0;height:auto;max-width:390px;column-gap:clamp(12px,4vw,22px);margin:6px 0 0 auto}
 .features-hero-art img.features-wolf{max-width:245px}
 .features-hero-art img.features-tail{max-width:112px}
}
@media(max-width:440px){
 .features-hero-art{max-width:310px;column-gap:14px}
 .features-hero-art img.features-wolf{max-width:205px}
 .features-hero-art img.features-tail{max-width:92px}
 .features-flow-stage .flow-meet{bottom:0}
}

/* v6: Hide hero mascots on tablet and mobile. Desktop remains unchanged. */
@media screen and (max-width:900px) {
  .features-hero .features-hero-art,
  .features-hero .features-wolf,
  .features-hero .features-tail,
  .features-hero .features-brand-glow {
    display:none !important;
  }
  .features-hero .features-hero-inner {
    grid-template-columns:minmax(0,1fr);
  }
  .features-hero .features-hero-copy {
    min-width:0;
    width:100%;
    max-width:100%;
  }
}
