/* ============================================================
   AH TECH HUB
   Main stylesheet
   Easy to customize: edit the variables below first.
============================================================ */

:root {
    --black: #050505;
    --black-2: #0b0b0b;
    --black-3: #121212;
    --gold: #f7b928;
    --gold-light: #ffd76a;
    --gold-dark: #c8890d;
    --white: #ffffff;
    --text: #68717d;
    --dark-text: #151515;
    --line: rgba(247,185,40,.22);
    --container: 1180px;
    --radius: 18px;
    --shadow: 0 20px 70px rgba(0,0,0,.16);
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; scroll-padding-top: 82px; }

body {
    font-family: "Inter", Arial, sans-serif;
    color: var(--dark-text);
    background: #fff;
    line-height: 1.6;
    overflow-x: hidden;
}

body::selection { background: var(--gold); color: #000; }

a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; display: block; }

.container {
    width: min(var(--container), calc(100% - 40px));
    margin-inline: auto;
}

/* HEADER */
.site-header {
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    right: 0;
    height: 80px;
    background: rgba(5,5,5,.72);
    border-bottom: 1px solid rgba(255,255,255,.07);
    backdrop-filter: blur(18px);
    transition: .3s ease;
}

.site-header.scrolled {
    background: rgba(5,5,5,.94);
    box-shadow: 0 12px 35px rgba(0,0,0,.22);
}

.nav-wrap {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
}

.brand img {
    width: 92px;
    max-height: 70px;
    object-fit: contain;
}

.nav {
    display: flex;
    align-items: center;
    gap: 26px;
    color: #eee;
    font-size: 12px;
    font-weight: 600;
}

.nav > a:not(.nav-demo) {
    position: relative;
    padding: 30px 0;
}

.nav > a:not(.nav-demo)::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 20px;
    height: 2px;
    background: var(--gold);
    transform: scaleX(0);
    transition: .25s;
}

.nav > a:hover::after,
.nav > a.active::after { transform: scaleX(1); }

.nav-demo {
    padding: 11px 17px;
    color: #090909;
    background: linear-gradient(135deg, var(--gold-light), var(--gold));
    border-radius: 7px;
    font-weight: 800;
    box-shadow: 0 7px 25px rgba(247,185,40,.18);
}

.nav-demo span { margin-left: 8px; }

.menu-toggle {
    display: none;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 9px;
    background: transparent;
}

.menu-toggle span {
    display: block;
    width: 19px;
    height: 2px;
    margin: 4px auto;
    background: #fff;
}

/* COMMON */
.section { padding: 105px 0; }

