:root{
  --teal:#2FAF9E;
  --teal-dark:#23897C;
  --navy:#1B3A4F;
  --orange:#EB7B4D;
  --ink:#13242C;
  --mint:#EAF6F3;
  --paper:#FBFBF9;
  --line:#E3E9E7;
  --white:#FFFFFF;
  --radius-cap: 999px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Inter',sans-serif;
  color:var(--ink);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,.display{font-family:'Poppins',sans-serif; font-weight:700; letter-spacing:-0.02em;}
a{text-decoration:none;color:inherit;}
ul{list-style:none;}
img{max-width:100%;display:block;}
.wrap{max-width:1180px; margin:0 auto; padding:0 24px;}
.btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:13px 26px; border-radius:var(--radius-cap);
  font-family:'Poppins',sans-serif; font-weight:600; font-size:15px;
  cursor:pointer; border:none; transition:transform .15s ease, box-shadow .15s ease;
  white-space:nowrap;
}
.btn:hover{transform:translateY(-2px);}
.btn:focus-visible{outline:3px solid var(--orange); outline-offset:2px;}
.btn-primary{background:var(--orange); color:var(--white); box-shadow:0 8px 20px -8px rgba(235,123,77,.7);}
.btn-primary:hover{box-shadow:0 12px 24px -8px rgba(235,123,77,.85);}
.btn-dark{background:var(--navy); color:var(--white);}
.btn-outline{background:transparent; color:var(--navy); border:1.5px solid var(--navy);}
.btn-outline-light{background:transparent; color:var(--white); border:1.5px solid rgba(255,255,255,.6);}
.btn-outline-light:hover{background:rgba(255,255,255,.12);}
.btn[disabled]{opacity:.5; cursor:not-allowed; transform:none;}
.eyebrow{
  font-family:'Poppins',sans-serif; font-weight:600; font-size:12.5px;
  letter-spacing:.14em; text-transform:uppercase; color:var(--teal-dark);
  display:flex; align-items:center; gap:10px;
}
.eyebrow::before{content:""; width:18px; height:9px; border-radius:var(--radius-cap);
  background:linear-gradient(90deg, var(--teal) 50%, var(--navy) 50%);}

/* ===== Capsule signature element ===== */
.capsule-divider{height:14px; width:100%; display:flex; overflow:hidden; border-radius:var(--radius-cap);}
.capsule-divider span{flex:1;}
.capsule-divider .c1{background:var(--teal);}
.capsule-divider .c2{background:var(--navy);}
.capsule-divider .c3{background:var(--orange);}

