/*
Theme Name: Dr Aarav Sharma Cardiology
Theme URI: https://example.com/dr-aarav-sharma-cardiology
Author: Custom Theme
Author URI: https://example.com
Description: A responsive cardiology/doctor WordPress theme inspired by the supplied reference layout. Designed for Dr. Aarav Sharma with editable homepage sections, appointment modal, blog, menus, footer and WooCommerce support.
Version: 1.4.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: aarav-cardiology
Tags: custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, e-commerce, blog
*/

:root{
  --ac-red:#f43255;
  --ac-red-dark:#df2144;
  --ac-navy:#102b45;
  --ac-text:#526171;
  --ac-soft:#f7f7f7;
  --ac-white:#fff;
  --ac-border:#e8eaed;
  --ac-shadow:0 12px 30px rgba(16,43,69,.08);
  --ac-radius:4px;
  --ac-container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--ac-font,"Nunito",sans-serif);font-size:var(--ac-body-size,15px);color:var(--ac-text);background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--ac-navy);text-decoration:none;transition:.2s ease}
a:hover{color:var(--ac-red)}
img{max-width:100%;height:auto;display:block}
button,input,select,textarea{font:inherit}
.ac-container{width:min(calc(100% - 36px),var(--ac-container));margin-inline:auto}
.ac-section{padding:82px 0}
.ac-kicker{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;color:var(--ac-red);margin:0 0 8px}
.ac-title{font-size:var(--ac-section-size,36px);line-height:1.15;color:var(--ac-navy);margin:0 0 16px;font-weight:800}
.ac-subtitle{max-width:700px;margin:0 auto;color:#74808c}
.ac-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border:0;border-radius:3px;background:var(--ac-red);color:#fff!important;font-weight:800;font-size:12px;letter-spacing:.03em;text-transform:uppercase;cursor:pointer}
.ac-btn:hover{background:var(--ac-red-dark);transform:translateY(-1px)}
.ac-btn-dark{background:var(--ac-navy)}
.ac-btn-dark:hover{background:#071d31}
.ac-card{background:#fff;border:1px solid var(--ac-border);border-radius:var(--ac-radius);box-shadow:0 4px 18px rgba(0,0,0,.03)}
.ac-placeholder{background:linear-gradient(135deg,#f4f4f4,#e9edf1);min-height:280px;position:relative;overflow:hidden}
.ac-placeholder:before{content:"";position:absolute;width:160px;height:160px;border:28px solid rgba(244,50,85,.09);border-radius:50%;right:-40px;bottom:-45px}
.ac-image-fill{width:100%;height:100%;object-fit:cover}

/* Top bar */
.ac-topbar{font-size:12px;background:#fff;border-bottom:1px solid #efefef}
.ac-topbar-row{display:flex;justify-content:space-between;gap:24px;align-items:center;min-height:42px}
.ac-topbar-left,.ac-topbar-right{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.ac-topbar strong{color:var(--ac-navy)}
.ac-topbar .dot{width:5px;height:5px;background:var(--ac-red);border-radius:50%;display:inline-block;margin-right:6px}

/* Header */
.ac-header{background:#fff;position:relative;z-index:50;border-bottom:1px solid #f1f1f1}
.ac-header.sticky{position:sticky;top:0;box-shadow:0 6px 24px rgba(16,43,69,.06)}
.ac-header-row{min-height:76px;display:grid;grid-template-columns:auto 1fr auto;gap:35px;align-items:center}
.ac-brand{display:flex;align-items:center;gap:10px;min-width:180px}
.ac-brand-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:50% 50% 50% 12%;background:var(--ac-red);color:#fff;font-weight:900;font-size:16px;transform:rotate(-12deg)}
.ac-brand-mark span{transform:rotate(12deg)}
.ac-brand-title{font-weight:900;font-size:20px;color:var(--ac-navy);line-height:1}
.ac-brand-sub{display:block;font-weight:600;font-size:9px;color:#87929d;text-transform:uppercase;letter-spacing:.12em;margin-top:4px}
.ac-logo img{max-height:54px;width:auto}
.ac-nav ul{list-style:none;display:flex;align-items:center;gap:28px;margin:0;padding:0}
.ac-nav a{font-size:13px;font-weight:700;color:#34485a}
.ac-nav .current-menu-item>a,.ac-nav a:hover{color:var(--ac-red)}
.ac-header-actions{display:flex;gap:14px;align-items:center}
.ac-search-toggle{background:none;border:0;color:var(--ac-navy);font-size:20px;cursor:pointer}
.ac-mobile-toggle{display:none;border:0;background:var(--ac-navy);color:#fff;border-radius:3px;width:42px;height:42px;font-size:20px}

/* Hero */
.ac-hero{position:relative;background:#f6f6f6;overflow:hidden}
.ac-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;min-height:520px}
.ac-hero-copy{display:flex;align-items:center;padding:70px 45px 70px 0;position:relative;z-index:2}
.ac-hero-copy-inner{max-width:550px}
.ac-hero h1{font-size:var(--ac-hero-size,54px);line-height:1.03;margin:12px 0 24px;color:var(--ac-navy);letter-spacing:-.035em}
.ac-hero h1 .accent{color:var(--ac-red)}
.ac-hero p{max-width:500px;margin:0 0 28px;color:#697785}
.ac-hero-buttons{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.ac-play{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:12px;text-transform:uppercase;color:var(--ac-navy)}
.ac-play i{width:40px;height:40px;background:#fff;border-radius:50%;display:grid;place-items:center;box-shadow:var(--ac-shadow);font-style:normal;color:var(--ac-red)}
.ac-hero-media{min-height:520px;position:relative}
.ac-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center top}
.ac-hero-media .ac-placeholder{height:100%;min-height:520px}
.ac-hero-watermark{position:absolute;right:20px;bottom:15px;font-size:150px;color:rgba(244,50,85,.06);font-weight:900;line-height:1}

/* Appointment strip */
.ac-appointment{background:var(--ac-red);color:#fff;position:relative;overflow:hidden}
.ac-appointment:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 15% 50%,rgba(255,255,255,.09),transparent 34%),linear-gradient(120deg,transparent 0 30%,rgba(255,255,255,.03) 30% 31%,transparent 31% 100%)}
.ac-appointment-grid{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:end;min-height:245px}
.ac-appointment-doctor{align-self:stretch;display:flex;align-items:end;justify-content:center}
.ac-appointment-doctor img{max-height:270px;object-fit:contain}
.ac-appointment-doctor .ac-placeholder{width:75%;min-height:220px;background:rgba(255,255,255,.14)}
.ac-appointment-content{padding:46px 0}
.ac-appointment .ac-kicker{color:#fff;opacity:.8}
.ac-appointment h2{margin:0 0 18px;font-size:32px;line-height:1.2}
.ac-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:680px}
.ac-form-grid input,.ac-form-grid select{height:48px;border:0;padding:0 14px;color:#63717e;background:#fff;border-radius:3px}
.ac-form-grid .ac-btn{height:48px}

/* About */
.ac-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.ac-about-copy .ac-title{max-width:520px}
.ac-about-copy p{margin:0 0 25px}
.ac-stat-row{display:grid;grid-template-columns:160px 1fr;gap:28px;align-items:center;margin-top:25px}
.ac-stat-box{display:flex;align-items:center;gap:12px;background:#fff;box-shadow:var(--ac-shadow);padding:18px;border-radius:4px}
.ac-stat-icon{width:42px;height:42px;border-radius:4px;background:var(--ac-red);color:#fff;display:grid;place-items:center;font-size:20px}
.ac-stat-number{font-size:28px;color:var(--ac-navy);font-weight:900;line-height:1}
.ac-stat-label{font-size:10px;color:#8a949e}
.ac-checks{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;font-size:12px;color:#63717e}
.ac-checks span:before{content:"✓";color:var(--ac-red);font-weight:900;margin-right:7px}
.ac-about-media{position:relative;min-height:410px}
.ac-about-media img{width:100%;height:410px;object-fit:cover}
.ac-about-media .ac-placeholder{min-height:410px}
.ac-about-badge{position:absolute;right:-10px;bottom:22px;background:var(--ac-navy);color:#fff;padding:20px 24px;border-radius:3px;text-align:center}
.ac-about-badge strong{display:block;font-size:28px}
.ac-about-badge small{color:var(--ac-red);font-weight:800}

/* Services */
.ac-services{background:#fafafa}
.ac-center{text-align:center}
.ac-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}
.ac-service-card{overflow:hidden}
.ac-service-card-media{height:190px;background:#edf0f2;overflow:hidden}
.ac-service-card-media img{width:100%;height:100%;object-fit:cover}
.ac-service-card-body{padding:20px}
.ac-service-card .label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ac-red);font-weight:800}
.ac-service-card h3{font-size:18px;margin:4px 0 15px;color:var(--ac-navy)}
.ac-arrow{width:28px;height:28px;border-radius:50%;background:var(--ac-red);color:#fff;display:grid;place-items:center;font-weight:900}

/* Offer / Accordion */
.ac-offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.ac-signature{display:flex;align-items:center;gap:18px;margin-top:30px}
.ac-signature .avatar{width:52px;height:52px;border-radius:50%;background:#eceff2;overflow:hidden}
.ac-signature strong{display:block;color:var(--ac-navy)}
.ac-accordion{border-top:1px solid var(--ac-border)}
.ac-accordion details{border-bottom:1px solid var(--ac-border);padding:17px 0}
.ac-accordion summary{cursor:pointer;color:var(--ac-navy);font-weight:800;font-size:13px;list-style:none;display:flex;justify-content:space-between;gap:20px}
.ac-accordion summary::-webkit-details-marker{display:none}
.ac-accordion summary:after{content:"+";color:var(--ac-red);font-size:18px}
.ac-accordion details[open] summary:after{content:"–"}
.ac-accordion p{font-size:13px;margin:12px 0 0}

/* Testimonial */
.ac-testimonial{padding:0 0 82px}
.ac-testimonial-wrap{min-height:350px;position:relative;overflow:hidden;border-radius:3px;background:#e9edef}
.ac-testimonial-wrap>img{width:100%;height:350px;object-fit:cover}
.ac-testimonial-card{position:absolute;right:16%;top:50%;transform:translateY(-50%);max-width:420px;background:var(--ac-navy);color:#fff;padding:30px;border-radius:3px;box-shadow:var(--ac-shadow)}
.ac-testimonial-card:before{content:"“";position:absolute;left:-22px;top:26px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--ac-red);font-size:28px;font-weight:900}
.ac-testimonial-card p{margin:0 0 16px;font-size:14px;font-style:italic}
.ac-stars{color:#ffc61c;letter-spacing:2px}
.ac-testimonial-card strong{font-size:12px;color:#fff}

/* Team */
.ac-team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.ac-team-card{overflow:hidden;text-align:center}
.ac-team-photo{height:320px;background:#edf0f2;overflow:hidden}
.ac-team-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
.ac-team-role{display:inline-block;margin-top:-12px;position:relative;background:var(--ac-red);color:#fff;font-size:9px;font-weight:800;text-transform:uppercase;padding:6px 12px;border-radius:2px}
.ac-team-body{padding:4px 20px 22px}
.ac-team-body h3{color:var(--ac-navy);font-size:16px;margin:12px 0 6px}
.ac-social{display:flex;justify-content:center;gap:8px;margin-top:10px}
.ac-social a{width:28px;height:28px;border-radius:50%;background:#f3f4f5;display:grid;place-items:center;color:#7c8792;font-size:11px}
.ac-brand-strip{display:flex;justify-content:center;align-items:center;gap:42px;flex-wrap:wrap;margin-top:48px;opacity:.42;font-weight:800;color:#8c9baa}

/* Benefits */
.ac-benefits{padding:0 0 82px}
.ac-benefits-grid{display:grid;grid-template-columns:1fr 1.08fr;min-height:430px}
.ac-benefits-media{background:#eceff2;min-height:430px;overflow:hidden}
.ac-benefits-media img{width:100%;height:100%;object-fit:cover}
.ac-benefits-content{background:var(--ac-red);color:#fff;padding:58px 48px;position:relative;overflow:hidden}
.ac-benefits-content:after{content:"♡";position:absolute;right:10px;bottom:-65px;font-size:230px;line-height:1;color:rgba(255,255,255,.08)}
.ac-benefits-content .ac-kicker,.ac-benefits-content .ac-title{color:#fff}
.ac-benefits-content p{max-width:590px}
.ac-benefit-item{margin:22px 0;position:relative;z-index:1}
.ac-benefit-item strong{display:flex;justify-content:space-between;margin-bottom:6px}
.ac-progress{height:6px;background:rgba(255,255,255,.25);border-radius:10px;overflow:hidden}
.ac-progress span{display:block;height:100%;background:#fff;border-radius:10px}

/* Blog */
.ac-blog{background:#fff}
.ac-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px}
.ac-post-card{overflow:hidden}
.ac-post-image{height:215px;background:#edf0f2;overflow:hidden;position:relative}
.ac-post-image img{width:100%;height:100%;object-fit:cover}
.ac-post-date{position:absolute;right:12px;top:12px;background:var(--ac-red);color:#fff;width:52px;height:52px;display:grid;place-items:center;text-align:center;font-weight:900;font-size:12px;line-height:1.1;border-radius:2px}
.ac-post-body{padding:18px}
.ac-post-meta{text-transform:uppercase;font-size:9px;letter-spacing:.08em;color:#8b96a0}
.ac-post-body h3{font-size:17px;line-height:1.4;color:var(--ac-navy);margin:7px 0 12px}
.ac-readmore{font-size:11px;font-weight:900;text-transform:uppercase;color:var(--ac-red)}

/* Footer */
.ac-footer-top{background:#f6f6f6;padding:32px 0;border-top:1px solid #efefef}
.ac-footer-contact{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px;align-items:center}
.ac-contact-item{display:flex;align-items:center;gap:12px}
.ac-contact-icon{width:40px;height:40px;border-radius:50%;background:var(--ac-red);color:#fff;display:grid;place-items:center}
.ac-contact-item small{display:block;color:#8b96a0;font-size:10px}
.ac-contact-item strong{display:block;color:var(--ac-navy);font-size:12px}
.ac-footer-main{background:#fff;padding:55px 0}
.ac-footer-grid{display:grid;grid-template-columns:1.15fr 1fr 1.1fr .9fr;gap:45px}
.ac-footer h4{font-size:14px;color:var(--ac-navy);margin:0 0 18px}
.ac-footer ul{list-style:none;padding:0;margin:0}
.ac-footer li{margin:8px 0}
.ac-footer a,.ac-footer p{font-size:12px;color:#6f7c87}
.ac-newsletter{display:flex}
.ac-newsletter input{min-width:0;flex:1;height:44px;border:1px solid var(--ac-border);padding:0 12px}
.ac-newsletter button{height:44px;border:0;background:var(--ac-navy);color:#fff;padding:0 16px;font-size:11px;font-weight:800}
.ac-hours{font-size:11px}
.ac-hours div{display:flex;justify-content:space-between;padding:5px 0}
.ac-hours span:last-child{color:var(--ac-red)}
.ac-footer-bottom{background:var(--ac-red);color:#fff;padding:14px 0;font-size:11px}
.ac-footer-bottom-row{display:flex;justify-content:space-between;gap:20px;align-items:center}
.ac-footer-bottom a{color:#fff}

/* Modal */
.ac-modal{position:fixed;inset:0;background:rgba(7,29,49,.72);z-index:9999;display:none;align-items:center;justify-content:center;padding:20px}
.ac-modal.active{display:flex}
.ac-modal-box{width:min(100%,560px);background:#fff;border-radius:5px;padding:30px;position:relative;box-shadow:0 25px 70px rgba(0,0,0,.25)}
.ac-modal-close{position:absolute;right:14px;top:12px;border:0;background:none;font-size:28px;color:#6e7984;cursor:pointer}
.ac-modal h3{margin:0 0 8px;color:var(--ac-navy);font-size:28px}
.ac-modal p{margin-top:0}
.ac-modal-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ac-modal-fields input,.ac-modal-fields textarea{width:100%;border:1px solid var(--ac-border);padding:12px;border-radius:3px}
.ac-modal-fields textarea{grid-column:1/-1;min-height:100px}

/* Generic content + WooCommerce */
.ac-content{padding:70px 0}
.ac-content article{max-width:860px;margin:auto}
.woocommerce .button,.woocommerce button.button,.woocommerce input.button{background:var(--ac-red)!important;color:#fff!important;border-radius:3px!important}
.woocommerce ul.products li.product .price{color:var(--ac-red)!important}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ac-red)!important}

@media (max-width:1024px){
  .ac-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid #eee;padding:20px;box-shadow:var(--ac-shadow)}
  .ac-nav.active{display:block}.ac-nav ul{flex-direction:column;align-items:flex-start}.ac-mobile-toggle{display:block}
  .ac-header-row{grid-template-columns:1fr auto}.ac-header-actions{justify-content:flex-end}.ac-header-actions .ac-btn{display:none}
  .ac-hero-grid,.ac-appointment-grid,.ac-about-grid,.ac-offer-grid,.ac-benefits-grid{grid-template-columns:1fr}
  .ac-hero-copy{padding:60px 0}.ac-hero-media{min-height:420px}.ac-hero-media .ac-placeholder{min-height:420px}
  .ac-appointment-doctor{display:none}.ac-appointment-content{padding:45px 0}
  .ac-service-grid{grid-template-columns:repeat(2,1fr)}
  .ac-team-grid,.ac-blog-grid{grid-template-columns:repeat(2,1fr)}
  .ac-footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:700px){
  .ac-topbar-left{display:none}.ac-topbar-row{justify-content:center}.ac-topbar-right{justify-content:center;font-size:10px}
  .ac-brand-title{font-size:17px}.ac-brand{min-width:0}.ac-header-row{min-height:66px}
  .ac-section{padding:58px 0}.ac-hero h1{font-size:42px}.ac-hero-media{min-height:340px}.ac-hero-media .ac-placeholder{min-height:340px}
  .ac-form-grid,.ac-stat-row,.ac-checks,.ac-service-grid,.ac-team-grid,.ac-blog-grid,.ac-footer-contact,.ac-footer-grid,.ac-modal-fields{grid-template-columns:1fr}
  .ac-about-media img,.ac-about-media .ac-placeholder{min-height:330px;height:330px}
  .ac-service-card-media{height:220px}.ac-team-photo{height:360px}
  .ac-testimonial-wrap,.ac-testimonial-wrap>img{min-height:450px;height:450px}.ac-testimonial-card{left:26px;right:26px;top:auto;bottom:25px;transform:none}
  .ac-benefits-content{padding:42px 26px}.ac-footer-bottom-row{flex-direction:column;text-align:center}
}

/* ===== v1.1 reference-style refinements ===== */
h1,h2,h3,h4,h5,h6,.ac-brand-title,.ac-nav a,.ac-btn{font-family:var(--ac-font,"Nunito",sans-serif)}
h1,h2,h3,h4,h5,h6{font-weight:800;letter-spacing:-.018em}
.ac-kicker{font-size:10px;letter-spacing:.19em;font-weight:900}
.ac-btn{min-height:44px;padding:0 24px;font-size:10px;letter-spacing:.055em;border-radius:2px}
.ac-btn-light{background:#fff;color:var(--ac-red)!important;margin-top:12px}.ac-btn-light:hover{background:var(--ac-navy);color:#fff!important}

.ac-topbar{font-size:10px}.ac-topbar-row{min-height:38px}.ac-topbar-right{gap:18px}.ac-topbar-right a,.ac-topbar-right span{color:#63717e}
.ac-header-row{min-height:72px;gap:30px}.ac-brand-title{font-size:18px}.ac-brand-sub{font-size:8px}.ac-brand-mark{width:30px;height:30px}
.ac-nav{justify-self:start}.ac-nav ul{gap:27px}.ac-nav a{font-size:10px;font-weight:800;color:#213a52}.ac-header-actions .ac-btn{min-width:104px}
.ac-search-toggle{font-size:18px}

/* Dropdown menus */
.ac-nav .menu-item{position:relative}.ac-nav .sub-menu{position:absolute;left:-18px;top:calc(100% + 22px);min-width:210px;display:block;opacity:0;visibility:hidden;transform:translateY(8px);background:#fff;padding:10px 0;margin:0;border-top:3px solid var(--ac-red);box-shadow:0 14px 35px rgba(16,43,69,.14);transition:.2s;z-index:100}
.ac-nav .menu-item:hover>.sub-menu,.ac-nav .menu-item:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.ac-nav .sub-menu li{display:block;width:100%}.ac-nav .sub-menu a{display:block;padding:10px 18px;font-size:11px;white-space:nowrap}.ac-nav .menu-item-has-children>a:after{content:"⌄";font-size:9px;margin-left:5px;color:#9ba6af}

.ac-hero{background:#f7f5f2}.ac-hero-grid{min-height:515px}.ac-hero-copy{padding:72px 58px 72px 0}.ac-hero-copy-inner{max-width:460px}.ac-hero h1{line-height:1.08;letter-spacing:-.028em;margin:10px 0 18px}.ac-hero p{font-size:13px;max-width:450px}.ac-hero-media{min-height:515px;background:#f4f1ec}.ac-hero-media img{object-position:center top}.ac-hero-watermark{font-size:130px}

.ac-appointment-grid{min-height:235px;grid-template-columns:.75fr 1.35fr}.ac-appointment-content h2{font-size:30px}.ac-appointment-doctor{overflow:hidden}.ac-appointment-doctor img{width:100%;height:270px;object-fit:contain;object-position:center bottom;filter:saturate(.92)}
.ac-form-grid input,.ac-form-grid select{font-size:11px}

.ac-section{padding:76px 0}.ac-about-grid{gap:58px}.ac-about-copy p{font-size:13px}.ac-about-media{min-height:390px}.ac-about-media img{height:390px}.ac-about-badge{right:0;bottom:14px}.ac-about-badge strong{font-size:25px}.ac-stat-number{font-size:25px}

.ac-services{background:#fbfbfa}.ac-service-grid{gap:12px;margin-top:34px}.ac-service-card-media{height:174px}.ac-service-card-body{padding:17px 17px 19px}.ac-service-card h3{font-size:15px;line-height:1.25}.ac-service-card .label{font-size:8px}.ac-arrow{width:24px;height:24px;font-size:15px}

.ac-offer-grid{gap:58px}.ac-offer-grid p{font-size:13px}.ac-signature .avatar{min-height:52px!important}.ac-signature .avatar img{width:52px;height:52px;object-fit:cover;object-position:center top}.ac-signature small{font-size:10px}.ac-accordion summary{font-size:11px}

.ac-testimonial{padding-bottom:76px}.ac-testimonial-wrap,.ac-testimonial-wrap>img{height:330px;min-height:330px}.ac-testimonial-wrap>img{object-position:center 42%}.ac-testimonial-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,43,69,.02),rgba(16,43,69,.16))}.ac-testimonial-card{right:12%;max-width:390px;padding:27px}.ac-testimonial-card p{font-size:12px}.ac-testimonial-card strong{font-size:10px}

.ac-team-grid{gap:18px}.ac-team-photo{height:295px}.ac-team-role{font-size:8px}.ac-team-body h3{font-size:14px}.ac-brand-strip{font-size:13px}

.ac-benefits-grid{min-height:410px}.ac-benefits-media{min-height:410px}.ac-benefits-media img{object-position:center 40%}.ac-benefits-content{padding:52px 46px}.ac-benefits-content p{font-size:13px}.ac-benefit-item strong{font-size:11px}

.ac-blog-grid{gap:16px;margin-top:34px}.ac-post-image{height:200px}.ac-post-body{padding:16px}.ac-post-body h3{font-size:15px}.ac-post-meta,.ac-readmore{font-size:9px}

.ac-footer-top{padding:27px 0}.ac-footer-contact{grid-template-columns:1.25fr 1fr 1fr}.ac-contact-item strong{font-size:11px}.ac-contact-item small{font-size:9px}.ac-contact-icon{width:36px;height:36px}.ac-footer-main{padding:48px 0}.ac-footer-grid{grid-template-columns:1fr 1.1fr 1.05fr .9fr;gap:35px}.ac-footer h4{font-size:12px}.ac-footer li{margin:6px 0}.ac-footer a,.ac-footer p{font-size:10.5px}.ac-footer-menu{display:grid;grid-template-columns:1fr 1fr;column-gap:14px}.ac-footer-menu li:before{content:"›";color:var(--ac-red);margin-right:6px}
.ac-footer-news{display:grid;gap:12px}.ac-footer-news-item{display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:center}.ac-footer-news-thumb{width:52px;height:52px;overflow:hidden;border-radius:2px}.ac-footer-news-thumb img{width:100%;height:100%;object-fit:cover}.ac-footer-news-item strong{font-size:10px;line-height:1.25;display:block;color:var(--ac-navy)}.ac-footer-news-item small{font-size:8px;color:#9aa3ab;display:block;margin-top:3px}.ac-newsletter input{font-size:10px}.ac-newsletter button{font-size:9px}.ac-hours{font-size:9.5px}

/* Inner pages and created demo content */
.ac-titlebar{padding:52px 0 48px;background:linear-gradient(135deg,#f7f5f2 0%,#fff 65%);border-bottom:1px solid #f0f0ef;position:relative;overflow:hidden}.ac-titlebar:after{content:"♡";position:absolute;right:9%;top:-42px;font-size:160px;color:rgba(244,50,85,.055);line-height:1}.ac-titlebar h1{margin:4px 0 12px;color:var(--ac-navy);font-size:42px}.ac-breadcrumb{display:flex;gap:9px;font-size:10px;color:#8b96a0}.ac-breadcrumb a{color:var(--ac-red);font-weight:800}.ac-page-article{max-width:100%!important}.ac-page-intro{max-width:760px;margin-bottom:34px}.ac-page-intro h2{color:var(--ac-navy);font-size:34px;line-height:1.18;margin:5px 0 16px}.ac-page-intro p{font-size:14px}.ac-inner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0}.ac-inner-card{border:1px solid var(--ac-border);padding:26px;background:#fff;box-shadow:0 6px 22px rgba(16,43,69,.045);border-radius:3px}.ac-inner-card h3{font-size:18px;color:var(--ac-navy);margin:0 0 9px}.ac-inner-card p{font-size:13px;margin:0}.ac-content-faq{max-width:820px}.ac-content-faq h3{color:var(--ac-navy);font-size:17px;margin:28px 0 6px}.ac-content-faq p{font-size:13px}.ac-contact-panels{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.ac-contact-panels>div{padding:24px;border:1px solid var(--ac-border);background:#fafafa}.ac-contact-panels h3{font-size:15px;color:var(--ac-navy);margin:0 0 6px}.ac-contact-panels p{font-size:12px;margin:0}

/* Blog/archive presentation */
.blog .ac-content,.archive .ac-content{background:#fafafa}.blog .ac-content .ac-container,.archive .ac-content .ac-container{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.blog .ac-content article,.archive .ac-content article{max-width:none!important;margin:0!important}.blog .ac-content article h2,.archive .ac-content article h2{font-size:20px!important}.navigation.pagination{grid-column:1/-1}

@media (max-width:1024px){
  .ac-nav .sub-menu{position:static;opacity:1;visibility:visible;transform:none;display:block;box-shadow:none;border:0;padding:4px 0 4px 16px;background:transparent}.ac-nav .menu-item-has-children>a:after{content:""}
  .ac-inner-grid{grid-template-columns:repeat(2,1fr)}.ac-contact-panels{grid-template-columns:repeat(2,1fr)}
  .blog .ac-content .ac-container,.archive .ac-content .ac-container{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:700px){
  .ac-titlebar{padding:38px 0}.ac-titlebar h1{font-size:32px}.ac-page-intro h2{font-size:28px}.ac-inner-grid,.ac-contact-panels{grid-template-columns:1fr}.blog .ac-content .ac-container,.archive .ac-content .ac-container{grid-template-columns:1fr}.ac-footer-menu{grid-template-columns:1fr}.ac-hero-copy{padding-right:0}.ac-hero h1{font-size:min(var(--ac-hero-size,54px),44px)}
}


/* ===== v1.2 requested navigation, hero graphic and inner-page fixes ===== */
.ac-header-row{grid-template-columns:auto 1fr auto;gap:28px}
.ac-nav{justify-self:end;margin-left:auto}
.ac-nav ul{justify-content:flex-end}
.ac-header-actions{display:flex;align-items:center;gap:16px}

/* Heartbeat signal drawn with CSS/SVG data, so no generated image is required. */
.ac-hero-media{position:relative;isolation:isolate;background:linear-gradient(135deg,#fff 0%,#f8f5f3 100%);overflow:hidden}
.ac-hero-media:before{content:"";position:absolute;inset:8% 0 4% 0;z-index:0;opacity:.20;background-repeat:no-repeat;background-position:center;background-size:94% auto;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 420'%3E%3Cpath d='M0 215 H140 L175 215 L205 155 L245 300 L290 95 L335 215 H470 L505 215 L535 170 L565 255 L600 130 L645 215 H900' fill='none' stroke='%23f43255' stroke-width='7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.ac-hero-media:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(244,50,85,.11);border-radius:50%;right:8%;top:16%;z-index:0;box-shadow:0 0 0 45px rgba(244,50,85,.025),0 0 0 90px rgba(244,50,85,.018)}
.ac-hero-media>img{position:relative;z-index:1;background:transparent;object-fit:contain;object-position:center bottom}
.ac-hero-watermark{z-index:2}

.ac-titlebar-intro{max-width:620px;margin:16px 0 0;font-size:14px;color:#6f7d89}
.ac-text-link{display:inline-block;margin-top:14px;color:var(--ac-red);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.ac-service-cta{margin-top:28px;background:var(--ac-navy);color:#fff;padding:30px 34px;display:flex;justify-content:space-between;gap:30px;align-items:center;border-radius:3px}
.ac-service-cta h3{margin:3px 0 8px;font-size:24px;color:#fff}.ac-service-cta p{margin:0;max-width:650px}.ac-service-cta .ac-kicker{color:#ff8096}
.ac-contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:start}
.ac-contact-layout .ac-contact-panels{grid-template-columns:repeat(2,1fr)}
.ac-contact-panels a{color:var(--ac-navy);font-weight:700}
.ac-contact-note{margin-top:18px;padding:20px 22px;background:#fff7f8;border-left:3px solid var(--ac-red)}.ac-contact-note strong{color:var(--ac-navy)}.ac-contact-note p{margin:5px 0 0;font-size:12px}
.ac-contact-form-card{background:#fff;padding:30px;border:1px solid var(--ac-border);box-shadow:0 10px 35px rgba(16,43,69,.07);border-radius:3px}.ac-contact-form-card h2{font-size:28px;color:var(--ac-navy);margin:4px 0 22px}
.ac-contact-form{display:grid;gap:16px}.ac-contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ac-contact-form label{font-size:11px;font-weight:800;color:var(--ac-navy);display:grid;gap:7px}.ac-contact-form input,.ac-contact-form select,.ac-contact-form textarea{width:100%;border:1px solid #dfe4e8;background:#fff;padding:12px 13px;font:inherit;font-size:13px;color:#425568;border-radius:2px}.ac-contact-form textarea{resize:vertical}.ac-form-message{padding:12px 14px;margin:0 0 16px;font-size:12px}.ac-form-message.success{background:#edf8f0;color:#246c38}.ac-form-message.error{background:#fff0f2;color:#9a263a}
.ac-blog-page{background:#fafafa}.ac-blog-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.ac-blog-list-card{background:#fff;border:1px solid var(--ac-border);box-shadow:0 7px 25px rgba(16,43,69,.05)}.ac-blog-list-body{padding:26px}.ac-blog-list-body h2{font-size:22px;line-height:1.25;margin:8px 0 12px}.ac-blog-list-body h2 a{color:var(--ac-navy)}.ac-blog-list-body p{font-size:13px;margin-bottom:18px}.ac-blog-page .navigation.pagination{margin-top:28px}

@media(max-width:1024px){.ac-nav{justify-self:stretch;margin-left:0}.ac-contact-layout{grid-template-columns:1fr}.ac-blog-page-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.ac-contact-form-grid,.ac-blog-page-grid{grid-template-columns:1fr}.ac-service-cta{flex-direction:column;align-items:flex-start}.ac-contact-layout .ac-contact-panels{grid-template-columns:1fr}}

/* ===== v1.3 typography and premium inner-page refresh ===== */
body{font-size:17px;line-height:1.72}
.ac-topbar{font-size:13px}.ac-brand-sub{font-size:10px}.ac-nav a{font-size:14px}.ac-kicker{font-size:12px}
.ac-titlebar{padding:64px 0 58px}.ac-titlebar h1{font-size:48px}.ac-titlebar-intro{font-size:17px;line-height:1.75;max-width:760px}.ac-breadcrumb{font-size:12px}
.ac-content{padding:72px 0}.ac-page-intro{max-width:850px;margin-bottom:42px}.ac-page-intro h2{font-size:38px}.ac-page-intro p{font-size:17px;line-height:1.75}
.ac-inner-card h3{font-size:21px}.ac-inner-card p,.ac-content-faq p{font-size:16px}.ac-content-faq h3{font-size:20px}
.ac-contact-panels h3{font-size:17px}.ac-contact-panels p,.ac-contact-note p{font-size:14px}.ac-contact-form label{font-size:13px}.ac-contact-form input,.ac-contact-form select,.ac-contact-form textarea{font-size:15px}.ac-contact-form-card h2{font-size:32px}
.ac-blog-page-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.ac-blog-list-body{padding:32px}.ac-blog-list-body h2{font-size:26px}.ac-blog-list-body p{font-size:16px;line-height:1.75}.ac-post-meta{font-size:11px}.ac-readmore{font-size:11px}
.ac-footer a,.ac-footer p{font-size:12.5px}.ac-footer h4{font-size:14px}.ac-contact-item strong{font-size:13px}.ac-contact-item small{font-size:11px}.ac-footer-news-item strong{font-size:12px}.ac-footer-news-item small{font-size:10px}.ac-hours{font-size:11px}

/* Premium Services page */
.ac-services-premium{display:grid;gap:34px}
.ac-services-hero-panel{display:grid;grid-template-columns:1.2fr .8fr;gap:42px;align-items:center;background:linear-gradient(135deg,#102b45 0%,#173d60 100%);color:#fff;padding:46px 48px;border-radius:8px;overflow:hidden;position:relative}
.ac-services-hero-panel:after{content:"♡";position:absolute;right:26px;top:-44px;font-size:220px;color:rgba(255,255,255,.04);line-height:1}
.ac-services-hero-panel .ac-kicker{color:#ff7f97}.ac-services-hero-panel h2{font-size:40px;line-height:1.15;margin:8px 0 16px;color:#fff}.ac-services-hero-panel p{font-size:17px;line-height:1.75;margin:0;color:#dce6ef}
.ac-services-highlight{position:relative;z-index:1;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);padding:26px;border-radius:7px}.ac-services-highlight strong{display:block;font-size:28px;color:#fff;margin-bottom:8px}.ac-services-highlight span{font-size:14px;color:#dce6ef}
.ac-service-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ac-service-feature{background:#fff;border:1px solid #e6eaee;border-radius:7px;padding:30px;box-shadow:0 10px 35px rgba(16,43,69,.06);position:relative;overflow:hidden;transition:.25s ease}
.ac-service-feature:hover{transform:translateY(-4px);box-shadow:0 16px 44px rgba(16,43,69,.1)}
.ac-service-feature:after{content:"";position:absolute;right:-28px;top:-28px;width:90px;height:90px;border-radius:50%;background:rgba(244,50,85,.055)}
.ac-service-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#fff1f4;color:var(--ac-red);font-size:25px;font-weight:900;margin-bottom:20px}
.ac-service-feature h3{font-size:22px;line-height:1.25;margin:0 0 12px;color:var(--ac-navy)}.ac-service-feature p{font-size:15.5px;line-height:1.7;margin:0 0 18px}.ac-service-feature ul{margin:0;padding-left:19px;color:#607080;font-size:14px;line-height:1.7}.ac-service-feature li::marker{color:var(--ac-red)}
.ac-care-path{background:#f8f8f7;padding:38px;border-radius:7px}.ac-care-path h2{font-size:32px;color:var(--ac-navy);margin:5px 0 24px}.ac-care-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ac-care-step{background:#fff;padding:24px;border-left:3px solid var(--ac-red);box-shadow:0 5px 18px rgba(16,43,69,.04)}.ac-care-step b{display:block;color:var(--ac-red);font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.ac-care-step h3{font-size:18px;color:var(--ac-navy);margin:0 0 8px}.ac-care-step p{font-size:14px;margin:0}
.ac-services-note{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:34px 38px;background:#fff7f8;border:1px solid #ffdfe5;border-radius:7px}.ac-services-note h3{font-size:27px;color:var(--ac-navy);margin:4px 0 8px}.ac-services-note p{font-size:15px;margin:0;max-width:760px}

@media(max-width:1024px){.ac-blog-page-grid{grid-template-columns:repeat(2,1fr)}.ac-services-hero-panel{grid-template-columns:1fr}.ac-service-feature-grid{grid-template-columns:repeat(2,1fr)}.ac-care-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){body{font-size:16px}.ac-titlebar h1{font-size:36px}.ac-titlebar-intro{font-size:16px}.ac-page-intro h2{font-size:31px}.ac-blog-page-grid,.ac-service-feature-grid,.ac-care-steps{grid-template-columns:1fr}.ac-services-hero-panel{padding:32px 24px}.ac-services-hero-panel h2{font-size:32px}.ac-services-note{grid-template-columns:1fr;padding:28px 24px}.ac-content{padding:52px 0}}


/* ===== v1.4 larger footer typography ===== */
.ac-footer h4{font-size:18px;line-height:1.3;margin-bottom:22px}
.ac-footer a,.ac-footer p{font-size:15px;line-height:1.65}
.ac-footer li{margin:11px 0}
.ac-contact-item strong{font-size:16px;line-height:1.35}
.ac-contact-item small{font-size:13px;line-height:1.45;margin-top:3px}
.ac-footer-news-item strong{font-size:14px;line-height:1.35}
.ac-footer-news-item small{font-size:12px;line-height:1.4;margin-top:5px}
.ac-newsletter input{font-size:14px;height:50px;padding:0 15px}
.ac-newsletter button{font-size:13px;height:50px;padding:0 20px}
.ac-hours{font-size:14px;line-height:1.7}
.ac-hours>div{margin-bottom:8px}
.ac-footer-bottom{font-size:13px;line-height:1.5;padding:16px 0}

@media(max-width:700px){
  .ac-footer h4{font-size:17px}
  .ac-footer a,.ac-footer p{font-size:14px}
  .ac-contact-item strong{font-size:15px}
  .ac-contact-item small{font-size:12px}
  .ac-footer-news-item strong{font-size:13px}
  .ac-footer-news-item small{font-size:11px}
  .ac-hours{font-size:13px}
  .ac-footer-bottom{font-size:12px}
}