.section-kicker {
    display: inline-block;
    margin-bottom: 12px;
    color: var(--gold-dark);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.dark-section .section-kicker,
.pricing .section-kicker,
.cta-section .section-kicker { color: var(--gold); }

h1, h2, h3, h4 { line-height: 1.1; }

h2 {
    font-size: clamp(34px, 4vw, 52px);
    letter-spacing: -2.3px;
}

h2 em, h1 em {
    color: var(--gold);
    font-style: normal;
}

.section-heading { max-width: 720px; margin-bottom: 48px; }
.section-heading.centered { margin-inline: auto; text-align: center; }
.section-heading h2 { margin-bottom: 14px; }
.section-heading p { color: #727b87; font-size: 15px; }

.dark-section .section-heading p { color: #929aa5; }

/* BUTTONS */
.btn {
    min-height: 48px;
    padding: 0 20px;
    border-radius: 8px;
    border: 1px solid transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 12px;
    font-weight: 800;
    transition: .25s ease;
}

.btn:hover { transform: translateY(-2px); }

.btn-gold {
    color: #090909;
    background: linear-gradient(135deg, var(--gold-light), var(--gold));
    box-shadow: 0 12px 30px rgba(247,185,40,.16);
}

.btn-outline {
    color: #fff;
    border-color: rgba(247,185,40,.6);
    background: rgba(255,255,255,.025);
}

.btn-outline:hover { background: var(--gold); color: #050505; }

.btn.full { width: 100%; }

/* HERO */
.hero {
    min-height: 760px;
    position: relative;
    overflow: hidden;
    background: #050505;
    color: #fff;
}

.hero-bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 78% 46%, rgba(247,185,40,.16), transparent 27%),
        radial-gradient(circle at 22% 25%, rgba(247,185,40,.06), transparent 25%),
        linear-gradient(rgba(247,185,40,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(247,185,40,.035) 1px, transparent 1px);
    background-size: auto, auto, 55px 55px, 55px 55px;
}

.slider, .slide { min-height: 760px; }

.slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateX(35px);
    transition: opacity .65s ease, transform .65s ease;
}

.slide.active {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

.hero-grid {
    min-height: 760px;
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    align-items: center;
    gap: 30px;
    position: relative;
    z-index: 2;
}

.hero-copy { padding-top: 50px; max-width: 650px; }

.eyebrow {
    display: inline-flex;
    padding: 8px 12px;
    margin-bottom: 20px;
    border: 1px solid rgba(247,185,40,.45);
    border-radius: 999px;
    color: var(--gold-light);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.hero h1 {
    font-size: clamp(47px, 6vw, 76px);
    letter-spacing: -4px;
    margin-bottom: 22px;
}

.hero-copy > p {
    max-width: 650px;
    color: #aeb2b8;
    font-size: 15px;
    line-height: 1.85;
    margin-bottom: 28px;
}

.hero-actions { display: flex; flex-wrap: wrap; gap: 11px; }

.hero-points {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 30px;
    color: #d5d5d5;
    font-size: 10px;
}

.hero-points span:first-letter { color: var(--gold); }

.hero-visual {
    min-height: 500px;
    position: relative;
    display: grid;
    place-items: center;
}

.logo-stage {
    width: min(480px, 80%);
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background:
        radial-gradient(circle, rgba(247,185,40,.16), rgba(0,0,0,0) 63%),
        radial-gradient(circle, #17120a 0 25%, #080808 67%);
    border: 1px solid rgba(247,185,40,.28);
    box-shadow: 0 0 90px rgba(247,185,40,.13), inset 0 0 70px rgba(247,185,40,.06);
}

.logo-stage::before {
    content: "";
    position: absolute;
    width: 72%;
    height: 72%;
    border: 1px dashed rgba(247,185,40,.35);
    border-radius: 50%;
    animation: rotate 18s linear infinite;
}

.logo-stage img {
    position: relative;
    z-index: 2;
    width: 72%;
    max-height: 72%;
    object-fit: contain;
    filter: drop-shadow(0 15px 30px rgba(247,185,40,.2));
}

.glow-ring {
    position: absolute;
    width: 76%;
    height: 76%;
    border-radius: 50%;
    border: 1px solid rgba(247,185,40,.15);
    box-shadow: 0 0 45px rgba(247,185,40,.08);
}

.dashboard {
    width: min(500px, 90%);
    padding: 18px;
    border: 1px solid rgba(247,185,40,.25);
    border-radius: 18px;
    background: rgba(18,18,18,.9);
    box-shadow: 0 30px 80px rgba(0,0,0,.55);
}

.dash-head { display:flex; justify-content:space-between; padding-bottom:14px; border-bottom:1px solid #272727; color:#aaa; font-size:10px; }
.dash-head b { color:var(--gold); }
.dash-stats { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:12px; }
.dash-stats div { padding:17px; background:#101010; border:1px solid #242424; border-radius:10px; }
.dash-stats small { display:block; color:#777; font-size:9px; }
.dash-stats strong { display:block; margin-top:4px; color:#fff; font-size:21px; }
.dash-chart { height:145px; display:flex; align-items:end; gap:13px; padding:18px 20px; margin-top:10px; border-radius:10px; background:#101010; }
.dash-chart i { flex:1; border-radius:5px 5px 0 0; background:linear-gradient(#f7c94d,#8b5e08); }
.dash-chart i:nth-child(1){height:35%}.dash-chart i:nth-child(2){height:50%}.dash-chart i:nth-child(3){height:43%}.dash-chart i:nth-child(4){height:70%}.dash-chart i:nth-child(5){height:61%}.dash-chart i:nth-child(6){height:82%}.dash-chart i:nth-child(7){height:95%}
.dash-list { display:grid; gap:7px; margin-top:10px; }
.dash-list span { display:flex; justify-content:space-between; padding:9px 11px; border-radius:7px; background:#101010; color:#aaa; font-size:10px; }
.dash-list b { color:var(--gold); }

.orbit-card {
    width: 360px;
    height: 360px;
    border: 1px solid rgba(247,185,40,.25);
    border-radius: 50%;
    position: relative;
    background: radial-gradient(circle, rgba(247,185,40,.12), transparent 55%);
    box-shadow: 0 0 100px rgba(247,185,40,.08);
}
.orbit-card::before, .orbit-card::after { content:""; position:absolute; inset:35px; border:1px dashed rgba(247,185,40,.2); border-radius:50%; }
.orbit-card::after { inset:85px; }
.orbit-center { position:absolute; inset:0; margin:auto; width:90px; height:90px; display:grid; place-items:center; border-radius:50%; background:linear-gradient(135deg,#ffd86a,#c9890c); color:#080808; font-size:28px; font-weight:900; box-shadow:0 0 40px rgba(247,185,40,.35); }
.orbit-item { position:absolute; padding:9px 13px; border:1px solid rgba(247,185,40,.45); background:#0d0d0d; border-radius:7px; color:var(--gold); font-size:10px; font-weight:800; }
.o1{top:25px;left:50%}.o2{right:12px;top:45%}.o3{bottom:20px;left:44%}.o4{left:10px;top:45%}.o5{top:72px;left:18px}

.slider-arrow {
    position:absolute; top:50%; transform:translateY(-50%);
    z-index:10; width:40px; height:40px; border-radius:50%;
    border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.06);
    color:#fff; font-size:27px;
}
.slider-arrow:hover { background:var(--gold); color:#000; }
.slider-arrow.prev { left:18px; }
.slider-arrow.next { right:18px; }

.slider-dots {
    position:absolute; z-index:10; bottom:35px; left:50%; transform:translateX(-50%);
    display:flex; gap:7px;
}
.slider-dots button { width:8px; height:8px; border:0; border-radius:99px; background:#5a5a5a; transition:.25s; }
.slider-dots button.active { width:30px; background:var(--gold); }

/* ABOUT */
.about { background:#fff; }
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.about-copy p { color:var(--text); font-size:14px; margin:18px 0 25px; max-width:570px; }
.mini-features { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:25px; }
.mini-features div { padding:13px; border:1px solid #ececec; border-radius:9px; font-size:11px; font-weight:700; }
.mini-features b { color:var(--gold-dark); margin-right:7px; }
.about-card { min-height:430px; position:relative; overflow:hidden; border-radius:24px; background:#080808; display:grid; place-items:center; border:1px solid var(--line); }
.about-card::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at center,rgba(247,185,40,.18),transparent 52%); }
.about-card img { position:relative; width:65%; filter:drop-shadow(0 20px 35px rgba(247,185,40,.15)); }
.about-stats { position:absolute; left:20px; right:20px; bottom:20px; display:grid; grid-template-columns:repeat(3,1fr); background:rgba(0,0,0,.75); border:1px solid rgba(247,185,40,.3); border-radius:10px; overflow:hidden; }
.about-stats div { text-align:center; padding:13px 5px; border-right:1px solid rgba(247,185,40,.2); }
.about-stats div:last-child { border:0; }
.about-stats strong { display:block; color:var(--gold); font-size:20px; }
.about-stats small { color:#bbb; font-size:9px; }

/* SERVICES */
.dark-section { background:#070707; color:#fff; position:relative; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:13px; }
.service-card { padding:27px; min-height:220px; border:1px solid #30250f; border-radius:13px; background:linear-gradient(145deg,#111,#090909); transition:.3s; }
.service-card:hover { transform:translateY(-6px); border-color:rgba(247,185,40,.65); box-shadow:0 20px 50px rgba(247,185,40,.07); }
.service-icon { width:48px; height:48px; display:grid; place-items:center; border:1px solid rgba(247,185,40,.4); border-radius:10px; color:var(--gold); font-size:20px; margin-bottom:20px; }
.service-card h3 { font-size:16px; margin-bottom:9px; }
.service-card p { color:#8d8d8d; font-size:11px; line-height:1.75; }

/* PRODUCTS */
.products-section { background:#fff; }
.filter-tabs { display:flex; justify-content:center; flex-wrap:wrap; gap:7px; margin:-15px 0 30px; }
.filter-tabs button { border:0; padding:9px 15px; border-radius:8px; background:#f4f4f4; color:#555; font-size:10px; font-weight:700; }
.filter-tabs button.active { background:var(--gold); color:#080808; }
.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.product-card { border:1px solid #e7e7e7; border-radius:13px; overflow:hidden; background:#fff; transition:.3s; }
.product-card:hover { transform:translateY(-5px); box-shadow:var(--shadow); }
.product-card.hidden { display:none; }
.product-image { height:165px; display:grid; place-items:center; position:relative; overflow:hidden; background:#111; }
.product-image::before { content:""; position:absolute; width:150px; height:150px; border:1px solid rgba(247,185,40,.25); border-radius:50%; box-shadow:0 0 55px rgba(247,185,40,.08); }
.product-image span { position:relative; color:var(--gold); font-size:23px; font-weight:900; }
.pos-image { background:linear-gradient(135deg,#171717,#050505); }
.restaurant-image { background:linear-gradient(135deg,#231a0b,#080808); }
.pharmacy-image { background:linear-gradient(135deg,#102019,#080808); }
.supermarket-image { background:linear-gradient(135deg,#17150c,#080808); }
.erp-image { background:linear-gradient(135deg,#101724,#080808); }
.accounting-image { background:linear-gradient(135deg,#20180a,#080808); }
.web-image { background:linear-gradient(135deg,#0b1b1f,#080808); }
.product-card h3 { padding:16px 17px 5px; font-size:14px; }
.product-card p { padding:0 17px; min-height:45px; color:#727272; font-size:10px; }
.product-card > a { display:block; padding:15px 17px 18px; color:#b57800; font-size:10px; font-weight:800; }

/* ODOO */
.odoo-section { background:#f8f8f8; }
.odoo-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.odoo-copy > p { color:var(--text); font-size:14px; margin:18px 0; }
.check-list { list-style:none; display:grid; gap:10px; margin:20px 0 28px; }
.check-list li { font-size:12px; font-weight:700; }
.check-list li::before { content:"✓"; color:var(--gold-dark); margin-right:9px; }
.odoo-panel { padding:20px; border-radius:17px; background:#090909; border:1px solid #30250f; box-shadow:var(--shadow); color:#ddd; }
.code-top { display:flex; align-items:center; gap:5px; padding-bottom:17px; margin-bottom:13px; border-bottom:1px solid #292929; }
.code-top span { width:7px; height:7px; border-radius:50%; background:#555; }
.code-top b { margin-left:auto; color:#777; font-size:9px; }
.code-line { display:grid; grid-template-columns:28px 1fr; font-family:Consolas,monospace; font-size:11px; line-height:2.05; }
.code-line i { color:#555; font-style:normal; }
.code-line em { color:#e7a81a; font-style:normal; }
.code-line strong { color:#f6c54d; font-weight:500; }

/* PRICING */
.pricing { padding-bottom:85px; }
.billing-switch { width:max-content; margin:-15px auto 35px; padding:4px; border:1px solid #292929; border-radius:999px; background:#101010; }
.billing-switch button { border:0; padding:9px 18px; border-radius:999px; color:#999; background:transparent; font-size:10px; font-weight:800; }
.billing-switch button.active { color:#080808; background:var(--gold); }
.billing-switch small { margin-left:4px; }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:stretch; }
.price-card { position:relative; padding:30px; border:1px solid #30250f; border-radius:14px; background:#0f0f0f; }
.price-card.featured { border-color:var(--gold); box-shadow:0 20px 60px rgba(247,185,40,.08); }
.popular { position:absolute; top:0; left:0; right:0; padding:7px; text-align:center; background:var(--gold); color:#000; font-size:9px; font-weight:900; }
.price-card.featured h3 { margin-top:13px; }
.price-card h3 { font-size:20px; }
.price-card > p { min-height:42px; margin-top:7px; color:#888; font-size:11px; }
.price { margin:22px 0; color:var(--gold); font-size:30px; font-weight:900; }
.price small { color:#888; font-size:10px; font-weight:500; }
.price-card ul { list-style:none; display:grid; gap:10px; min-height:270px; padding:20px 0; border-top:1px solid #252525; }
.price-card li { color:#bbb; font-size:11px; }
.price-card li::before { content:"✓"; color:var(--gold); margin-right:8px; }
.price-card .btn-outline { border-color:#59440f; }

/* LOCATIONS */
.locations { padding:65px 0; background:#fff; }
.location-box { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:28px 35px; border:1px solid #e7e7e7; border-radius:18px; box-shadow:0 10px 40px rgba(0,0,0,.05); }
.location-box h2 { font-size:30px; }
.locations-list { display:flex; gap:25px; }
.locations-list > div { display:grid; grid-template-columns:auto 1fr; column-gap:10px; align-items:center; }
.flag { grid-row:span 2; font-size:28px; }
.locations-list b { font-size:12px; }
.locations-list small { color:#777; font-size:9px; }

/* CTA */
.cta-section { padding:0 0 85px; background:#fff; }
.cta-box { display:grid; grid-template-columns:100px 1fr auto; align-items:center; gap:25px; padding:28px 35px; border:1px solid #33270e; border-radius:17px; color:#fff; background:#080808; }
.cta-box img { width:85px; }
.cta-box h2 { font-size:25px; letter-spacing:-1px; }
.cta-box p { color:#858585; font-size:11px; margin-top:5px; }

/* CONTACT */
.contact { background:#f7f7f7; }
.contact-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:start; }
.contact-copy > p { max-width:500px; color:var(--text); font-size:14px; margin:18px 0 28px; }
.contact-items { display:grid; gap:13px; }
.contact-items > div { display:flex; align-items:center; gap:13px; }
.contact-items b { width:42px; height:42px; display:grid; place-items:center; border-radius:10px; color:var(--gold-dark); background:#fff; border:1px solid #eee; }
.contact-items small { display:block; color:#999; font-size:8px; font-weight:800; }
.contact-items span { font-size:12px; font-weight:700; }
.contact-form { padding:28px; border-radius:17px; background:#fff; border:1px solid #e7e7e7; box-shadow:var(--shadow); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.contact-form label { display:block; margin-bottom:14px; color:#333; font-size:10px; font-weight:800; }
.contact-form input, .contact-form select, .contact-form textarea { width:100%; margin-top:7px; border:1px solid #dedede; border-radius:8px; outline:0; padding:12px; color:#222; background:#fbfbfb; font-size:11px; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(247,185,40,.1); }

/* FOOTER */
footer { background:#050505; color:#fff; padding:55px 0 20px; }
.footer-grid { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:45px; padding-bottom:40px; border-bottom:1px solid #202020; }
.footer-about img { width:90px; }
.footer-about p { max-width:260px; color:#777; font-size:10px; margin:13px 0 18px; }
footer h4 { margin-bottom:16px; color:#fff; font-size:11px; }
.footer-grid > div:not(.footer-about) { display:grid; align-content:start; gap:9px; }
.footer-grid a, .footer-grid span { color:#777; font-size:10px; }
.footer-grid a:hover { color:var(--gold); }
.socials { display:flex; gap:7px; }
.socials a { width:28px; height:28px; display:grid; place-items:center; border:1px solid #343434; border-radius:50%; color:#aaa; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:20px; color:#555; font-size:9px; }

/* FLOATING WHATSAPP */
.whatsapp { position:fixed; z-index:999; right:20px; bottom:20px; width:53px; height:53px; display:grid; place-items:center; border-radius:50%; background:#20c96a; color:#fff; font-size:25px; box-shadow:0 12px 35px rgba(32,201,106,.3); }
.whatsapp:hover { transform:scale(1.07); }

/* ANIMATION */
.reveal { opacity:0; transform:translateY(25px); transition:.7s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }
@keyframes rotate { to { transform:rotate(360deg); } }

/* RESPONSIVE */
@media (max-width:1050px) {
    .nav { gap:15px; }
    .product-grid { grid-template-columns:repeat(2,1fr); }
    .service-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:850px) {
    .site-header { height:70px; }
    .menu-toggle { display:block; }
    .nav {
        position:absolute; top:70px; left:15px; right:15px;
        display:grid; gap:0; padding:12px;
        background:rgba(7,7,7,.98); border:1px solid #292929;
        border-radius:12px; opacity:0; visibility:hidden;
        transform:translateY(-10px); transition:.25s;
    }
    .nav.open { opacity:1; visibility:visible; transform:translateY(0); }
    .nav > a:not(.nav-demo) { padding:12px; }
    .nav > a:not(.nav-demo)::after { bottom:5px; }
    .nav-demo { text-align:center; margin-top:5px; }
    .hero, .slider, .slide, .hero-grid { min-height:760px; }
    .hero-grid, .about-grid, .odoo-grid, .contact-grid { grid-template-columns:1fr; }
    .hero-copy { padding-top:90px; }
    .hero-visual { min-height:270px; margin-top:-20px; }
    .logo-stage { width:290px; }
    .glow-ring { width:320px; height:320px; }
    .orbit-card { width:280px; height:280px; }
    .location-box { display:grid; }
    .footer-grid { grid-template-columns:1fr 1fr; }
    .cta-box { grid-template-columns:75px 1fr; }
    .cta-box .btn { grid-column:2; justify-self:start; }
}

@media (max-width:600px) {
    .container { width:min(100% - 28px, 550px); }
    .section { padding:75px 0; }
    .hero h1 { font-size:46px; letter-spacing:-2.7px; }
    .hero-copy > p { font-size:13px; }
    .hero-points { gap:10px 15px; }
    .hero-visual { display:none; }
    .slider-arrow { width:34px; height:34px; font-size:23px; }
    .slider-arrow.prev { left:8px; }
    .slider-arrow.next { right:8px; }
    .service-grid, .product-grid, .pricing-grid, .footer-grid { grid-template-columns:1fr; }
    .price-card ul { min-height:auto; }
    .mini-features, .form-row { grid-template-columns:1fr; }
    .about-card { min-height:330px; }
    .locations-list { display:grid; }
    .cta-box { grid-template-columns:1fr; }
    .cta-box img { width:75px; }
    .cta-box .btn { grid-column:auto; }
    .footer-bottom { flex-direction:column; }
}
