/*
Theme Name: OMR
Theme URI: https://orangemoldremediation.com/
Author: Orange Mold Remediation Help
Description: Lightweight classic theme for a call-only mold remediation referral site. No jQuery, no page builder, no block theme. Critical CSS (assets/critical.css) is inlined in the head by inc/seo.php; this file is the ONE linked stylesheet (the rest).
Version: 1.4.3
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: omr
*/
html{-webkit-text-size-adjust:100%}
h3,h4,h5{font-family:inherit;color:var(--ink);margin:0 0 12px;letter-spacing:-.01em}
h2{font-size:26px;line-height:1.2;font-weight:700;margin-top:0}
h3{font-size:22px;line-height:1.25;font-weight:600;margin-top:24px}
h4{font-size:20px;line-height:1.3;font-weight:500;margin-top:20px}
h5{font-size:17px;line-height:1.4;font-weight:500;margin-top:16px}
ul,ol,dl,table,figure,details{margin:0 0 16px}
a{text-underline-offset:2px}
:focus-visible{outline:3px solid var(--call);outline-offset:2px}
.skip{background:#fff;padding:8px 12px;z-index:50}
.skip:focus{left:8px;top:8px}
/* 1.4.0 TC-19: full-width bands (gutters from --g in critical.css); running text keeps a ~70ch measure, components use the full container */
main section p,main section li,main section dd{max-width:70ch}
.levers li,.areas li,.tiles li,.jump li,.pick p,.pick li{max-width:none}
header.top{gap:4px 16px}
/* header and menu (details/summary, no JS) */
header.top{position:relative;gap:4px 12px}
header.top .brand{display:block;line-height:0;padding:8px 0}
header.top img{max-width:100%}
header.top nav{margin-left:auto}
header.top summary{display:block;list-style:none;min-height:48px;line-height:44px;padding:0 16px;border:2px solid var(--acc);border-radius:var(--r);font-weight:700;cursor:pointer;color:var(--acc)}
header.top summary::-webkit-details-marker{display:none}
header.top details[open] summary{background:var(--acc);color:#fff}
header.top ul{list-style:none;margin:0;padding:0}
header.top details[open] ul{position:absolute;left:0;right:0;top:100%;z-index:20;background:#fff;padding:4px var(--g) 8px;border-bottom:3px solid var(--acc)}
header.top li a{display:block;min-height:48px;line-height:48px;text-decoration:none;font-weight:600}
nav.crumbs{font-size:15px;color:var(--mut);padding-top:6px;padding-bottom:0}
nav.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
nav.crumbs li+li::before{content:"/";margin:0 8px;color:var(--mut)}
nav.crumbs a{display:inline-block;padding:10px 0}
.opener h1{margin-bottom:12px}
.opener{margin:0 0 8px}
.legal{margin:0 0 16px}
.pic img,.pic picture{display:block}
.pic img{width:100%;height:auto;border-radius:var(--r)}
/* click-to-call: icon and secondary variants */
.ringer-s{margin:12px 0 8px}
.ringer>a,.ringer-s>a{padding-left:46px;background:var(--call) no-repeat 16px center/22px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M6.6 10.8a15 15 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25 11.4 11.4 0 0 0 3.6.6 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.25.2 2.45.6 3.6a1 1 0 0 1-.25 1z'/%3E%3C/svg%3E")}
.ringer-s>a{display:inline-block;min-height:48px;padding-top:12px;padding-bottom:12px;padding-right:20px;border-radius:var(--r);color:#fff;font-weight:700;line-height:1.3;text-decoration:none}
.ringer-s span{display:inline-block;margin:6px 0 0 12px;font-size:20px;font-weight:800;white-space:nowrap}
.ringer-s small{display:block;margin-top:6px;font-size:14px;line-height:1.4;color:var(--mut)}
.ringer-s{padding:12px 0;border-top:2px dotted var(--line)}
/* sticky call bar */
.dock{display:flex;flex-wrap:wrap;justify-content:center}
.dock>a{flex:1 1 100%}
.dock small{flex:1 1 100%}
/* sections: short accent rule under the H2 (no hr, no full-width border) */
article>section:not(.opener){margin:0;padding-top:40px;padding-bottom:24px}
article>section:nth-of-type(even){background:var(--band)}
article>p{margin:0;padding-top:24px;padding-bottom:32px}
table{background:#fff}
article section:not(.opener)>h2::after{content:"";display:block;width:56px;height:4px;margin-top:8px;background:var(--call)}
.supplementary{margin:0;padding-top:32px;padding-bottom:24px;background:var(--band);border-top:3px solid var(--acc)}
.fresh{font-size:14px;color:var(--mut);margin:16px 0 0}
.jump{list-style:none;padding:12px 16px;margin:0 0 16px;background:#fff;border:1px solid var(--line);border-radius:var(--r);display:flex;flex-wrap:wrap;gap:0 16px}
.jump a{display:inline-block;padding:10px 0}
/* components */
.stage{list-style:none;padding:0;counter-reset:s}
.stage li{counter-increment:s;position:relative;padding:2px 0 14px 48px}
.stage li::before{content:counter(s);position:absolute;left:0;top:0;width:32px;height:32px;border-radius:4px;background:var(--acc);color:#fff;font-weight:700;text-align:center;line-height:32px}
.spots{list-style:none;padding:0}
.spots li{position:relative;padding:0 0 8px 28px}
.spots li::before{content:"";position:absolute;left:4px;top:10px;width:10px;height:10px;border-radius:50%;background:var(--call)}
.span,.season{padding-left:22px;border-left:4px solid var(--acc)}
.span li,.season li{padding-bottom:8px}
table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.45}
caption{text-align:left;font-weight:700;padding:0 0 8px}
th,td{border:1px solid var(--line);padding:8px;text-align:left;vertical-align:top;overflow-wrap:break-word}
th{background:var(--band);font-weight:700}
.levers,.areas,.tiles{list-style:none;padding:0;display:grid;grid-template-columns:1fr;gap:12px}
.levers li,.areas li,.tiles li{border:1px solid var(--line);border-top:4px solid var(--acc);border-radius:var(--r);background:#fff;padding:12px 14px}
.levers b,.areas b{display:block}
.levers small{display:block;color:var(--mut);font-size:15px}
.areas a,.tiles a{display:block;font-weight:700;text-decoration:none}
.tiles span,.areas span{display:block;font-size:15px;color:var(--mut)}
.brief,.local{border:1px solid var(--line);border-left:5px solid var(--acc);border-radius:var(--r);background:#fff;padding:12px 14px}
.brief dt,.local dt{font-size:14px;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.04em}
.brief dd,.local dd{margin:0 0 10px}
.caution{background:var(--warn);color:var(--warni);border-left:5px solid var(--call);border-radius:var(--r);padding:12px 14px}
.ref{font-size:15px;color:var(--mut)}
.plan{margin:0 0 16px}
.more{list-style:none;padding:0}
.more li a{display:inline-block;padding:8px 0}
main details:not(.card){border:1px solid var(--line);border-left:5px solid var(--acc);border-radius:var(--r);background:#fff}
main details:not(.card)>summary{cursor:pointer;min-height:48px;padding:12px 14px;font-weight:600}
main details:not(.card)>p{margin:0;padding:0 14px 14px}
/* 1.4.0 TC-20: collapsible section cards (native details, no JS); the heading stays inside the summary */
.card{margin:0 0 16px;padding:0 16px 8px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.card>summary{display:flex;align-items:center;gap:16px;min-height:48px;margin:0 -16px;padding:12px 16px;list-style:none;cursor:pointer;border-radius:var(--r)}
.card>summary::-webkit-details-marker{display:none}
.card>summary>*{margin:0;flex:1 1 auto}
.card>summary::after{content:"";flex:0 0 auto;width:12px;height:12px;margin:0 4px 6px;border-right:3px solid var(--acc);border-bottom:3px solid var(--acc);transform:rotate(45deg)}
.card[open]>summary::after{margin:6px 4px 0;transform:rotate(-135deg)}
.card>summary:hover{background:var(--paper)}
.card>summary:hover>*{color:var(--acc)}
.card>summary:focus-visible{outline:3px solid var(--call);outline-offset:-3px}
.card[open]>summary{margin-bottom:12px;border-bottom:1px solid var(--line);border-radius:var(--r) var(--r) 0 0}
.supplementary .card{border-top:3px solid var(--acc)}
/* tabs: CSS only, all panel text in the HTML */
.pick{margin:0 0 16px}
.pick input{position:absolute;opacity:0;width:1px;height:1px}
.pick label{display:block;min-height:48px;padding:12px 14px;border:1px solid var(--line);background:#fff;font-weight:600;cursor:pointer}
.pick div{display:none;padding:12px 14px 0;border:1px solid var(--line);border-top:0}
.pick input:checked+label{background:var(--acc);color:#fff;border-color:var(--acc)}
.pick input:checked+label+div{display:block}
.pick input:focus-visible+label{outline:3px solid var(--call)}
/* footer: grid, number and links side by side on wide screens, disclaimer full width under them */
body>footer{display:grid;grid-template-columns:1fr;gap:0 24px;background:#fff;border-top:3px solid var(--acc);padding-top:20px;padding-bottom:20px;font-size:15px;color:var(--mut)}
body>footer address{font-style:normal;margin:0 0 12px}
body>footer address a{display:inline-block;padding:12px 0;font-size:19px;font-weight:800;color:var(--call)}
body>footer #disclaimer{font-size:14px;line-height:1.45}
body>footer ul{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-wrap:wrap;gap:0 18px;align-content:flex-start}
body>footer li a{display:inline-block;padding:12px 0}
body>footer p:last-child{margin:0}
@media(min-width:768px){
header.top nav{flex:1 1 100%;margin-left:0}
.levers,.areas,.tiles{grid-template-columns:1fr 1fr}
.dock>a{flex:0 0 auto;padding:0 12px}
.dock small{flex:0 1 auto;align-self:center}
body>footer{grid-template-columns:1fr 1fr}
body>footer #disclaimer,body>footer>p:last-child{grid-column:1/-1}
body>footer ul{justify-content:flex-end}
}
@media(min-width:1024px){header.top nav{flex:0 1 auto;margin-left:auto}}
@media(min-width:768px){@supports selector(::details-content){
header.top summary{display:none}
header.top details::details-content{content-visibility:visible;display:block}
header.top ul,header.top details[open] ul{position:static;display:flex;flex-wrap:wrap;gap:0 22px;padding:0;background:none;border:0}
}}
@media(max-width:520px){table{font-size:14px;line-height:1.4}th,td{padding:6px;overflow-wrap:break-word;hyphens:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.wide{overflow-x:auto;margin:0 0 16px}.wide:focus{outline:2px solid currentColor;outline-offset:2px}.wide>table{min-width:560px;margin:0}
.wide td:nth-child(2),.wide td:nth-last-child(-n+2),.wide th:nth-last-child(-n+2){white-space:nowrap}
/* 1.4.1 TC-24: collapsed sections stack as a compact card list (no band per card), smaller card titles */
article>section:has(>details.card){padding-top:6px;padding-bottom:6px;background:transparent}
article>section:not(:has(>details.card))+section:has(>details.card){padding-top:32px}
article>section:has(>details.card)+section:not(:has(>details.card)){margin-top:24px}
.card>summary>h2{font-size:20px;line-height:1.3}
.card>summary>h2::after{display:none}
.card>summary>h3{font-size:18px;line-height:1.3}
/* 1.4.3 TC-25 (F-1): an H3 inside a folded H2 card stays below the card H2 (20px phone, 23px desktop) */
article .card h3{font-size:17px;line-height:1.3}
@media(min-width:960px){.card>summary>h2{font-size:23px}article .card h3{font-size:19px}}
