/* =====================================================================
   AbollyHost homepage (front-page) — loaded only on the front page.
   Relies on design tokens from abollyhost.css.
   ===================================================================== */

/* Shared section scaffolding */
.abh-home{overflow-x:hidden;}
.abh-sec-head{max-width:720px;margin:0 auto clamp(2rem,4vw,3rem);text-align:center;}
.abh-sec-head__eyebrow{display:inline-block;font-family:var(--abh-font-display);font-weight:700;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--abh-primary);background:var(--abh-tint);padding:.35rem .8rem;border-radius:999px;margin-bottom:1rem;}
.abh-sec-head__eyebrow--light{color:var(--abh-lime);background:rgba(173,248,2,.12);}
.abh-sec-head__title{font-size:clamp(1.7rem,3.6vw,2.6rem);margin:0 0 .6rem;}
.abh-sec-head__sub{font-size:1.05rem;color:var(--abh-body);margin:0;}

/* Buttons — homepage variants */
.abh-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.35);}
.abh-btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.08);}

/* HERO */
.abh-hero{position:relative;background:radial-gradient(120% 120% at 50% -10%,#15244a 0,#0b1430 60%,#0a1029 100%);color:#fff;overflow:hidden;padding-block:clamp(3.5rem,8vw,6.5rem);}
.abh-hero__glow{position:absolute;inset:0;pointer-events:none;background:
	radial-gradient(40% 50% at 18% 12%,rgba(7,116,255,.45),transparent 70%),
	radial-gradient(38% 46% at 85% 8%,rgba(0,200,255,.30),transparent 70%),
	radial-gradient(45% 55% at 75% 100%,rgba(173,248,2,.16),transparent 70%);}
.abh-hero__inner{position:relative;max-width:860px;margin-inline:auto;text-align:center;}
.abh-hero__eyebrow{display:inline-block;font-family:var(--abh-font-display);font-weight:600;font-size:.8rem;letter-spacing:.08em;color:#bcd0ff;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:.4rem .9rem;margin-bottom:1.5rem;backdrop-filter:blur(4px);}
.abh-hero__title{color:#fff;font-size:clamp(2.1rem,5.4vw,3.6rem);line-height:1.08;letter-spacing:-.02em;margin:0 0 1.1rem;}
.abh-hl{position:relative;color:var(--abh-lime);}
.abh-hero__sub{font-size:clamp(1rem,1.6vw,1.2rem);color:#cdd7ef;max-width:660px;margin:0 auto 2rem;line-height:1.7;}
.abh-hero__sub strong{color:#fff;}
.abh-hero__cta{display:flex;gap:.85rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem;}
.abh-hero__chips{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem .9rem;margin:0;padding:0;}
.abh-hero__chips li{font-size:.82rem;color:#aebbd8;display:inline-flex;align-items:center;gap:.4rem;}
.abh-hero__chips li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--abh-lime);}
/* staggered entrance */
.abh-hero__inner > *{animation:abh-rise .7s cubic-bezier(.2,.7,.2,1) both;}
.abh-hero__eyebrow{animation-delay:.02s;}
.abh-hero__title{animation-delay:.10s;}
.abh-hero__sub{animation-delay:.20s;}
.abh-hero__cta{animation-delay:.30s;}
.abh-hero__chips{animation-delay:.40s;}
@keyframes abh-rise{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}

/* TRUST STRIP */
.abh-trust{background:var(--abh-ink);color:#c4cee4;}
.abh-trust__row{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2rem;padding-block:1rem;}
.abh-trust__row span{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--abh-font-display);font-weight:600;font-size:.85rem;}
.abh-trust__row svg{width:18px;height:18px;color:var(--abh-lime);}

/* PRODUCT FAMILIES */
.abh-family{margin-top:clamp(1.5rem,3vw,2.5rem);}
.abh-family__head{margin-bottom:1.25rem;}
.abh-family__head h3{font-size:1.35rem;margin:0 0 .25rem;display:inline-flex;align-items:center;gap:.5rem;}
.abh-family__head h3 svg{width:22px;height:22px;color:var(--abh-secondary);}
.abh-family__head p{margin:0;color:var(--abh-body);}
.abh-family--offshore .abh-family__head h3 svg{color:var(--abh-primary);}
.abh-card-grid{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);}
.abh-family--offshore .abh-card-grid{grid-template-columns:repeat(4,1fr);}
.abh-pcard{display:flex;flex-direction:column;gap:.5rem;padding:1.4rem;background:#fff;border:1px solid var(--abh-border);border-radius:var(--abh-radius);transition:transform .15s,box-shadow .15s,border-color .15s;text-decoration:none;}
.abh-pcard:hover{transform:translateY(-3px);box-shadow:var(--abh-shadow-pop);border-color:var(--abh-border-strong);text-decoration:none;}
.abh-pcard__ico{width:44px;height:44px;border-radius:11px;background:var(--abh-tint);color:var(--abh-primary);display:flex;align-items:center;justify-content:center;}
.abh-pcard__ico svg{width:22px;height:22px;}
.abh-pcard__name{font-family:var(--abh-font-display);font-weight:700;font-size:1.05rem;color:var(--abh-ink);}
.abh-pcard__desc{font-size:.9rem;color:var(--abh-body);flex:1;}
.abh-pcard__price{font-family:var(--abh-font-display);font-size:.82rem;font-weight:500;color:var(--abh-body);}
.abh-pcard__price strong{font-weight:800;font-size:1.15rem;color:var(--abh-primary);}
.abh-pcard__price span{color:var(--abh-body);}
.abh-pcard__more{font-family:var(--abh-font-display);font-weight:600;font-size:.85rem;color:var(--abh-primary);}
.abh-pcard--dark{background:linear-gradient(160deg,#1d2b4d,#141f3a);border-color:rgba(255,255,255,.08);}
.abh-pcard--dark .abh-pcard__name{color:#fff;}
.abh-pcard--dark .abh-pcard__desc{color:#aebbd8;}
.abh-pcard--dark .abh-pcard__ico{background:rgba(7,116,255,.22);color:var(--abh-lime);}
.abh-pcard--dark .abh-pcard__more{color:var(--abh-lime);}
.abh-pcard--dark .abh-pcard__price{color:#aebbd8;}
.abh-pcard--dark .abh-pcard__price strong{color:#fff;}
.abh-pcard--dark .abh-pcard__price span{color:#aebbd8;}

/* FEATURES */
.abh-feat-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(4,1fr);}
.abh-feat{padding:1.5rem;border-radius:var(--abh-radius);background:#fff;border:1px solid var(--abh-border);}
.abh-feat__ico{width:46px;height:46px;border-radius:12px;background:var(--abh-tint);color:var(--abh-primary);display:flex;align-items:center;justify-content:center;margin-bottom:1rem;}
.abh-feat__ico svg{width:23px;height:23px;}
.abh-feat__title{font-size:1.05rem;margin:0 0 .35rem;}
.abh-feat__desc{font-size:.9rem;color:var(--abh-body);margin:0;}

/* OFFSHORE BAND */
.abh-offshore-band{position:relative;background:radial-gradient(120% 120% at 80% 0,#16244a 0,#0c1430 70%);color:#fff;overflow:hidden;padding-block:clamp(3rem,7vw,5rem);}
.abh-offshore-band__glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(40% 60% at 15% 100%,rgba(173,248,2,.14),transparent 70%),radial-gradient(40% 60% at 90% 10%,rgba(0,200,255,.22),transparent 70%);}
.abh-offshore-band__inner{position:relative;display:grid;grid-template-columns:1.4fr 1fr;gap:2.5rem;align-items:center;}
.abh-offshore-band__text h2{color:#fff;font-size:clamp(1.7rem,3.4vw,2.4rem);margin:.4rem 0 .8rem;}
.abh-offshore-band__text p{color:#cdd7ef;font-size:1.05rem;line-height:1.7;margin:0 0 1.25rem;}
.abh-ticklist{list-style:none;margin:0 0 1.75rem;padding:0;display:grid;gap:.65rem;}
.abh-ticklist li{position:relative;padding-left:1.7rem;color:#e3e9f7;}
.abh-ticklist li::before{content:"";position:absolute;left:0;top:.3em;width:14px;height:8px;border-left:2px solid var(--abh-lime);border-bottom:2px solid var(--abh-lime);transform:rotate(-45deg);}
.abh-offshore-band__card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--abh-radius);padding:2rem;backdrop-filter:blur(6px);}
.abh-offshore-band__shield{display:inline-flex;width:54px;height:54px;border-radius:14px;background:rgba(173,248,2,.16);color:var(--abh-lime);align-items:center;justify-content:center;margin-bottom:1rem;}
.abh-offshore-band__shield svg{width:28px;height:28px;}
.abh-offshore-band__card strong{display:block;font-family:var(--abh-font-display);font-size:1.2rem;margin-bottom:.5rem;}
.abh-offshore-band__card p{color:#bcc8e2;font-size:.92rem;margin:0;}

/* VPS BAND */
.abh-vps__inner{display:grid;grid-template-columns:1.2fr 1fr;gap:2.5rem;align-items:center;}
.abh-vps__text p{color:var(--abh-body);font-size:1.05rem;line-height:1.7;margin:.5rem 0 1.5rem;}
.abh-vps__cta{display:flex;gap:.75rem;flex-wrap:wrap;}
.abh-vps__specs{list-style:none;margin:0;padding:0;display:grid;gap:.85rem;background:var(--abh-card);border:1px solid var(--abh-border);border-radius:var(--abh-radius);padding:1.75rem;}
.abh-vps__specs li{display:flex;align-items:center;gap:.75rem;font-family:var(--abh-font-display);font-weight:600;color:var(--abh-secondary);}
.abh-vps__specs svg{width:22px;height:22px;color:var(--abh-primary);flex:0 0 auto;}

/* DOMAINS */
.abh-domain-search{display:flex;gap:.6rem;max-width:560px;margin:0 auto 1.5rem;}
.abh-domain-search__input{flex:1;border:1px solid var(--abh-border-strong);border-radius:999px;padding:.85rem 1.25rem;font-size:1rem;font-family:var(--abh-font-body);color:var(--abh-ink);}
.abh-domain-search__input:focus{outline:none;border-color:var(--abh-primary);box-shadow:0 0 0 3px rgba(7,116,255,.15);}
.abh-tlds{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin:0;padding:0;}
.abh-tlds li{background:#fff;border:1px solid var(--abh-border);border-radius:999px;padding:.5rem 1.1rem;font-family:var(--abh-font-display);font-weight:700;color:var(--abh-ink);}
.abh-tlds li span{color:var(--abh-body);font-weight:500;font-size:.85rem;}
.abh-tlds__ext{color:var(--abh-primary)!important;font-weight:800!important;margin-right:.3rem;}
.abh-tlds__more{background:transparent!important;border-color:transparent!important;}
.abh-tlds__more a{font-weight:600;}

/* STATS */
.abh-stats{background:var(--abh-secondary);color:#fff;}
.abh-stats__row{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;padding-block:clamp(2rem,4vw,3rem);text-align:center;}
.abh-stat__num{display:block;font-family:var(--abh-font-display);font-weight:800;font-size:clamp(1.8rem,4vw,2.6rem);color:var(--abh-lime);line-height:1;}
.abh-stat__label{display:block;margin-top:.4rem;color:#c4cee4;font-size:.92rem;}

/* LINEAGE */
.abh-lineage__inner{max-width:760px;}
.abh-lineage__inner p{font-size:1.05rem;color:var(--abh-body);line-height:1.75;margin:.5rem 0 1.5rem;}
.abh-lineage__inner a{font-weight:600;}

/* FAQ */
.abh-faq__wrap{max-width:820px;margin-inline:auto;}
.abh-faq__item{background:#fff;border:1px solid var(--abh-border);border-radius:var(--abh-radius-sm);margin-bottom:.75rem;overflow:hidden;}
.abh-faq__item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.25rem;font-family:var(--abh-font-display);font-weight:600;color:var(--abh-ink);}
.abh-faq__item summary::-webkit-details-marker{display:none;}
.abh-faq__icon{position:relative;flex:0 0 auto;width:14px;height:14px;}
.abh-faq__icon::before,.abh-faq__icon::after{content:"";position:absolute;background:var(--abh-primary);border-radius:2px;}
.abh-faq__icon::before{top:6px;left:0;width:14px;height:2px;}
.abh-faq__icon::after{left:6px;top:0;width:2px;height:14px;transition:transform .2s;}
.abh-faq__item[open] .abh-faq__icon::after{transform:rotate(90deg);opacity:0;}
.abh-faq__a{padding:0 1.25rem 1.2rem;}
.abh-faq__a p{margin:0;color:var(--abh-body);line-height:1.7;}

/* FINAL CTA */
.abh-cta-band{position:relative;background:radial-gradient(120% 130% at 50% 0,#15244a 0,#0b1430 70%);color:#fff;overflow:hidden;padding-block:clamp(3rem,7vw,5rem);text-align:center;}
.abh-cta-band__glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(45% 70% at 50% 120%,rgba(173,248,2,.18),transparent 70%),radial-gradient(40% 60% at 50% -10%,rgba(7,116,255,.4),transparent 70%);}
.abh-cta-band__inner{position:relative;max-width:680px;margin-inline:auto;}
.abh-cta-band__inner h2{color:#fff;font-size:clamp(1.8rem,4vw,2.6rem);margin:0 0 .6rem;}
.abh-cta-band__inner p{color:#cdd7ef;font-size:1.08rem;margin:0 0 1.75rem;}
.abh-cta-band__btns{display:flex;gap:.85rem;justify-content:center;flex-wrap:wrap;}

/* RESPONSIVE */
@media (max-width:980px){
	.abh-card-grid{grid-template-columns:repeat(2,1fr);}
	.abh-family--offshore .abh-card-grid{grid-template-columns:repeat(2,1fr);}
	.abh-feat-grid{grid-template-columns:repeat(2,1fr);}
	.abh-offshore-band__inner,.abh-vps__inner{grid-template-columns:1fr;}
	.abh-stats__row{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:560px){
	.abh-card-grid{grid-template-columns:1fr;}
	.abh-family--offshore .abh-card-grid{grid-template-columns:1fr;}
	.abh-feat-grid{grid-template-columns:1fr;}
	.abh-hero__cta .abh-btn,.abh-cta-band__btns .abh-btn{width:100%;}
	.abh-domain-search{flex-direction:column;}
	.abh-domain-search__input{border-radius:var(--abh-radius-sm);}
}

/* PRICING CARD SLIDER (smallest plan per product) */
.abh-mslider{position:relative;}
.abh-mslider__viewport{overflow-x:auto;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.abh-mslider__viewport::-webkit-scrollbar{display:none;}
.abh-mslider__track{display:flex;gap:1.1rem;--per:4;}
.abh-mcard{flex:0 0 calc((100% - (var(--per) - 1)*1.1rem)/var(--per));scroll-snap-align:start;display:flex;flex-direction:column;background:#fff;border:1px solid var(--abh-border);border-radius:var(--abh-radius);padding:1.6rem 1.35rem;box-shadow:0 6px 22px -14px rgba(20,30,55,.3);}
.abh-mcard__cat{display:flex;align-items:center;gap:.5rem;font-family:var(--abh-font-display);font-weight:700;font-size:.95rem;color:var(--abh-ink);line-height:1.25;min-height:2.4em;}
.abh-mcard__ico{flex:0 0 auto;width:34px;height:34px;border-radius:9px;background:var(--abh-tint);color:var(--abh-primary);display:flex;align-items:center;justify-content:center;}
.abh-mcard__ico svg{width:18px;height:18px;}
.abh-mcard__price{display:flex;align-items:baseline;gap:.25rem;margin:1rem 0 .15rem;}
.abh-mcard__from{font-size:.8rem;color:var(--abh-body);}
.abh-mcard__amt{font-family:var(--abh-font-display);font-weight:800;font-size:1.8rem;color:var(--abh-primary);line-height:1;}
.abh-mcard__cyc{color:var(--abh-body);font-size:.85rem;}
.abh-mcard__plan{font-size:.82rem;color:var(--abh-body);margin-bottom:1rem;}
.abh-mcard__list{list-style:none;margin:0 0 1.35rem;padding:0;display:grid;gap:.5rem;flex:1;}
.abh-mcard__list li{position:relative;padding-left:1.4rem;font-size:.84rem;color:var(--abh-body);line-height:1.4;}
.abh-mcard__list li::before{content:"";position:absolute;left:0;top:.3em;width:13px;height:7px;border-left:2px solid var(--abh-primary);border-bottom:2px solid var(--abh-primary);transform:rotate(-45deg);}
.abh-mcard__cta{width:100%;}
.abh-mcard__all{display:inline-block;margin-top:.85rem;text-align:center;font-family:var(--abh-font-display);font-weight:600;font-size:.85rem;}
.abh-mslider__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:44px;border-radius:50%;border:1px solid var(--abh-border);background:#fff;color:var(--abh-secondary);font-size:1.4rem;line-height:1;cursor:pointer;box-shadow:var(--abh-shadow-pop);display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;}
.abh-mslider__nav:hover{background:var(--abh-primary);color:#fff;border-color:var(--abh-primary);}
.abh-mslider__nav--prev{left:-14px;}
.abh-mslider__nav--next{right:-14px;}
.abh-mslider__dots{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-top:1.75rem;}
.abh-mslider__dot{width:9px;height:9px;border-radius:50%;border:0;background:var(--abh-border-strong);cursor:pointer;padding:0;transition:background .15s,width .2s,border-radius .2s;}
.abh-mslider__dot.is-active{background:var(--abh-primary);width:24px;border-radius:6px;}
@media (max-width:1024px){.abh-mslider__track{--per:3;}}
@media (max-width:760px){.abh-mslider__track{--per:2;}.abh-mslider__nav{display:none;}}
@media (max-width:520px){.abh-mslider__track{--per:1;}}

/* ---- Homepage promo banner (above hero) ---- */
.abh-promo-banner{background:linear-gradient(120deg,#06246b,#0a51c4 55%,#0774FF);border-bottom:1px solid rgba(255,255,255,.12);}
.abh-promo-banner__inner{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding-block:.9rem;}
.abh-promo-banner__badge{flex:none;font-family:var(--abh-font-display);font-weight:800;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--abh-ink);background:var(--abh-lime);padding:.3rem .7rem;border-radius:999px;}
.abh-promo-banner__text{flex:1;min-width:200px;margin:0;color:#fff;font-size:.96rem;}
.abh-promo-banner__text strong{font-weight:700;}
.abh-promo-banner__code{font-family:var(--abh-font-display);font-weight:800;letter-spacing:.04em;color:var(--abh-lime);}
.abh-promo-banner__btn{flex:none;}
@media (max-width:600px){
	.abh-promo-banner__inner{flex-direction:column;align-items:flex-start;}
	.abh-promo-banner__btn{width:100%;text-align:center;}
}
