/* Landing-page additions. Loaded after style.css. */
.lp-sub{font-family:var(--font-serif);font-size:1.3rem;color:#111;margin:28px 0 10px;font-weight:600}
.bg-dark .lp-sub{color:#e8e0d5}
.lp-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.lp-note{font-size:0.78rem;color:#8a8378;line-height:1.8;margin-top:22px;max-width:820px}
.bg-dark .lp-note{color:rgba(255,255,255,0.4)}
.lp-tbl-title{font-family:var(--font-serif);font-size:1.15rem;color:#111;margin:34px 0 4px;font-weight:600}
.bg-dark .lp-tbl-title{color:#e8e0d5}

.lp-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#1a1715;border:1px solid #1a1715;margin-top:44px}
.lp-step{background:#0e0c0b;padding:34px 26px;transition:background .3s}
.lp-step:hover{background:#131009}
.lp-step-n{font-family:var(--font-mono);font-size:0.62rem;letter-spacing:0.25em;color:rgba(200,169,110,0.5);display:block;margin-bottom:14px}
.lp-step-t{font-family:var(--font-serif);font-size:1.2rem;color:#e8e0d5;margin:0 0 10px;font-weight:400}
.lp-step-d{font-size:0.79rem;line-height:1.85;color:rgba(255,255,255,0.5);margin:0}

.lp-faqs{margin-top:10px;max-width:900px}
.lp-faq{border-bottom:1px solid #e2dcd2;padding:2px 0}
.lp-faq summary{cursor:pointer;list-style:none;padding:20px 34px 20px 0;position:relative;font-family:var(--font-serif);font-size:1.08rem;color:#111;font-weight:600;line-height:1.4}
.lp-faq summary::-webkit-details-marker{display:none}
.lp-faq summary::after{content:'+';position:absolute;right:4px;top:50%;transform:translateY(-50%);color:#c8a96e;font-size:1.4rem;font-family:var(--font-body);font-weight:300;line-height:1}
.lp-faq[open] summary::after{content:'\2212'}
.lp-faq summary:hover{color:#c8a96e}
.lp-faq p{padding:0 34px 22px 0;margin:0;font-size:0.88rem;line-height:1.9;color:#555}

.lp-idx{display:grid;grid-template-columns:repeat(3,1fr);gap:44px 32px}
.lp-idx-group h2{font-family:var(--font-mono);font-size:0.66rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:#c8a96e;margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid #e2dcd2}
.lp-idx-list{list-style:none;margin:0;padding:0}
.lp-idx-list li{margin-bottom:14px}
.lp-idx-list a{display:block;text-decoration:none;border-left:2px solid transparent;padding-left:12px;transition:border-color .25s,padding-left .25s}
.lp-idx-list a:hover{border-left-color:#c8a96e;padding-left:16px}
.lp-idx-h1{display:block;font-family:var(--font-serif);font-size:1rem;color:#111;line-height:1.35}
.lp-idx-list a:hover .lp-idx-h1{color:#c8a96e}
.lp-idx-kw{display:block;font-family:var(--font-mono);font-size:0.6rem;letter-spacing:0.1em;text-transform:uppercase;color:#a9a196;margin-top:3px}

@media (max-width:1000px){.lp-steps{grid-template-columns:1fr 1fr}.lp-idx{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.lp-steps{grid-template-columns:1fr}.lp-idx{grid-template-columns:1fr;gap:32px}.lp-cta-row .btn{width:100%;justify-content:center}.lp-faq summary{font-size:0.98rem}}

/* In-content keyword links */
.kw-link{color:inherit;text-decoration:none;background-image:linear-gradient(transparent 62%,rgba(200,169,110,0.32) 0);background-repeat:no-repeat;box-shadow:inset 0 -1px 0 rgba(200,169,110,0.8);padding:0 1px;transition:background-size .25s,color .25s}
.kw-link:hover{color:#c8a96e;background-image:linear-gradient(transparent 62%,rgba(200,169,110,0.55) 0)}
.bg-dark .kw-link,.services-bg .kw-link,.team-section .kw-link,.cta-banner-content .kw-link{color:#e8e0d5;box-shadow:inset 0 -1px 0 rgba(200,169,110,0.6)}
.bg-dark .kw-link:hover,.services-bg .kw-link:hover,.cta-banner-content .kw-link:hover{color:#c8a96e}

/* ============ Doorway hub page ============ */
.dw-hero{position:relative;min-height:52vh;display:flex;align-items:center;overflow:hidden}
.dw-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.05)}
.dw-hero-overlay{position:absolute;inset:0;background:linear-gradient(105deg,rgba(10,9,8,0.92) 0%,rgba(10,9,8,0.7) 55%,rgba(10,9,8,0.5) 100%)}
.dw-hero-inner{position:relative;max-width:1200px;margin:0 auto;padding:120px 40px 60px;width:100%}
.dw-hero-inner h1{font-family:var(--font-serif);font-size:clamp(2.4rem,5vw,4rem);color:#fff;font-weight:600;margin:12px 0 18px;line-height:1.05}
.dw-hero-sub{color:rgba(255,255,255,0.7);font-size:1.05rem;line-height:1.8;max-width:680px;margin-bottom:22px}

.dw-loc-band{background:#0e0c0b;padding:0}
.dw-loc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#1a1715;margin:0 -1px}
.dw-loc{background:#0e0c0b;padding:38px 30px;transition:background .3s}
.dw-loc:hover{background:#141009}
.dw-loc-pin{width:44px;height:44px;border-radius:50%;background:rgba(200,169,110,0.12);display:flex;align-items:center;justify-content:center;color:#c8a96e;font-size:1.05rem;margin-bottom:18px}
.dw-loc-name{font-family:var(--font-serif);font-size:1.45rem;font-weight:600;margin:0 0 6px}
.dw-loc-name a{color:#e8e0d5;text-decoration:none}
.dw-loc-name a:hover{color:#c8a96e}
.dw-loc-tag{font-family:var(--font-mono);font-size:0.64rem;letter-spacing:0.14em;text-transform:uppercase;color:#c8a96e;margin:0 0 14px}
.dw-loc-addr{font-size:0.85rem;line-height:1.8;color:rgba(255,255,255,0.55);margin:0 0 18px}
.dw-loc-actions{display:flex;gap:10px;flex-wrap:wrap}
.dw-loc-actions a{font-family:var(--font-mono);font-size:0.7rem;letter-spacing:0.06em;color:#e8e0d5;text-decoration:none;border:1px solid rgba(200,169,110,0.35);padding:8px 14px;border-radius:2px;transition:all .25s}
.dw-loc-actions a:hover{background:#c8a96e;color:#0a0a0a;border-color:#c8a96e}

.dw-intro{font-size:1.02rem;line-height:1.95;color:#4a4438;max-width:900px;margin-bottom:52px}
.dw-intro a{color:#b8935a;text-decoration:none;border-bottom:1px solid rgba(200,169,110,0.4)}
.dw-intro a:hover{color:#0a0a0a}
.dw-section-head{margin-bottom:30px}
.dw-count{font-family:var(--font-mono);font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;color:#c8a96e;font-weight:500;vertical-align:middle;margin-left:8px}

.dw-group{margin-bottom:38px}
.dw-group-title{font-family:var(--font-mono);font-size:0.68rem;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:#8a8378;margin:0 0 16px;display:flex;align-items:center;gap:10px}
.dw-group-title span{background:#f0ebe2;color:#b8935a;border-radius:20px;padding:2px 10px;font-size:0.6rem}
.dw-btns{display:flex;flex-wrap:wrap;gap:10px}
.dw-btn{display:inline-block;font-family:var(--font-body,'Montserrat',sans-serif);font-size:0.8rem;font-weight:500;color:#3a352d;text-decoration:none;background:#faf7f1;border:1px solid #e4ddd0;border-radius:3px;padding:11px 16px;line-height:1.3;transition:all .22s ease}
.dw-btn:hover{background:#0e0c0b;border-color:#0e0c0b;color:#e8d9bf;transform:translateY(-2px);box-shadow:0 6px 18px rgba(10,9,8,0.14)}

.dw-list{list-style:none;padding:0;margin:0;max-width:900px}
.dw-list li{position:relative;padding:16px 0 16px 34px;border-bottom:1px solid #e6e0d5;font-size:0.95rem;line-height:1.8;color:#4a4438}
.dw-list li::before{content:'\f0c8';font-family:'Font Awesome 6 Free';font-weight:900;position:absolute;left:0;top:18px;color:#c8a96e;font-size:0.7rem}
.dw-list strong{color:#0a0a0a}

.dw-faqs{max-width:900px}
.dw-faq{border-bottom:1px solid #e2dcd2}
.dw-faq summary{cursor:pointer;list-style:none;padding:20px 34px 20px 0;position:relative;font-family:var(--font-serif);font-size:1.1rem;color:#111;font-weight:600}
.dw-faq summary::-webkit-details-marker{display:none}
.dw-faq summary::after{content:'+';position:absolute;right:4px;top:50%;transform:translateY(-50%);color:#c8a96e;font-size:1.5rem;font-weight:300}
.dw-faq[open] summary::after{content:'\2212'}
.dw-faq summary:hover{color:#c8a96e}
.dw-faq p{padding:0 34px 22px 0;margin:0;font-size:0.9rem;line-height:1.9;color:#555}

@media (max-width:900px){.dw-loc-grid{grid-template-columns:1fr}.dw-hero-inner{padding:100px 24px 48px}}
@media (max-width:600px){.dw-btn{flex:1 1 100%;text-align:center}.dw-hero{min-height:auto}}

/* Location bar on SEO pages */
.lp-locbar{background:#f7f3ec;border-top:1px solid #ece4d6;border-bottom:1px solid #ece4d6;padding:30px 0}
.lp-locbar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.lp-loc{border-left:2px solid #c8a96e;padding-left:16px}
.lp-loc-h{display:block;font-family:var(--font-serif);font-size:1.02rem;font-weight:600;color:#0a0a0a;margin-bottom:7px}
.lp-loc-h i{color:#c8a96e;margin-right:6px;font-size:0.85rem}
.lp-loc p{font-size:0.8rem;line-height:1.7;color:#6a6357;margin:0 0 8px}
.lp-loc a{font-family:var(--font-mono);font-size:0.72rem;letter-spacing:0.04em;color:#b8935a;text-decoration:none}
.lp-loc a:hover{color:#0a0a0a}
@media (max-width:820px){.lp-locbar-grid{grid-template-columns:1fr;gap:18px}}

/* ===== Location maps (3 branches) ===== */
.locmap-section{padding:64px 0;background:#fff}
.locmap-head{margin-bottom:34px}
.locmap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.locmap-card{border:1px solid #e6e0d5;border-radius:6px;overflow:hidden;background:#faf7f1;display:flex;flex-direction:column;transition:box-shadow .3s,transform .3s}
.locmap-card:hover{box-shadow:0 12px 30px rgba(10,9,8,0.12);transform:translateY(-3px)}
.locmap-frame{position:relative;width:100%;aspect-ratio:4/3;background:#e9e2d6}
.locmap-frame iframe{position:absolute;inset:0;filter:grayscale(0.25)}
.locmap-card:hover .locmap-frame iframe{filter:none}
.locmap-info{padding:20px 22px 24px}
.locmap-name{font-family:var(--font-serif);font-size:1.2rem;font-weight:600;color:#0a0a0a;margin:0 0 8px}
.locmap-name i{color:#c8a96e;margin-right:7px;font-size:0.9rem}
.locmap-addr{font-size:0.83rem;line-height:1.75;color:#5f584c;margin:0 0 16px;min-height:44px}
.locmap-actions{display:flex;gap:10px;flex-wrap:wrap}
.locmap-actions a{font-family:var(--font-mono);font-size:0.72rem;letter-spacing:0.04em;color:#3a352d;text-decoration:none;border:1px solid #d8cfbd;border-radius:3px;padding:8px 13px;transition:all .22s}
.locmap-actions a:hover{background:#0e0c0b;border-color:#0e0c0b;color:#e8d9bf}
.locmap-actions a i{color:#c8a96e;margin-right:5px}
.locmap-actions a:hover i{color:#e8d9bf}
@media (max-width:900px){.locmap-grid{grid-template-columns:1fr;max-width:520px;margin:0 auto}}

/* Floating call button + 3-button stack */
.float-call{position:fixed;bottom:156px;right:28px;z-index:900;width:54px;height:54px;background:#0a0a0a;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(0,0,0,.3);transition:transform .3s,background .3s;color:#fff;font-size:1.3rem;text-decoration:none;border:1px solid rgba(200,169,110,.4)}
.float-call:hover{transform:scale(1.1);background:#c8a96e;color:#0a0a0a}
@media (max-width:480px){.float-call{bottom:150px;right:20px;width:50px;height:50px}}

/* fab-stack-mobile */
@media (max-width:480px){.float-wa{right:20px;bottom:28px;width:50px;height:50px}.float-appt{right:20px;bottom:90px}}

/* Keyword link cloud (SEO footer index on main pages) */
.kw-cloud-sec{background:#f7f3ec;border-top:1px solid #ece4d6;padding:48px 0}
.kw-cloud-title{font-family:var(--font-serif,'Cormorant Garamond',serif);font-size:1.5rem;color:#0a0a0a;margin:0 0 6px;font-weight:600}
.kw-cloud-sub{font-size:0.82rem;color:#8a8378;margin:0 0 22px}
.kw-cloud{display:flex;flex-wrap:wrap;gap:8px}
.kw-cloud a{font-family:var(--font-body,'Montserrat',sans-serif);font-size:0.74rem;color:#5a5348;text-decoration:none;background:#fff;border:1px solid #e4ddd0;border-radius:20px;padding:7px 14px;line-height:1.2;transition:all .2s}
.kw-cloud a:hover{background:#0a0a0a;border-color:#0a0a0a;color:#e8d9bf}
@media (max-width:600px){.kw-cloud a{font-size:0.7rem;padding:6px 12px}}

/* ===== SEO sections: why-choose, testimonials, trust ===== */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:12px}
.why-card{background:#faf8f4;border:1px solid #ece4d6;border-radius:8px;padding:26px 22px;transition:transform .3s,box-shadow .3s}
.why-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(10,9,8,.1)}
.why-ic{width:46px;height:46px;border-radius:10px;background:rgba(200,169,110,.14);color:#c8a96e;display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin-bottom:16px}
.why-card h3{font-family:var(--font-serif,'Cormorant Garamond',serif);font-size:1.12rem;color:#0a0a0a;margin:0 0 8px}
.why-card p{font-size:0.82rem;line-height:1.75;color:#5f584c;margin:0}
.tst-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:12px}
.tst-card{background:#fff;border:1px solid #ece4d6;border-radius:8px;padding:28px 26px;position:relative}
.tst-stars{color:#c8a96e;font-size:0.95rem;letter-spacing:2px;margin-bottom:12px}
.tst-text{font-size:0.9rem;line-height:1.85;color:#4a4438;font-style:italic;margin:0 0 16px}
.tst-author{font-size:0.8rem;font-weight:600;color:#0a0a0a;margin:0}
.tst-author span{color:#b8935a;font-weight:400}
.tst-agg{margin-top:26px;text-align:center;font-size:0.9rem;color:#6a6357}
.tst-agg strong{font-family:var(--font-serif,'Cormorant Garamond',serif);font-size:1.5rem;color:#c8a96e}
.trust-strip{background:#0e0c0b;padding:34px 0}
.trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.trust-cell{text-align:center;border-right:1px solid #241f1a}
.trust-cell:last-child{border-right:none}
.trust-num{display:block;font-family:var(--font-serif,'Cormorant Garamond',serif);font-size:2rem;color:#c8a96e;line-height:1}
.trust-lbl{display:block;font-family:var(--font-mono,'Roboto Mono',monospace);font-size:0.56rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:8px}
@media (max-width:980px){.why-grid{grid-template-columns:1fr 1fr}.tst-grid{grid-template-columns:1fr}.trust-row{grid-template-columns:1fr 1fr;gap:24px}.trust-cell:nth-child(2){border-right:none}}
@media (max-width:560px){.why-grid{grid-template-columns:1fr}.trust-row{grid-template-columns:1fr 1fr}}

/* ===== Home page map section ===== */
.home-map-section{padding:80px 0;background:#fff}
.home-map-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:12px}
.home-map-card{border:1px solid #e6e0d5;border-radius:8px;overflow:hidden;background:#faf8f4;transition:box-shadow .3s,transform .3s}
.home-map-card:hover{box-shadow:0 14px 36px rgba(10,9,8,.12);transform:translateY(-3px)}
.home-map-frame{position:relative;width:100%;aspect-ratio:4/3;background:#e9e2d6}
.home-map-frame iframe{position:absolute;inset:0;filter:grayscale(.2)}
.home-map-card:hover .home-map-frame iframe{filter:none}
.home-map-info{padding:22px 24px 26px}
.home-map-info h3{font-family:var(--font-serif,'Cormorant Garamond',serif);font-size:1.3rem;color:#0a0a0a;margin:0 0 8px}
.home-map-info h3 i{color:#c8a96e;margin-right:8px;font-size:.95rem}
.home-map-info p{font-size:.85rem;line-height:1.75;color:#5f584c;margin:0 0 16px}
.home-map-actions{display:flex;gap:12px;flex-wrap:wrap}
.home-map-actions a{font-family:var(--font-mono,'Roboto Mono',monospace);font-size:.74rem;letter-spacing:.04em;color:#3a352d;text-decoration:none;border:1px solid #d8cfbd;border-radius:3px;padding:9px 15px;transition:all .22s}
.home-map-actions a:hover{background:#0e0c0b;border-color:#0e0c0b;color:#e8d9bf}
.home-map-actions a i{color:#c8a96e;margin-right:5px}
.home-map-actions a:hover i{color:#e8d9bf}
@media (max-width:980px){.home-map-grid{grid-template-columns:1fr;max-width:560px;margin:12px auto 0}}

/* ===== Doorway page — professional polish ===== */
.dw-hero-refined .dw-hero-inner{max-width:900px}
.dw-hero .section-label{color:#c8a96e}
.dw-loc-band{background:linear-gradient(180deg,#0e0c0b,#080706)}
.dw-loc{position:relative;transition:background .35s,transform .35s}
.dw-loc:hover{transform:translateY(-3px)}
.dw-loc-pin{transition:transform .35s,background .35s}
.dw-loc:hover .dw-loc-pin{transform:scale(1.08);background:rgba(200,169,110,.22)}
.dw-group{background:#fff;border:1px solid #f0ebe2;border-radius:10px;padding:24px 26px;margin-bottom:20px;transition:box-shadow .3s}
.dw-group:hover{box-shadow:0 8px 26px rgba(10,9,8,.06)}
.dw-group-title{margin-bottom:16px}
.dw-btn{background:#faf8f4;border-color:#eadfce}
.dw-btn:hover{transform:translateY(-2px)}
.dw-section-head .section-title{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.dw-count{background:#f4ede1;color:#b8935a;padding:3px 12px;border-radius:20px;font-size:.62rem}
/* refine intro readability */
.dw-intro{font-size:1.05rem;line-height:2;color:#4a4438;background:#faf8f4;border-left:3px solid #c8a96e;padding:22px 28px;border-radius:0 8px 8px 0}

/* ===== 8-keyword doorway page ===== */
.dwx-hero{position:relative;min-height:56vh;display:flex;align-items:center;overflow:hidden}
.dwx-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.05)}
.dwx-hero-overlay{position:absolute;inset:0;background:linear-gradient(105deg,rgba(10,9,8,.94),rgba(10,9,8,.6) 60%,rgba(10,9,8,.4))}
.dwx-hero-inner{position:relative;max-width:860px;margin:0 auto;padding:130px 40px 70px;width:100%;text-align:center}
.dwx-hero-inner .section-label{color:#c8a96e}
.dwx-hero-inner h1{font-family:var(--font-serif,'Cormorant Garamond',serif);font-size:clamp(2.6rem,6vw,4.4rem);color:#fff;font-weight:600;margin:14px 0 20px;line-height:1.03}
.dwx-hero-sub{color:rgba(255,255,255,.78);font-size:1.08rem;line-height:1.85;max-width:640px;margin:0 auto 28px}
.dwx-hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.dwx-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.dwx-card{display:flex;flex-direction:column;background:#faf8f4;border:1px solid #ece4d6;border-radius:12px;padding:28px 24px;text-decoration:none;transition:transform .3s,box-shadow .3s,border-color .3s}
.dwx-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(10,9,8,.13);border-color:#d8c9a8}
.dwx-ic{width:52px;height:52px;border-radius:12px;background:rgba(200,169,110,.15);color:#c8a96e;display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:18px}
.dwx-card h3{font-family:var(--font-serif,'Cormorant Garamond',serif);font-size:1.25rem;color:#0a0a0a;margin:0 0 10px;line-height:1.25}
.dwx-card p{font-size:.83rem;line-height:1.7;color:#5f584c;margin:0 0 18px;flex:1}
.dwx-go{font-family:var(--font-mono,'Roboto Mono',monospace);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#b8935a;font-weight:500}
.dwx-go i{transition:transform .3s;margin-left:4px}
.dwx-card:hover .dwx-go i{transform:translateX(4px)}
.dwx-faqs{max-width:820px;margin:0 auto}
.dwx-faq{border-bottom:1px solid #e2dcd2}
.dwx-faq summary{cursor:pointer;list-style:none;padding:20px 34px 20px 0;position:relative;font-family:var(--font-serif,'Cormorant Garamond',serif);font-size:1.12rem;color:#111;font-weight:600}
.dwx-faq summary::-webkit-details-marker{display:none}
.dwx-faq summary::after{content:'+';position:absolute;right:4px;top:50%;transform:translateY(-50%);color:#c8a96e;font-size:1.5rem;font-weight:300}
.dwx-faq[open] summary::after{content:'\2212'}
.dwx-faq summary:hover{color:#c8a96e}
.dwx-faq p{padding:0 34px 22px 0;margin:0;font-size:.9rem;line-height:1.9;color:#555}
@media (max-width:1080px){.dwx-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.dwx-grid{grid-template-columns:1fr}.dwx-hero-inner{padding:110px 22px 50px}}

/* ===== 78-keyword doorway groups ===== */
.dwx-groups{max-width:1100px;margin:0 auto}
.dwx-group{background:#fff;border:1px solid #f0ebe2;border-radius:10px;padding:24px 26px;margin-bottom:18px;transition:box-shadow .3s}
.dwx-group:hover{box-shadow:0 8px 26px rgba(10,9,8,.06)}
.dwx-group-title{font-family:var(--font-mono,'Roboto Mono',monospace);font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#8a8378;margin:0 0 16px;display:flex;align-items:center;gap:10px}
.dwx-group-title span{background:#f4ede1;color:#b8935a;border-radius:20px;padding:2px 10px;font-size:.6rem}
.dwx-tags{display:flex;flex-wrap:wrap;gap:9px}
.dwx-tag{display:inline-block;font-family:var(--font-body,'Montserrat',sans-serif);font-size:.79rem;font-weight:500;color:#3a352d;text-decoration:none;background:#faf8f4;border:1px solid #eadfce;border-radius:4px;padding:10px 15px;line-height:1.3;transition:all .22s}
.dwx-tag:hover{background:#0e0c0b;border-color:#0e0c0b;color:#e8d9bf;transform:translateY(-2px);box-shadow:0 6px 16px rgba(10,9,8,.14)}
@media (max-width:560px){.dwx-tag{flex:1 1 100%;text-align:center}}

/* ===== Accessibility: 44px minimum tap targets on mobile ===== */
@media (max-width:768px){
  /* footer + nav links get comfortable tap area */
  .site-footer a,
  .footer-bottom-strip a,
  .kw-link,
  .team-card-link,
  .pl-btn,
  .fsoc{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    padding-top:6px;
    padding-bottom:6px;
  }
  /* social icon circles */
  .fsoc{
    min-width:44px;
    justify-content:center;
  }
  /* carousel dots — enlarge hit area with transparent padding, keep dot visual small */
  .mob-dot2,
  .mob-dot,
  [class*="dot"]{
    min-width:44px;
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }
  /* hamburger */
  .hamburger{
    min-width:44px;
    min-height:44px;
  }
  /* generic small links in content */
  .breadcrumb a,
  .related-strip a{
    min-height:44px;
    display:inline-flex;
    align-items:center;
  }
}

/* ===== More tap-target fixes (buttons + contact links) ===== */
@media (max-width:768px){
  .btn,.tg-hbp,.tg-hbs,.float-appt{min-height:44px !important;display:inline-flex;align-items:center;justify-content:center}
  .location-value a,
  .home-map-actions a,
  .locmap-actions a,
  .lp-loc a,
  .dw-loc-actions a{min-height:44px;display:inline-flex;align-items:center;padding-top:8px;padding-bottom:8px}
}

/* ===== SEO/Legibility: minimum legible font size on mobile ===== */
@media (max-width:768px){
  .fl-cat,.mob-cat,.svc-card-mini-cat,.svc-card-mini-link,
  .section-label,.team-card-number,.team-card-link,.pl-btn,
  .dwx-group-title,.dw-group-title,.trust-lbl,.locmap-actions a,
  .home-map-actions a,.kw-cloud a{
    font-size:12px !important;
    letter-spacing:0.08em;
  }
  /* buttons legible */
  .btn,.tg-hbp,.tg-hbs{font-size:13px !important}
}

/* ===== Legibility catch-all: no text below 12px on mobile ===== */
@media (max-width:768px){
  .location-label,.dropdown-label,label,
  .footer-col h5,.site-footer h5,
  footer .fl-cat,footer span,footer a{
    font-size:12px !important;
  }
  /* nav dropdown labels */
  .nav-links a,.dropdown a{font-size:13px}
}

/* ===== Accessibility for ALL viewports (not just mobile) ===== */
/* Minimum legible font size everywhere */
.fl-cat,.mob-cat,.svc-card-mini-cat,.section-label,
.team-card-number,.trust-lbl,.dwx-group-title,.dw-group-title,
.location-label,.dropdown-label,.svc-card-mini-link{
  font-size:12px !important;
}
/* Tap targets: social icons, dots, hamburger meet 44px on all screens */
.fsoc{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.mob-dot2,.mob-dot,[class*="carousel-dot"]{min-width:24px;min-height:24px;display:inline-flex;align-items:center;justify-content:center}
.hamburger{min-width:44px;min-height:44px}

/* Final legibility pass — remaining small text to 12px minimum */
.pl-btn,.nav-cta,.kw-link,.tg-hbp,.tg-hbs,
.footer-bottom-strip a,.site-footer h5,.footer-col h5,
.footer-links a,label,.about-features span{
  font-size:12px !important;
}
h5{font-size:12px}

/* Visit Our Coimbatore Salons heading — brand gold */
.home-map-section .section-title{color:#c8a96e !important}


/* ===== SEO body images: show FULL photo, no crop ===== */
.svc-img-wrap{background:#f5f0e8;display:flex;align-items:center;justify-content:center}
.svc-img-wrap img{
  object-fit:contain !important;
  width:100% !important;
  height:auto !important;
  max-height:520px;
  filter:none !important;
}
@media (max-width:900px){
  .svc-img-wrap img{max-height:400px}
}
