/* Home Services Apopka V12 — conversion-first refinements */
:root{--v12-ink:#1e2932;--v12-charcoal:#222b34;--v12-red:#a20c31;--v12-burgundy:#850622;--v12-bg:#f6f7f7;--v12-muted:#63707a;--v12-line:#e3e7ea}
.v12-page{overflow-x:clip}
.v12-page :where(a,button,input,summary):focus-visible{outline:3px solid #f39a54;outline-offset:3px}
.v12-container{width:min(1160px,calc(100% - 42px));margin:0 auto}
.v12-kicker{display:inline-block;color:#b6153e;font-weight:900;font-size:11px;letter-spacing:1.5px;text-transform:uppercase}
.v12-parent .page-hero .lead{max-width:690px;line-height:1.55}
.v12-parent .page-hero h1{letter-spacing:-1.4px}
.v12-parent .service-hero-grid{align-items:center}
.v12-parent .service-hero-graphic img{width:100%;height:100%;object-fit:cover}
.v12-hero-meta{background:#f5f6f7;color:#39444e;border-top:1px solid #e4e9ec}
.v12-hero-meta>.container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:13px 0}
.v12-hero-meta span{font-size:12px;font-weight:750}
.v12-parent .sv8-decision{padding:52px 0 48px}
.v12-parent .sv8-decision h2{letter-spacing:-.025em}
.v12-parent .sv8-topic-grid{gap:13px}
.v12-parent .sv8-topic{border:1px solid #dfe5e8;border-top:3px solid var(--v12-red);background:#fff;box-shadow:0 6px 25px #1c2a3009}
.v12-parent .sv8-topic h3{font-size:17px;line-height:1.28}
.v12-parent .sv8-topic p{font-size:13px;line-height:1.58}
.v12-parent .v10-decision-footer{border-radius:2px}
.v12-parent .sp11-parent-directory{padding:47px 0;background:#f5f6f6}
.v12-parent .sp11-parent-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.v12-parent .sp11-parent-cards a{min-height:106px;padding:18px;transition:transform .2s,box-shadow .2s}
.v12-parent .sp11-parent-cards a:hover{transform:translateY(-3px);box-shadow:0 10px 20px #19253114}
.v12-parent .sp11-parent-cards a b{font-size:16px}
.v12-prep{padding:52px 0;background:#fff}
.v12-prep-head{margin:0 0 19px}
.v12-prep-head h2{font-weight:950;color:var(--v12-ink);font-size:clamp(25px,3.2vw,38px);line-height:1.13;letter-spacing:-.035em;margin:10px 0}
.v12-prep-head p{font-size:14px;color:var(--v12-muted);margin:0}
.v12-prep-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.v12-prep-card{border:1px solid #e1e7e9;border-radius:3px;padding:24px;background:#fafbfb}
.v12-prep-card h3{font-size:19px;margin:0 0 16px;font-weight:900;color:var(--v12-ink)}
.v12-prep-card ol{padding-left:21px;margin:0 0 20px;color:#3b4a53}
.v12-prep-card ol li{padding-left:5px;margin:0 0 12px;font-size:14px;line-height:1.6}
.v12-call-inline,.v12-small-call{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:13px 18px;background:var(--v12-red);color:#fff!important;text-decoration:none;font-weight:850;font-size:13px;white-space:nowrap}
.v12-call-inline:hover,.v12-small-call:hover{background:#7d0826;color:white}
.v12-faqs details{border-top:1px solid #dce2e5}
.v12-faqs details:last-child{border-bottom:1px solid #dce2e5}
.v12-faqs summary{padding:13px 3px;font-size:13px;font-weight:800;color:#293844;line-height:1.45;cursor:pointer;list-style:revert}
.v12-faqs details p{font-size:13px;line-height:1.6;color:#55616b;margin:0;padding:0 4px 15px}
.v12-catalog{padding:54px 0 70px;background:#f7f8f8;scroll-margin-top:20px}
.v12-catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.v12-catalog-heading h2{font-size:clamp(25px,3.1vw,36px);font-weight:950;color:var(--v12-ink);letter-spacing:-.025em;line-height:1.16;margin:10px 0}
.v12-catalog-heading p{margin:0;font-size:14px;color:#67747e;line-height:1.55}
.v12-popular{border:1px solid var(--v12-line);padding:18px 20px;background:#fff;margin:0 0 15px}
.v12-popular>strong{font-size:12px;letter-spacing:.5px;text-transform:uppercase;color:#38434b}
.v12-popular>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.v12-popular span{background:#f8f0f2;border:1px solid #ecd6dc;color:#78354a;padding:7px 10px;font-weight:700;font-size:12px}
.v12-catalog-shell{border:1px solid #d5dcdf;background:#fff}
.v12-catalog-shell>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 23px;cursor:pointer;font-size:17px;font-weight:900;color:#222d35;list-style:none}
.v12-catalog-shell>summary::-webkit-details-marker,.v12-topic-group summary::-webkit-details-marker{display:none}
.v12-catalog-shell>summary small{font-size:11px;font-weight:550;color:#65727c;display:block;margin-top:5px}
.v12-catalog-shell>summary>span:last-child{font-size:23px;color:var(--v12-red)}
.v12-catalog-shell[open]>summary>span:last-child{transform:rotate(45deg)}
.v12-catalog-content{border-top:1px solid var(--v12-line);padding:21px}
.v12-catalog-content>label{font-size:12px;font-weight:850;color:#2b3640;display:block;margin-bottom:9px}
.v12-catalog-content>input{padding:13px 14px;border:1px solid #bcc8cf;border-radius:3px;background:#fff;width:100%;font-size:15px;color:#1d2b36}
.v12-filter-result{font-size:12px;color:#53616a;margin:10px 0 17px;min-height:16px}
.v12-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.v12-topic-group{border:1px solid #dce2e5;background:#fdfdfd}
.v12-topic-group[hidden]{display:none}
.v12-topic-group>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;padding:16px 17px;color:#28333d}
.v12-topic-group summary b{font-size:13px;line-height:1.4}
.v12-topic-group summary>span{font-size:11px;color:#75818b;white-space:nowrap}
.v12-topic-group summary i{font-style:normal;font-size:18px;color:var(--v12-red);margin-left:7px}
.v12-topic-group[open] summary i{display:inline-block;transform:rotate(45deg)}
.v12-topic-group ul{padding:8px 20px 17px 37px;background:#fff;margin:0;border-top:1px solid #ebeff0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px}
.v12-topic-group li{font-size:12px;line-height:1.45;color:#42515a}
.v12-topic-group li[hidden]{display:none}
.v12-catalog-note{margin:15px 0 0;color:#6d777f;font-size:12px;line-height:1.6}
.v12-finalcta{background:#242d37;color:white;padding:47px 0}
.v12-finalcta-layout{display:flex;align-items:center;justify-content:space-between;gap:28px}
.v12-finalcta .v12-kicker{color:#ffbacb}
.v12-finalcta h2{color:white;font-size:clamp(25px,3.3vw,39px);letter-spacing:-.035em;margin:9px 0}
.v12-finalcta p{font-size:14px;color:#d2dbe1;line-height:1.55;max-width:600px;margin:0}
.v12-finalcta a{background:#b3103a;color:white;font-weight:900;padding:17px 26px;white-space:nowrap;text-decoration:none;font-size:14px}
.v12-finalcta a:hover{background:#d01c49}
/* Five newer parent pages use the alternate photo hero */
.v12-parent .sv7-subhero-enhanced{position:relative}
.v12-parent .v12-alternate-actions{display:flex;gap:12px;flex-wrap:wrap;padding:8px 0 12px}
.v12-parent .v12-alternate-actions a{display:inline-flex;padding:14px 19px;background:var(--v12-red);color:white;font-size:13px;font-weight:900;text-decoration:none}
.v12-parent .v12-alternate-actions a:nth-child(2){background:transparent;border:1px solid #aeb5bb;color:#253039}
.v12-parent .v12-alternate-actions a:hover{filter:brightness(1.1)}
/* Specialist pages: compact clear next actions */
.v12-child .sp11-hero-grid{min-height:390px;gap:25px}
.v12-child .sp11-hero-copy{padding:20px 0 39px}
.v12-child .sp11-hero h1{font-size:clamp(37px,4.2vw,61px);margin:13px 0 18px}
.v12-child .sp11-intro{font-size:15px;line-height:1.65;max-width:570px}
.v12-child .sp11-hero-actions{margin-top:20px}
.v12-child .sp11-hero-micro{margin-top:12px;font-size:11px}
.v12-child .sp11-photo{min-height:375px}
.v12-child .sp11-breadcrumbs{padding:6px 0 20px}
.v12-child .sp11-section{padding:44px 0}
.v12-child .sp11-heading{margin-bottom:20px}
.v12-child .sp11-heading h2,.v12-child .sp11-decision h2,.v12-child .sp11-faq-layout h2{font-size:clamp(27px,3vw,37px);margin:8px 0}
.v12-child .sp11-heading p,.v12-child .sp11-faq-layout>div>p{font-size:13px;line-height:1.6}
.v12-child .sp11-signal{padding:20px 22px}
.v12-child .sp11-signal p{font-size:13px;line-height:1.65;margin:10px 0 0}
.v12-child .sp11-caution{padding:14px 20px;margin-top:17px}
.v12-child .sp11-scope{padding:45px 0}
.v12-child .sp11-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.v12-child .sp11-step{padding:18px}
.v12-child .sp11-step h3{font-size:17px;margin:10px 0 8px}
.v12-child .sp11-step p{font-size:12px;line-height:1.6}
.v12-child .sp11-decision-grid{gap:25px}
.v12-child .sp11-decision-copy p{font-size:14px;line-height:1.6}
.v12-child .sp11-ask{padding:25px}
.v12-child .sp11-ask h3{font-size:22px;margin-bottom:13px}
.v12-child .sp11-ask ol{font-size:13px;line-height:1.5}
.v12-child .sp11-faqs{padding:42px 0}
.v12-child .sp11-faq summary{font-size:15px;padding:16px 0}
.v12-child .sp11-faq p{line-height:1.6;font-size:13px;padding-bottom:17px}
.v12-child .sp11-related{padding:39px 0}
.v12-child .sp11-end{padding:40px 0}
.v12-child .sp11-end p{font-size:13px}
.v12-child .sp11-related-links a{font-size:12px}
/* Consistent mobile call controls on all 42 conversion landing pages */
.v12-mobile-bar{display:none}
@media(max-width:1080px){.v12-parent .sp11-parent-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.v12-child .sp11-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .v12-container{width:calc(100% - 34px)}
 .v12-hero-meta>.container{justify-content:flex-start;gap:9px 18px}
 .v12-hero-meta span{font-size:10px}
 .v12-parent .sv8-decision{padding:35px 0}
 .v12-parent .sp11-parent-directory{padding:36px 0}
 .v12-parent .sp11-parent-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .v12-parent .sp11-parent-cards a{padding:14px;min-height:112px}.v12-parent .sp11-parent-cards a b{font-size:13px}
 .v12-prep{padding:38px 0}.v12-prep-grid{grid-template-columns:1fr;gap:10px}.v12-prep-card{padding:19px}
 .v12-catalog{padding:38px 0 45px}.v12-catalog-heading{align-items:start;flex-direction:column;gap:14px}
 .v12-popular{padding:15px}.v12-popular span{font-size:11px}
 .v12-catalog-shell>summary{padding:17px;font-size:15px}.v12-catalog-content{padding:14px}
 .v12-topic-grid{grid-template-columns:1fr;gap:9px}.v12-topic-group ul{grid-template-columns:1fr}
 .v12-finalcta-layout{align-items:stretch;flex-direction:column;gap:18px}.v12-finalcta a{text-align:center}
 .v12-child .sp11-hero-grid{grid-template-columns:1fr;gap:0}.v12-child .sp11-hero-copy{padding:20px 0 30px}
 .v12-child .sp11-photo{min-height:205px;margin:0 -17px}.v12-child .sp11-steps{grid-template-columns:1fr 1fr;gap:9px}
 .v12-child .sp11-step{padding:15px}.v12-child .sp11-step h3{font-size:15px}.v12-child .sp11-step p{font-size:12px}
 .v12-child .sp11-section{padding:32px 0}.v12-child .sp11-caution{grid-template-columns:1fr}
 .v12-child .sp11-end{padding:35px 0}
 .v12-mobile-bar{position:fixed;bottom:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px calc(10px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -6px 30px #0b141f30;border-top:1px solid #e2e5e8}
 .v12-mobile-bar>div{display:flex;flex-direction:column;min-width:0;gap:1px;max-width:40%}.v12-mobile-bar>div span{color:#8a1739;font-weight:950;font-size:9px;letter-spacing:1px}.v12-mobile-bar>div strong{font-size:12px;color:#26333c;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .v12-mobile-bar>a{display:inline-flex;align-items:center;justify-content:center;padding:14px 15px;background:#97092c;color:#fff!important;font-size:12px;font-weight:900;text-decoration:none;white-space:nowrap}
 .v12-parent .v3-footer,.v12-child .v3-footer{padding-bottom:90px}
 .v12-home .v3-hero h1{font-size:clamp(42px,10vw,65px);white-space:normal}
}
@media(max-width:380px){.v12-mobile-bar>a{font-size:11px;padding:13px 10px}.v12-mobile-bar>div strong{font-size:11px}.v12-parent .sp11-parent-cards{grid-template-columns:1fr 1fr}}
/* Critical accessibility correction: retain visible text/background contrast on legacy hero CTAs. */
.v12-parent .page-hero .hero-actions a.btn-primary{background:#a20c31!important;color:#fff!important;border:1px solid #a20c31!important;box-shadow:0 6px 18px #5f092321}
.v12-parent .page-hero .hero-actions a.btn-primary:hover{background:#7d0927!important;color:white!important}
.v12-parent .page-hero .hero-actions a.btn-secondary{background:white!important;color:#23313c!important;border:1px solid #bbc5c9!important}
.v12-parent .v12-alternate-actions a:nth-child(2){color:#fff!important;border-color:#88929c!important}
.v12-page .v3-desktopnav a,.v12-page .v3-navcta,.v12-page .v3-mobilemenu a{text-decoration:none}
