:root{
    --blue:#33B7E6;          /* light sky blue — brand accent */
    --blue-deep:#1E92BE;     /* mid blue for buttons */
    --blue-strong:#15728F;   /* deeper blue for small text/links on white */
    --gold:#C9A227;          /* metallic gold accent */
    --gold-light:#E4C766;    /* light gold */
    --gold-soft:#FBF3DD;     /* pale gold tint */
    --tint:#EAF7FC;          /* soft blue band background */
    --tint-2:#F5FBFE;        /* very soft blue tint */
    --paper:#FFFFFF;
    --ink:#15303A;           /* deep blue-charcoal headings/text */
    --muted:#5d717b;
    --line:#e1eef4;
    --white:#ffffff;
    --display:"Bricolage Grotesque", system-ui, sans-serif;
    --body:"Inter", system-ui, sans-serif;
    --mono:"IBM Plex Mono", ui-monospace, monospace;
    --maxw:1160px;
    --shadow-sm:0 4px 16px -10px rgba(21,48,58,.22);
    --shadow:0 22px 50px -28px rgba(30,146,190,.45);
    --r:18px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
  body{margin:0;font-family:var(--body);color:var(--ink);background:var(--paper);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
  a{color:inherit;}
  img{max-width:100%;display:block;}
  h1,h2,h3,h4{font-family:var(--display);font-weight:700;line-height:1.05;margin:0;letter-spacing:-0.015em;color:var(--ink);}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px;}
  section{padding:84px 0;}
  .eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--blue-strong);display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1.1rem;}
  .eyebrow::before{content:"";width:26px;height:2px;background:var(--gold);display:inline-block;border-radius:2px;}
  .sec-head{max-width:62ch;margin-bottom:46px;}
  .sec-head h2{font-size:clamp(2rem,4.2vw,3rem);}
  .sec-head p{color:var(--muted);font-size:1.1rem;margin:.9rem 0 0;}

  /* buttons */
  .btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--body);font-weight:600;font-size:.96rem;padding:.85rem 1.4rem;border-radius:999px;border:1.5px solid transparent;cursor:pointer;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s,color .18s,border-color .18s;line-height:1;white-space:nowrap;}
  .btn:active{transform:translateY(1px);}
  .btn-primary{background:var(--blue-deep);color:#fff;box-shadow:0 12px 24px -12px rgba(30,146,190,.7);}
  .btn-primary:hover{background:var(--blue-strong);transform:translateY(-2px);}
  .btn-wa{background:#fff;color:var(--blue-strong);border-color:var(--gold-light);}
  .btn-wa:hover{background:var(--blue);color:#fff;border-color:var(--blue);}
  .btn-ghost{border-color:var(--line);color:var(--ink);background:#fff;}
  .btn-ghost:hover{border-color:var(--blue);color:var(--blue-strong);}
  :focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:6px;}

  /* header */
  header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);}
  .nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 0;}
  .brandmark{display:flex;align-items:center;gap:.65rem;text-decoration:none;}
  .brandmark img{width:46px;height:46px;flex:none;object-fit:contain;}
  .brandmark .bt b{font-family:var(--display);font-weight:800;font-size:1.04rem;color:var(--blue-deep);display:block;letter-spacing:-.01em;}
  .brandmark .bt span{font-family:var(--mono);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);}
  .navlinks{display:flex;align-items:center;gap:1.6rem;}
  .navlinks a{font-size:.92rem;text-decoration:none;color:var(--ink);font-weight:500;opacity:.82;position:relative;}
  .navlinks a:hover{opacity:1;color:var(--blue-strong);}
  .nav-cta{display:flex;align-items:center;gap:.6rem;}
  .menu-btn{display:none;background:none;border:1.5px solid var(--line);border-radius:10px;padding:.5rem .6rem;cursor:pointer;}
  .menu-btn span{display:block;width:20px;height:2px;background:var(--blue-deep);margin:4px 0;border-radius:2px;}
  @media (max-width:920px){
    .navlinks{position:fixed;inset:62px 0 auto 0;flex-direction:column;align-items:flex-start;gap:0;background:#fff;border-bottom:1px solid var(--line);padding:.5rem 22px 1.2rem;transform:translateY(-135%);transition:transform .28s;box-shadow:var(--shadow-sm);}
    .navlinks.open{transform:translateY(0);}
    .navlinks a{padding:.85rem 0;width:100%;border-bottom:1px solid var(--line);}
    .nav .nav-cta .btn-ghost{display:none;}
    .menu-btn{display:block;}
  }

  /* hero */
  .hero{position:relative;padding:72px 0 60px;overflow:hidden;}
  .hero::before{content:"";position:absolute;top:-180px;right:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(201,162,39,.16),rgba(51,183,230,0) 68%);pointer-events:none;}
  .hero-grid{position:relative;display:grid;grid-template-columns:1.12fr .88fr;gap:50px;align-items:center;}
  .hero h1{font-size:clamp(2.7rem,7.2vw,5.4rem);color:var(--blue-deep);font-weight:800;letter-spacing:-.03em;margin-bottom:.4rem;}
  .hero h1 .est{display:block;font-family:var(--mono);font-weight:500;font-size:.8rem;letter-spacing:.26em;color:var(--blue-strong);text-transform:uppercase;margin-bottom:1rem;}
  .hero .lead{font-size:1.2rem;color:var(--ink);max-width:46ch;margin:1.2rem 0 1.5rem;opacity:.92;}
  .hero .lead b{color:var(--blue-strong);}
  .hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:1.5rem;}
  .quick{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.6rem;}
  .quick span.lab{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);align-self:center;margin-right:.2rem;}
  .qchip{font-family:var(--body);font-size:.86rem;padding:.5rem .9rem;border-radius:999px;border:1.5px solid var(--line);background:#fff;cursor:pointer;color:var(--ink);transition:all .16s;font-weight:500;}
  .qchip:hover{border-color:var(--blue);color:var(--blue-strong);background:var(--tint);}
  .trust{font-family:var(--mono);font-size:.78rem;color:var(--muted);display:flex;align-items:center;gap:.5rem;letter-spacing:.04em;}
  .trust svg{width:16px;height:16px;color:var(--gold);flex:none;}
  /* light seal card */
  .seal-panel{background:linear-gradient(160deg,#fff 0%,var(--gold-soft) 100%);border:2px solid var(--gold-light);border-radius:22px;padding:40px 32px;position:relative;box-shadow:0 26px 54px -30px rgba(201,162,39,.45);}
  .seal-panel::before{content:"";position:absolute;inset:9px;border:1px solid rgba(201,162,39,.4);border-radius:15px;pointer-events:none;}
  .seal-wrap{display:flex;justify-content:center;margin-bottom:20px;}
  .seal-wrap img{width:230px;height:230px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(201,162,39,.28));}
  .seal-quote{text-align:center;font-family:var(--display);font-weight:600;font-size:1.15rem;color:var(--blue-deep);position:relative;}
  .seal-sub{text-align:center;font-family:var(--mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:.5rem;}

  /* stats — light tinted strip */
  .stats{background:var(--tint);}
  .stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:30px 22px;}
  .stat{text-align:center;padding:8px 12px;position:relative;}
  .stat + .stat::before{content:"";position:absolute;left:0;top:18%;height:64%;width:1px;background:rgba(201,162,39,.45);}
  .stat b{font-family:var(--display);font-weight:800;font-size:1.9rem;color:var(--gold);display:block;line-height:1;}
  .stat span{font-size:.86rem;color:var(--muted);display:block;margin-top:.5rem;}
  @media (max-width:680px){.stats .wrap{grid-template-columns:repeat(2,1fr);gap:18px;}.stat + .stat::before{display:none;}}

  /* services */
  .services{background:var(--paper);}
  .svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  .svc{border:1px solid var(--line);border-radius:var(--r);padding:28px 24px;background:#fff;transition:transform .22s,box-shadow .22s,border-color .22s;position:relative;overflow:hidden;}
  .svc::after{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:linear-gradient(90deg,var(--blue),var(--gold));transform:scaleX(0);transform-origin:left;transition:transform .25s;}
  .svc:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:transparent;}
  .svc:hover::after{transform:scaleX(1);}
  .svc .ic{width:50px;height:50px;border-radius:13px;background:var(--tint);display:grid;place-items:center;color:var(--blue-deep);margin-bottom:18px;transition:background .22s,color .22s;}
  .svc:hover .ic{background:var(--blue-deep);color:#fff;}
  .svc .ic svg{width:24px;height:24px;}
  .svc h3{font-size:1.2rem;color:var(--ink);margin-bottom:.5rem;}
  .svc p{font-size:.95rem;color:var(--muted);margin:0;}
  .svc .num{position:absolute;top:20px;right:22px;font-family:var(--mono);font-size:.72rem;color:var(--blue);}

  /* areas */
  .areas{background:var(--tint-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .loc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
  .loc{border:1px solid var(--line);border-radius:14px;padding:20px 22px;background:#fff;transition:border-color .18s,transform .18s,box-shadow .18s;}
  .loc:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:var(--shadow-sm);}
  .loc b{font-family:var(--display);font-size:1.08rem;color:var(--blue-deep);display:flex;align-items:center;gap:.5rem;}
  .loc b svg{width:17px;height:17px;color:var(--blue);}
  .loc span{font-size:.9rem;color:var(--muted);display:block;margin-top:.4rem;}

  /* approach — light cards */
  .approach{background:var(--paper);}
  .ap-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:8px;}
  .ap{background:linear-gradient(170deg,var(--tint) 0%,#fff 80%);border:1px solid var(--line);border-radius:var(--r);padding:26px 22px;transition:transform .2s,box-shadow .2s;}
  .ap:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
  .ap .ic{width:46px;height:46px;border-radius:12px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;color:var(--blue-deep);margin-bottom:16px;}
  .ap .ic svg{width:22px;height:22px;}
  .ap h4{color:var(--ink);font-size:1.12rem;margin-bottom:.4rem;}
  .ap p{color:var(--muted);font-size:.93rem;margin:0;}

  /* about */
  .band{background:var(--tint-2);border-bottom:1px solid var(--line);}
  .band .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
  .band h2{font-size:clamp(2rem,4vw,2.9rem);}
  .band p{color:var(--muted);font-size:1.08rem;margin:1.1rem 0;}
  .creds{display:grid;gap:14px;}
  .cred{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:18px 20px;background:#fff;transition:transform .18s,box-shadow .18s;}
  .cred:hover{transform:translateX(4px);box-shadow:var(--shadow-sm);}
  .cred .ci{width:40px;height:40px;border-radius:10px;background:var(--tint);display:grid;place-items:center;color:var(--blue-deep);flex:none;}
  .cred .ci svg{width:20px;height:20px;}
  .cred b{font-family:var(--display);font-weight:600;display:block;color:var(--ink);}
  .cred span{font-size:.92rem;color:var(--muted);}

  /* enquiry + contact */
  .enquiry{background:var(--paper);}
  .enq-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:52px;align-items:start;}
  .form-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:var(--shadow);}
  .form-card h3{font-size:1.4rem;margin-bottom:.3rem;}
  .form-card .sub{color:var(--muted);font-size:.95rem;margin:0 0 22px;}
  .field{margin-bottom:16px;}
  .field label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.4rem;color:var(--ink);}
  .field input,.field textarea{width:100%;padding:.82rem .95rem;border:1.5px solid var(--line);border-radius:12px;font-family:var(--body);font-size:.98rem;background:var(--tint-2);color:var(--ink);transition:border-color .16s,background .16s;}
  .field textarea{resize:vertical;min-height:92px;}
  .field input:focus,.field textarea:focus{border-color:var(--blue);background:#fff;outline:none;}
  .pickers{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px;}
  .pick{font-family:var(--body);font-size:.85rem;padding:.55rem .95rem;border-radius:999px;border:1.5px solid var(--line);background:#fff;cursor:pointer;color:var(--muted);transition:all .16s;font-weight:500;}
  .pick[aria-pressed="true"]{background:var(--blue-deep);color:#fff;border-color:var(--blue-deep);}
  .form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;}
  .form-note{font-size:.8rem;color:var(--muted);margin-top:14px;}
  .form-msg{font-size:.92rem;margin-top:14px;padding:.7rem .9rem;border-radius:10px;display:none;}
  .form-msg.ok{display:block;background:#e8f7ef;color:#16633b;border:1px solid #b7e4cb;}
  .form-msg.err{display:block;background:#fdecec;color:#9a2020;border:1px solid #f3c4c4;}
  .enq-copy h2{font-size:clamp(2rem,4vw,2.9rem);}
  .enq-copy p{color:var(--muted);font-size:1.08rem;margin:1rem 0 1.4rem;}
  .contact-rows{display:grid;gap:12px;}
  .crow{display:flex;align-items:center;gap:14px;padding:15px 17px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;color:var(--ink);transition:border-color .18s,transform .18s,box-shadow .18s;}
  .crow:hover{border-color:var(--blue);transform:translateX(4px);box-shadow:var(--shadow-sm);}
  .crow .ic{width:42px;height:42px;border-radius:11px;background:var(--tint);display:grid;place-items:center;color:var(--blue-deep);flex:none;}
  .crow .ic svg{width:20px;height:20px;}
  .crow .lbl{font-family:var(--mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
  .crow .val{font-weight:600;font-size:1.02rem;}
  .map-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;margin-top:14px;box-shadow:var(--shadow-sm);}
  .map-card iframe{width:100%;height:240px;border:0;display:block;}

  /* footer — light */
  footer{background:var(--tint);color:var(--muted);padding:56px 0 28px;border-top:3px solid var(--gold);}
  .foot-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px;padding-bottom:30px;border-bottom:1px solid var(--line);}
  .foot-brand b{font-family:var(--display);font-weight:800;font-size:1.35rem;color:var(--blue-deep);display:block;}
  .foot-brand p{font-size:.92rem;max-width:34ch;margin:.7rem 0 0;color:var(--muted);}
  .foot-col h4{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 1rem;}
  .foot-col a{display:block;text-decoration:none;color:var(--muted);font-size:.94rem;padding:.26rem 0;}
  .foot-col a:hover{color:var(--blue-strong);}
  .foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:20px;font-size:.8rem;font-family:var(--mono);letter-spacing:.02em;color:var(--muted);}

  /* floating whatsapp */
  .wa-float{position:fixed;right:18px;bottom:18px;z-index:60;width:58px;height:58px;border-radius:50%;background:var(--blue-deep);border:2px solid var(--gold-light);display:grid;place-items:center;box-shadow:0 14px 30px -8px rgba(30,146,190,.7);transition:transform .2s,background .2s;}
  .wa-float:hover{transform:scale(1.08);background:var(--blue-strong);}
  .wa-float svg{width:30px;height:30px;color:#fff;}

  .reveal{opacity:0;transform:translateY(20px);transition:opacity .6s,transform .6s;}
  .reveal.in{opacity:1;transform:none;}
  @media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}.svc:hover,.crow:hover,.loc:hover,.ap:hover,.cred:hover{transform:none;}}

  /* responsive layout consolidated at end of file */

  /* ===================== PREMIUM POLISH ===================== */
  :root{ --gold-grad:linear-gradient(135deg,#EBD07A 0%,#C9A227 48%,#B8901F 100%); }

  /* metallic gold text */
  .stat b{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;}

  /* richer primary button + refined hover */
  .btn-primary{background:linear-gradient(135deg,var(--blue) 0%,var(--blue-deep) 55%,var(--blue-strong) 100%);box-shadow:0 14px 26px -12px rgba(30,146,190,.75);}

  /* header: subtle gold underline accent */
  header{box-shadow:0 2px 0 0 rgba(201,162,39,.35);}

  /* eyebrow flourish a touch longer + gradient */
  .eyebrow::before{width:34px;background:var(--gold-grad);}

  /* hero: dual gold+blue glow + gold flourish under wordmark */
  .hero::before{background:radial-gradient(circle,rgba(201,162,39,.20),rgba(201,162,39,0) 68%)!important;}
  .hero::after{content:"";position:absolute;bottom:-140px;left:-120px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(51,183,230,.16),rgba(51,183,230,0) 70%);pointer-events:none;}
  .hero h1::after{content:"";display:block;width:120px;height:4px;margin-top:18px;background:var(--gold-grad);border-radius:3px;}

  /* service icons turn gold on hover */
  .svc .ic{border:1px solid var(--line);}
  .svc:hover .ic{background:var(--gold-grad);color:#3a2d05;border-color:transparent;}
  .svc:hover h3{color:var(--blue-strong);}

  /* locality + cred: gold left tick on hover */
  .loc:hover{border-color:var(--gold-light);}
  .cred:hover{border-color:var(--gold-light);}

  /* elegant centered gold divider */
  .flourish{display:flex;align-items:center;justify-content:center;gap:14px;margin:6px 0 0;}
  .flourish span{height:2px;width:60px;background:var(--gold-grad);border-radius:2px;}
  .flourish i{width:9px;height:9px;background:var(--gold-grad);transform:rotate(45deg);display:block;}

  /* ===== premium CTA band (single elegant dark section) ===== */
  .cta{position:relative;overflow:hidden;background:linear-gradient(135deg,#0e4a5f 0%,#15728F 55%,#1E92BE 100%);color:#fff;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold);}
  .cta .wrap{position:relative;z-index:1;padding:70px 22px;text-align:center;}
  .cta-seal{position:absolute;right:-60px;top:50%;transform:translateY(-50%);width:340px;opacity:.10;filter:none;pointer-events:none;}
  .cta .eyebrow{justify-content:center;color:var(--gold-light);}
  .cta h2{color:#fff;font-size:clamp(2rem,4.2vw,3rem);max-width:20ch;margin:0 auto;}
  .cta h2 .g{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
  .cta p{color:rgba(255,255,255,.85);font-size:1.1rem;max-width:52ch;margin:1rem auto 1.7rem;}
  .cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
  .btn-gold{background:var(--gold-grad);color:#3a2d05;border:none;box-shadow:0 14px 26px -12px rgba(201,162,39,.8);font-weight:700;}
  .btn-gold:hover{filter:brightness(1.07);transform:translateY(-2px);}
  .btn-outline-light{background:transparent;border:1.5px solid rgba(255,255,255,.75);color:#fff;}
  .btn-outline-light:hover{background:#fff;color:var(--blue-strong);}
  @media (max-width:560px){ .cta-seal{opacity:.07;right:-90px;} .cta .wrap{padding:54px 22px;} }


  /* refined seal panel + gold medallion */
  .seal-panel{background:radial-gradient(120% 120% at 50% 0%, #fff 0%, var(--gold-soft) 100%)!important;border:1.5px solid var(--gold-light)!important;box-shadow:0 30px 60px -34px rgba(201,162,39,.5)!important;padding:44px 34px 34px!important;}
  .seal-panel::before{inset:11px!important;border:1px solid rgba(201,162,39,.35)!important;border-radius:15px!important;}
  .seal-wrap{margin-bottom:22px;}
  .medallion{width:250px;height:250px;border-radius:50%;display:grid;place-items:center;margin:0 auto;position:relative;
    background:radial-gradient(circle at 50% 45%, #ffffff 0%, #ffffff 58%, rgba(255,255,255,.35) 74%, rgba(255,255,255,0) 82%);}
  .medallion::before{content:"";position:absolute;inset:0;border-radius:50%;
    border:2px solid var(--gold-light);
    box-shadow:0 0 0 7px rgba(201,162,39,.10), inset 0 2px 14px rgba(201,162,39,.18), 0 14px 26px -14px rgba(201,162,39,.5);}
  .medallion img{width:212px;height:212px;object-fit:contain;position:relative;
    filter:drop-shadow(0 4px 8px rgba(120,90,10,.28));}
  .seal-quote{margin-top:2px;}


/* =====================================================================
   RESPONSIVE  —  mobile · tablet · laptop · desktop
   (placed last so these rules take precedence)
   ===================================================================== */

/* prevent any horizontal overflow + long-text safety */
html,body{max-width:100%;overflow-x:hidden;}
img{height:auto;}
.crow .val,.foot-brand p,.cta p,.sec-head p{overflow-wrap:break-word;}

/* ---- large laptops ---- */
@media (max-width:1100px){
  .wrap{padding:0 20px;}
  .svc-grid,.ap-grid,.loc-grid{gap:16px;}
}

/* ---- tablet landscape ---- */
@media (max-width:980px){
  section{padding:70px 0;}
  .hero-grid{grid-template-columns:1fr;gap:36px;}
  .seal-panel{order:-1;max-width:420px;margin:0 auto;width:100%;}
  .svc-grid,.ap-grid{grid-template-columns:repeat(2,1fr);}
  .loc-grid{grid-template-columns:repeat(2,1fr);}
  .band .wrap,.enq-grid{grid-template-columns:1fr;gap:36px;}
  .foot-top{grid-template-columns:1fr 1fr;gap:28px;}
}

/* ---- tablet portrait ---- */
@media (max-width:768px){
  .hero{padding:52px 0 44px;}
  .hero .lead{font-size:1.1rem;}
  .sec-head{margin-bottom:32px;}
  .form-card{padding:28px;}
  .cta .wrap{padding:60px 20px;}
}

/* ---- mobile ---- */
@media (max-width:600px){
  .wrap{padding:0 18px;}
  section{padding:52px 0;}
  .svc-grid,.ap-grid,.loc-grid{grid-template-columns:1fr;}
  .stats .wrap{grid-template-columns:repeat(2,1fr);gap:18px;}
  .stat + .stat::before{display:none;}
  .foot-top{grid-template-columns:1fr;gap:24px;}
  .hero-actions{flex-direction:column;align-items:stretch;}
  .hero-actions .btn{width:100%;justify-content:center;}
  .cta-btns{flex-direction:column;align-items:stretch;}
  .cta-btns .btn{width:100%;justify-content:center;}
  .medallion{width:210px;height:210px;}
  .medallion img{width:176px;height:176px;}
  .seal-panel{padding:32px 20px 26px!important;}
  .map-card iframe{height:220px;}
  .form-card{padding:24px;}
}

/* ---- small phones ---- */
@media (max-width:400px){
  .hero h1{font-size:2.4rem;}
  .hero h1 .est{letter-spacing:.16em;}
  .brandmark .bt b{font-size:.95rem;}
  .medallion{width:184px;height:184px;}
  .medallion img{width:154px;height:154px;}
  .seal-quote{font-size:1.05rem;}
  .btn{padding:.78rem 1.05rem;font-size:.92rem;}
  .quick .qchip{font-size:.82rem;padding:.45rem .8rem;}
}