/* ===== Top utility bar ===== */
.utility-bar{background:var(--navy); color:#CFE7E2; font-size:13px;}
.utility-bar .wrap{display:flex; justify-content:space-between; align-items:center; height:38px;}
.utility-bar .left, .utility-bar .right{display:flex; gap:22px; align-items:center;}
.utility-bar a{opacity:.92; transition:opacity .15s;}
.utility-bar a:hover{opacity:1; color:#fff;}

/* ===== Nav ===== */
header.main-nav{position:sticky; top:0; z-index:50; background:rgba(251,251,249,.92); backdrop-filter:blur(8px); border-bottom:1px solid var(--line);}
.main-nav .wrap{display:flex; align-items:center; justify-content:space-between; height:76px;}
.logo{display:flex; align-items:center; gap:10px;}
.logo-mark{width:34px; height:34px; position:relative;}
.logo-word{font-family:'Poppins',sans-serif; font-weight:800; font-size:22px; color:var(--navy);}
.logo-word span{color:var(--teal);}
nav.links{display:flex; gap:30px; font-weight:600; font-size:14.5px; color:var(--ink);}
nav.links a{position:relative; padding:6px 0;}
nav.links a::after{content:""; position:absolute; left:0; bottom:0; height:2px; width:0; background:var(--orange); transition:width .2s;}
nav.links a:hover::after, nav.links a.active::after{width:100%;}
nav.links a.active{color:var(--teal-dark);}
.nav-actions{display:flex; align-items:center; gap:12px;}
.icon-btn{width:38px; height:38px; border-radius:50%; display:grid; place-items:center; border:1.5px solid var(--line); background:var(--white); cursor:pointer;}
.mobile-toggle{display:none; width:38px; height:38px; border-radius:10px; border:1.5px solid var(--line); background:#fff; align-items:center; justify-content:center; cursor:pointer;}

/* ===== Page header (sub-pages hero strip) ===== */
.page-head{background:var(--navy); color:#fff; padding:54px 0 46px; position:relative; overflow:hidden;}
.page-head::after{content:""; position:absolute; right:-140px; top:-140px; width:380px; height:380px; border-radius:50%; background:radial-gradient(circle, rgba(47,175,158,.45), transparent 70%);}
.page-head .wrap{position:relative; z-index:2;}
.breadcrumb{font-size:13px; color:#9FDCCF; margin-bottom:10px; display:flex; gap:8px; align-items:center;}
.page-head h1{font-size:34px; color:#fff;}
.page-head p{font-size:15px; color:#CBE0DA; margin-top:10px; max-width:560px;}

/* ===== Hero (home only) ===== */
.hero{position:relative; background:var(--navy); overflow:hidden; color:#fff;}
.hero::before{content:""; position:absolute; right:-180px; top:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle at 30% 30%, rgba(47,175,158,.55), transparent 70%);}
.hero::after{content:""; position:absolute; left:-120px; bottom:-200px; width:420px; height:420px; border-radius:50%; background:radial-gradient(circle at 60% 40%, rgba(235,123,77,.35), transparent 70%);}
.hero .wrap{position:relative; z-index:2; padding-top:78px; padding-bottom:64px; display:grid; grid-template-columns:1.1fr .9fr; gap:48px; align-items:center;}
.hero h1{font-size:46px; line-height:1.12; color:#fff; margin-bottom:18px;}
.hero h1 em{font-style:normal; color:var(--orange);}
.hero p.lead{font-size:17px; line-height:1.65; color:#D7E7E3; max-width:480px; margin-bottom:30px;}
.hero-ctas{display:flex; gap:14px; margin-bottom:34px; flex-wrap:wrap;}
.hero-stats{display:flex; gap:34px; flex-wrap:wrap;}
.hero-stats div b{display:block; font-family:'Poppins',sans-serif; font-size:25px; color:#fff;}
.hero-stats div span{font-size:12.5px; color:#AFC9C3; text-transform:uppercase; letter-spacing:.06em;}

.search-card{background:#fff; border-radius:20px; padding:26px; color:var(--ink); box-shadow:0 30px 60px -20px rgba(0,0,0,.45);}
.search-card h3{font-size:17px; margin-bottom:4px;}
.search-card p{font-size:13.5px; color:#5C6B6F; margin-bottom:18px;}
.search-row{display:flex; gap:10px; margin-bottom:14px;}
.search-row input{flex:1; padding:13px 16px; border-radius:12px; border:1.5px solid var(--line); font-family:inherit; font-size:14px;}
.search-row input:focus{outline:none; border-color:var(--teal);}
.upload-row{display:flex; align-items:center; gap:12px; padding:14px; border:1.5px dashed var(--teal); border-radius:12px; background:var(--mint); cursor:pointer;}
.upload-row .ic{width:36px; height:36px; border-radius:50%; background:var(--teal); display:grid; place-items:center; color:#fff; flex-shrink:0;}
.upload-row strong{font-size:13.5px; display:block;}
.upload-row span{font-size:12px; color:#5C6B6F;}

/* ===== Section generic ===== */
section{padding:84px 0;}
.sec-head{max-width:640px; margin-bottom:48px;}
.sec-head h2{font-size:33px; color:var(--navy); margin-top:12px; line-height:1.2;}
.sec-head p{font-size:15.5px; color:#5C6B6F; margin-top:14px; line-height:1.6;}
.sec-head.center{margin-inline:auto; text-align:center;}
.sec-head.center .eyebrow{justify-content:center;}

/* ===== Quick services ===== */
.services-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:18px;}
.service-card{background:#fff; border:1px solid var(--line); border-radius:16px; padding:26px 18px; text-align:center; transition:transform .2s, box-shadow .2s;}
.service-card:hover{transform:translateY(-6px); box-shadow:0 18px 30px -16px rgba(27,58,79,.25); border-color:transparent;}
.service-card .ic{width:52px; height:52px; border-radius:50%; margin:0 auto 14px; display:grid; place-items:center; font-size:20px;}
.service-card h4{font-size:14.5px; color:var(--navy); margin-bottom:6px;}
.service-card p{font-size:12.5px; color:#697578; line-height:1.5;}

/* category strip */
.cat-strip{background:var(--mint);}
.cat-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:16px;}
.cat-card{background:#fff; border-radius:14px; padding:20px; display:flex; flex-direction:column; gap:10px; border:1px solid #DCEFE9; transition:transform .2s;}
.cat-card:hover{transform:translateY(-4px);}
.cat-card .tag{font-size:11px; font-weight:700; color:var(--teal-dark); text-transform:uppercase; letter-spacing:.06em;}
.cat-card h4{font-size:15px; color:var(--navy);}
.cat-card .swatch{width:100%; height:64px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:26px;}

/* ===== Product cards (online pharmacy) ===== */
.toolbar{display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap; margin-bottom:30px;}
.filter-row{display:flex; gap:10px; flex-wrap:wrap;}
.filter-chip{padding:9px 16px; border-radius:var(--radius-cap); background:#fff; border:1px solid var(--line); font-size:13px; font-weight:600; cursor:pointer; color:#475458;}
.filter-chip.active{background:var(--navy); color:#fff; border-color:var(--navy);}
.product-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.product-card{background:#fff; border:1px solid var(--line); border-radius:16px; padding:18px; display:flex; flex-direction:column; transition:box-shadow .2s, transform .2s;}
.product-card:hover{box-shadow:0 18px 30px -16px rgba(27,58,79,.22); transform:translateY(-4px);}
.product-thumb{height:120px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:34px; margin-bottom:14px;}
.product-card .pname{font-size:14.5px; font-weight:700; color:var(--navy); margin-bottom:4px;}
.product-card .pdesc{font-size:12px; color:#7C8A8D; margin-bottom:14px; flex:1;}
.product-card .prow{display:flex; justify-content:space-between; align-items:center;}
.price{font-family:'Poppins',sans-serif; font-weight:700; color:var(--ink); font-size:15px;}
.price s{color:#A6B3B6; font-weight:500; font-size:12.5px; margin-right:6px;}
.add-btn{width:36px; height:36px; border-radius:50%; background:var(--mint); border:1px solid #D7EFE8; color:var(--teal-dark); font-size:16px; cursor:pointer; display:grid; place-items:center;}
.add-btn:hover{background:var(--teal); color:#fff;}
.rx-tag{font-size:10.5px; font-weight:700; color:var(--orange); text-transform:uppercase; letter-spacing:.04em; margin-bottom:6px;}

/* ===== Why us ===== */
.why{display:grid; grid-template-columns:.85fr 1.15fr; gap:60px; align-items:center;}
.why-visual{background:var(--navy); border-radius:24px; padding:34px; color:#fff; position:relative; overflow:hidden;}
.why-visual::after{content:""; position:absolute; width:260px; height:260px; border-radius:50%; background:radial-gradient(circle, rgba(47,175,158,.5), transparent 70%); right:-90px; bottom:-90px;}
.why-visual .badge{display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.1); padding:8px 14px; border-radius:var(--radius-cap); font-size:12.5px; margin-bottom:18px;}
.why-visual h3{font-size:24px; margin-bottom:10px;}
.why-visual p{font-size:14px; color:#CFE2DD; line-height:1.6;}
.why-list{display:grid; gap:22px;}
.why-item{display:flex; gap:18px;}
.why-item .num{font-family:'Poppins',sans-serif; font-weight:700; font-size:14px; color:var(--orange); width:34px; flex-shrink:0;}
.why-item h4{font-size:16.5px; color:var(--navy); margin-bottom:5px;}
.why-item p{font-size:14px; color:#5C6B6F; line-height:1.55;}

/* ===== Franchise ===== */
.franchise{background:var(--navy); color:#fff; position:relative; overflow:hidden;}
.franchise::before{content:""; position:absolute; left:-160px; top:-140px; width:480px; height:480px; border-radius:50%; background:radial-gradient(circle, rgba(235,123,77,.30), transparent 70%);}
.franchise .wrap{position:relative; z-index:2;}
.franchise .sec-head h2, .franchise .eyebrow{color:#fff;}
.franchise .eyebrow{color:#9FDCCF;}
.franchise .sec-head p{color:#CBE0DA;}
.tier-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:10px;}
.tier-card{background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:18px; padding:30px; display:flex; flex-direction:column;}
.tier-card.featured{background:#fff; color:var(--ink); border-color:transparent; position:relative;}
.tier-card.featured::before{content:"Most Popular"; position:absolute; top:-13px; left:30px; background:var(--orange); color:#fff; font-size:11px; font-weight:700; padding:5px 12px; border-radius:var(--radius-cap); font-family:'Poppins',sans-serif;}
.tier-card .tier-name{font-family:'Poppins',sans-serif; font-weight:700; font-size:18px; margin-bottom:6px;}
.tier-card .tier-price{font-family:'Poppins',sans-serif; font-weight:700; font-size:27px; margin-bottom:4px;}
.tier-card .tier-price span{font-size:13px; font-weight:500; opacity:.7;}
.tier-card .tier-sub{font-size:13px; opacity:.75; margin-bottom:20px;}
.tier-card ul{display:grid; gap:11px; margin-bottom:26px; flex:1;}
.tier-card li{font-size:13.5px; display:flex; gap:9px; align-items:flex-start; line-height:1.5;}
.tier-card li::before{content:"✓"; color:var(--teal); font-weight:700; flex-shrink:0;}
.tier-card.featured li::before{color:var(--teal-dark);}

/* franchise process steps */
.process-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:10px;}
.process-card{background:#fff; border:1px solid var(--line); border-radius:16px; padding:24px;}
.process-card .step-no{font-family:'Poppins',sans-serif; font-weight:800; font-size:26px; color:#D9E9E5; margin-bottom:10px;}
.process-card h4{font-size:15px; color:var(--navy); margin-bottom:6px;}
.process-card p{font-size:13px; color:#697578; line-height:1.5;}

/* ===== Locator ===== */
.locator{display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center;}
.city-pills{display:flex; flex-wrap:wrap; gap:10px; margin-top:22px;}
.city-pills span{padding:9px 16px; border-radius:var(--radius-cap); background:var(--mint); color:var(--teal-dark); font-size:13px; font-weight:600; border:1px solid #D7EFE8; cursor:pointer;}
.city-pills span.active{background:var(--teal-dark); color:#fff; border-color:var(--teal-dark);}
.map-card{background:var(--mint); border-radius:22px; padding:30px; position:relative; min-height:320px; display:flex; align-items:center; justify-content:center; border:1px solid #D7EFE8;}

/* branch list (locations page) */
.branch-list{display:grid; gap:14px; margin-top:30px;}
.branch-row{display:flex; justify-content:space-between; align-items:center; gap:20px; background:#fff; border:1px solid var(--line); border-radius:14px; padding:18px 22px; flex-wrap:wrap;}
.branch-row h4{font-size:15px; color:var(--navy); margin-bottom:4px;}
.branch-row p{font-size:12.5px; color:#7C8A8D;}
.branch-tags{display:flex; gap:8px; flex-wrap:wrap;}
.branch-tags span{font-size:11px; background:var(--mint); color:var(--teal-dark); padding:4px 10px; border-radius:var(--radius-cap); font-weight:600;}

/* ===== App download ===== */
.app-section{background:linear-gradient(120deg, var(--mint) 0%, #fff 60%);}
.app-grid{display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center;}
.phone-mock{background:var(--navy); border-radius:34px; padding:14px; max-width:260px; margin-left:auto; box-shadow:0 40px 70px -30px rgba(27,58,79,.5);}
.phone-screen{background:#fff; border-radius:24px; padding:18px; min-height:420px;}
.phone-screen .ph-cap{width:100%; height:8px; background:#E9EEED; border-radius:var(--radius-cap); margin-bottom:18px;}
.store-badges{display:flex; gap:12px; margin-top:24px;}
.store-badge{display:flex; align-items:center; gap:10px; background:var(--navy); color:#fff; padding:11px 18px; border-radius:12px; font-size:13px;}
.store-badge b{display:block; font-size:14px; font-family:'Poppins',sans-serif;}

/* ===== Testimonials ===== */
.testi-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.testi-card{background:#fff; border:1px solid var(--line); border-radius:18px; padding:28px;}
.stars{color:var(--orange); font-size:14px; margin-bottom:14px; letter-spacing:2px;}
.testi-card p{font-size:14.5px; color:#3B4A4F; line-height:1.65; margin-bottom:20px;}
.testi-person{display:flex; align-items:center; gap:12px;}
.avatar{width:40px; height:40px; border-radius:50%; background:var(--teal); color:#fff; display:grid; place-items:center; font-family:'Poppins',sans-serif; font-weight:700;}
.testi-person b{font-size:13.5px; display:block; color:var(--navy);}
.testi-person span{font-size:12px; color:#7C8A8D;}

/* ===== Team / about ===== */
.value-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.value-card{padding:24px; border-radius:16px; background:#fff; border:1px solid var(--line);}
.value-card .ic{font-size:24px; margin-bottom:12px;}
.value-card h4{font-size:15px; color:var(--navy); margin-bottom:6px;}
.value-card p{font-size:13px; color:#697578; line-height:1.5;}
.timeline{display:grid; gap:0; border-left:2px solid var(--line); margin-left:8px;}
.timeline-item{position:relative; padding:0 0 30px 30px;}
.timeline-item::before{content:""; position:absolute; left:-7px; top:2px; width:12px; height:12px; border-radius:50%; background:var(--orange); border:3px solid #fff;}
.timeline-item b{display:block; color:var(--navy); font-family:'Poppins',sans-serif; font-size:14px; margin-bottom:4px;}
.timeline-item span{font-size:13px; color:#697578;}
.team-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.team-card{text-align:center;}
.team-photo{width:100%; aspect-ratio:1; border-radius:16px; background:var(--mint); display:flex; align-items:center; justify-content:center; font-size:30px; margin-bottom:12px;}
.team-card h4{font-size:14.5px; color:var(--navy);}
.team-card span{font-size:12.5px; color:#7C8A8D;}

/* ===== CTA strip ===== */
.cta-strip{background:var(--orange); color:#fff;}
.cta-strip .wrap{display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap; padding:50px 24px;}
.cta-strip h3{font-size:24px;}
.cta-strip p{font-size:14.5px; opacity:.92; margin-top:6px;}

/* ===== FAQ accordion ===== */
.faq-list{display:grid; gap:12px; max-width:760px;}
.faq-item{background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden;}
.faq-q{display:flex; justify-content:space-between; align-items:center; padding:18px 22px; cursor:pointer; font-weight:600; font-size:14.5px; color:var(--navy);}
.faq-q .chev{transition:transform .2s; color:var(--teal-dark);}
.faq-item.open .chev{transform:rotate(45deg);}
.faq-a{padding:0 22px; max-height:0; overflow:hidden; transition:max-height .25s ease, padding .25s ease; font-size:13.5px; color:#5C6B6F; line-height:1.6;}
.faq-item.open .faq-a{padding:0 22px 20px;}

/* ===== Forms ===== */
.form-card{background:#fff; border:1px solid var(--line); border-radius:18px; padding:30px; display:grid; gap:14px;}
.form-card input, .form-card select, .form-card textarea{
  padding:13px 16px; border-radius:10px; border:1.5px solid var(--line); font-family:inherit; font-size:14px; width:100%;
}
.form-card input:focus, .form-card select:focus, .form-card textarea:focus{outline:none; border-color:var(--teal);}
.form-row-2{display:flex; gap:12px;}
.form-row-2 > *{flex:1;}
.form-note{font-size:12px; color:#8A9699;}
.form-success{display:none; background:var(--mint); color:var(--teal-dark); padding:14px 18px; border-radius:10px; font-size:13.5px; font-weight:600;}

/* ===== Footer ===== */
footer{background:var(--navy); color:#CFE2DD; padding-top:70px;}
.footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr; gap:30px; padding-bottom:50px; border-bottom:1px solid rgba(255,255,255,.12);}
.footer-grid h5{font-family:'Poppins',sans-serif; color:#fff; font-size:14px; margin-bottom:18px;}
.footer-grid li{margin-bottom:11px; font-size:13.5px;}
.footer-grid li a:hover{color:#fff;}
.foot-logo{display:flex; align-items:center; gap:10px; margin-bottom:14px;}
.foot-logo .logo-word{color:#fff;}
footer p.about-txt{font-size:13.5px; line-height:1.6; color:#AEC8C1; max-width:280px; margin-bottom:18px;}
.social-row{display:flex; gap:10px;}
.social-row a{width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.08); display:grid; place-items:center; font-size:13px;}
.newsletter{display:flex; gap:8px; margin-top:6px;}
.newsletter input{flex:1; padding:10px 14px; border-radius:10px; border:none; font-size:13px;}
.bottom-bar{display:flex; justify-content:space-between; align-items:center; padding:22px 0; font-size:12.5px; color:#8FAFA7; flex-wrap:wrap; gap:10px;}
.legal-badges{display:flex; gap:10px; flex-wrap:wrap;}
.legal-badges span{border:1px solid rgba(255,255,255,.18); padding:5px 10px; border-radius:8px; font-size:11px;}

/* ===== Cart drawer ===== */
.cart-drawer{position:fixed; top:0; right:-380px; width:360px; height:100vh; background:#fff; box-shadow:-20px 0 50px rgba(0,0,0,.2); z-index:200; transition:right .3s ease; display:flex; flex-direction:column;}
.cart-drawer.open{right:0;}
.cart-head{display:flex; justify-content:space-between; align-items:center; padding:20px 22px; border-bottom:1px solid var(--line);}
.cart-head h4{color:var(--navy); font-size:16px;}
.cart-close{cursor:pointer; font-size:20px; color:#7C8A8D;}
.cart-items{flex:1; overflow-y:auto; padding:18px 22px; display:grid; gap:14px;}
.cart-row{display:flex; gap:12px; align-items:center;}
.cart-row .ct-thumb{width:46px; height:46px; border-radius:10px; background:var(--mint); display:grid; place-items:center; font-size:18px;}
.cart-row .ct-info{flex:1;}
.cart-row .ct-info b{font-size:13px; color:var(--navy); display:block;}
.cart-row .ct-info span{font-size:12px; color:#8A9699;}
.cart-empty{padding:40px 0; text-align:center; color:#8A9699; font-size:13.5px;}
.cart-foot{padding:20px 22px; border-top:1px solid var(--line);}
.cart-total{display:flex; justify-content:space-between; font-weight:700; color:var(--navy); margin-bottom:14px;}
.overlay{position:fixed; inset:0; background:rgba(15,30,38,.4); z-index:150; opacity:0; pointer-events:none; transition:opacity .3s;}
.overlay.open{opacity:1; pointer-events:auto;}
.toast{position:fixed; bottom:26px; left:50%; transform:translateX(-50%) translateY(20px); background:var(--navy); color:#fff; padding:13px 22px; border-radius:var(--radius-cap); font-size:13.5px; opacity:0; pointer-events:none; transition:all .25s; z-index:300;}
.toast.show{opacity:1; transform:translateX(-50%) translateY(0);}

/* responsive */
@media (max-width: 980px){
  nav.links{display:none;}
  .mobile-toggle{display:flex;}
  .hero .wrap{grid-template-columns:1fr; padding-top:50px;}
  .hero h1{font-size:34px;}
  .services-grid, .cat-grid, .product-grid, .value-grid, .team-grid, .process-grid{grid-template-columns:repeat(2,1fr);}
  .why, .locator, .app-grid{grid-template-columns:1fr;}
  .tier-grid{grid-template-columns:1fr;}
  .testi-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr; row-gap:36px;}
  .phone-mock{margin:0 auto;}
  .cart-drawer{width:88%;}
  .form-row-2{flex-direction:column;}
}
@media (max-width: 600px){
  .services-grid, .cat-grid, .product-grid, .value-grid, .team-grid, .process-grid{grid-template-columns:1fr 1fr;}
}
