/* Sunpenny Solar: theme.css (generated from config.js, layout daybreak, Runway style) */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#f8f7f5;color:#261b07;font:400 17px/1.55 system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;-webkit-font-smoothing:antialiased}
svg{max-width:100%}
h1,h2,h3,h4{font-weight:600;margin:0;text-wrap:balance;color:#261b07}
h1{line-height:1.04;letter-spacing:-0.022em}
h2{line-height:1.12;letter-spacing:-0.02em}
h3{line-height:1.25;letter-spacing:-0.01em;font-size:1.25rem}
p{margin:0 0 1rem}
ul,ol{margin:0;padding:0}
a{color:#261b07;text-decoration:underline;text-decoration-color:#f9a600;text-decoration-thickness:2px;text-underline-offset:0.2em}
a:hover{text-decoration-color:#261b07}
:focus-visible{outline:3px solid #261b07;outline-offset:2px}
.db-strip :focus-visible,.db-footer :focus-visible{outline-color:#f9a600}
.db-skip{position:absolute;left:-9999px;top:0;z-index:100;background:#261b07;color:#ffffff;padding:0.75rem 1rem;border-radius:0 0 8px 0}
.db-skip:hover{background:#61594a;color:#ffffff}
.db-skip:focus{left:0}
.db-wrap{max-width:1264px;margin:0 auto;padding:0 32px}
.db-num{font-variant-numeric:tabular-nums}

/* demo strip: the Runway announcement banner */
.db-strip{background:#261b07;color:#f8f7f5;font-size:1rem;line-height:1.45;padding:0.6rem 16px;text-align:center}
.db-strip a{color:#f8da9d;text-decoration-color:#f9a600}
.db-strip a:hover{color:#f8f7f5}

/* header */
.db-header{position:relative;z-index:5;background:#f8f7f5;border-bottom:1px solid #e3dfd5}
.db-header__in{display:flex;align-items:center;gap:8px;min-height:72px}
.db-brand{display:inline-flex;align-items:center;gap:10px;min-width:0;min-height:44px;margin-right:auto;color:#261b07;text-decoration:none;font-weight:600;font-size:1.25rem;letter-spacing:-0.015em;white-space:nowrap}
.db-brand svg{width:32px;height:24px;flex:none}
.db-brand__short{display:none;overflow:hidden;text-overflow:ellipsis}
.db-nav{display:flex;gap:4px;margin-right:12px}
.db-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;color:#261b07;text-decoration:none;font-size:1rem;border-radius:8px}
.db-nav a:hover{background:#e3dfd5}
.db-nav a[aria-current]{text-decoration:underline;text-decoration-color:#f9a600;text-decoration-thickness:3px;text-underline-offset:0.45em}
.db-tel{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 10px;color:#261b07;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap;text-decoration:none;border-radius:8px}
.db-tel:hover{background:#e3dfd5}
.db-tel svg{width:16px;height:16px;flex:none}
.db-menu{display:none;position:static}
.db-menu summary{list-style:none;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid #261b07;border-radius:8px;background:#ffffff;color:#261b07;font-weight:500;cursor:pointer;box-shadow:inset 0 2px 4px rgb(255 255 255 / 0.56), 0 4px 8px rgb(38 27 7 / 0.06), 0 1px 2px rgb(38 27 7 / 0.36)}
.db-menu summary::-webkit-details-marker{display:none}
.db-menu summary::before{content:"";width:14px;height:10px;background:linear-gradient(#261b07, #261b07) top / 100% 2px no-repeat, linear-gradient(#261b07, #261b07) center / 100% 2px no-repeat, linear-gradient(#261b07, #261b07) bottom / 100% 2px no-repeat}
.db-menu[open] summary{background:#e3dfd5}
.db-menu__panel{position:absolute;left:16px;right:16px;top:100%;margin-top:8px;background:#ffffff;border:1px solid #e3dfd5;border-radius:8px;padding:8px;display:flex;flex-direction:column;box-shadow:0 12px 24px rgb(38 27 7 / 0.12)}
.db-menu__panel a{display:flex;align-items:center;min-height:48px;padding:0 12px;color:#261b07;text-decoration:none;border-radius:8px;font-size:1.0625rem}
.db-menu__panel a:hover,.db-menu__panel a[aria-current]{background:#f8f7f5}
.db-menu__panel a[aria-current]{font-weight:600}
.db-menu__panel .db-btn{margin-top:8px;justify-content:center}

/* buttons */
.db-btn,.qform button[type="submit"]{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border:1px solid rgb(38 27 7 / 0.2);border-radius:8px;background-color:#f9a600;color:#261b07;font:500 1rem/1.2 system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;text-decoration:none;cursor:pointer;box-shadow:inset 0 2px 4px rgb(255 255 255 / 0.56), 0 4px 8px rgb(38 27 7 / 0.06), 0 1px 2px rgb(38 27 7 / 0.36);white-space:nowrap}
.db-btn:hover,.qform button[type="submit"]:hover{background-image:linear-gradient(rgb(38 27 7 / 0.1), rgb(38 27 7 / 0.1));color:#261b07}
.db-btn--sm{min-height:44px;padding:0 14px;font-size:0.9375rem}
.db-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border:1px solid #261b07;border-radius:8px;background:#ffffff;color:#261b07;font-weight:500;text-decoration:none;box-shadow:inset 0 2px 4px rgb(255 255 255 / 0.56), 0 4px 8px rgb(38 27 7 / 0.06), 0 1px 2px rgb(38 27 7 / 0.36);white-space:nowrap}
.db-ghost:hover{background:#e3dfd5}
.db-ghost svg{width:16px;height:16px}
.db-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* tags */
.db-tag{display:inline-block;margin:0;padding:4px 8px;border-radius:4px;background:#f8da9d;color:#261b07;font-size:0.875rem;line-height:1.3;font-weight:500;letter-spacing:0;vertical-align:middle}
.db-tag--line{background:#ffffff;border:1px solid #e3dfd5;color:#61594a}

/* surfaces and cards */
.db-panel{background:#ffffff;border:1px solid #e3dfd5;border-radius:8px;box-shadow:0 4px 8px rgb(38 27 7 / 0.06)}
.db-card{position:relative;background:#ffffff;border:1px solid #e3dfd5;border-radius:8px;box-shadow:0 4px 8px rgb(38 27 7 / 0.06);padding:24px}
.db-card h3 a{color:#261b07;text-decoration:none}
.db-card h3 a::after{content:"";position:absolute;inset:0;border-radius:8px}
.db-card h3 a:hover{text-decoration:underline;text-decoration-color:#f9a600}
.db-card:hover{border-color:#61594a}
.db-card p{margin:0;color:#61594a}

/* hero */
.db-hero{padding:56px 0 72px}
.db-hero__grid{display:grid;grid-template-columns:7fr 5fr;grid-template-areas:"h1 lede" "h1 act" "h1 pts" "est est";column-gap:56px;row-gap:20px}
.db-hero__h1{grid-area:h1;align-self:start;font-size:clamp(2.375rem, 4.4vw, 4rem);max-width:15ch}
.db-hero__eyebrow{display:table;margin-bottom:20px}
.db-hero__lede{grid-area:lede;align-self:start;margin:0;font-size:1.1875rem;line-height:1.5;color:#61594a}
.db-hero__actions{grid-area:act}
.db-hero__pts{grid-area:pts;align-self:start}
.db-points{list-style:none;display:grid;gap:6px}
.db-hero__lic{margin:16px 0 0}
.db-points li,.db-ticks li{position:relative;padding-left:28px}
.db-points li::before,.db-ticks li::before{content:"";position:absolute;left:2px;top:0.4em;width:14px;height:8px;border-left:2px solid #261b07;border-bottom:2px solid #261b07;transform:rotate(-45deg)}
.db-est{grid-area:est;margin-top:28px;padding:32px;display:grid;grid-template-columns:5fr 7fr;column-gap:40px;row-gap:20px;align-items:start}
.db-est__title{grid-column:1 / -1;display:flex;align-items:center;gap:12px;font-size:1.25rem}
.db-est__title svg{width:32px;height:24px;flex:none}
.db-tiles{grid-column:1 / -1;list-style:none;display:grid;grid-template-columns:repeat(3, 1fr);gap:16px}
.db-tile{background:#f8f7f5;border-radius:8px;padding:24px;display:flex;flex-direction:column;gap:10px}
.db-tile__l{display:flex;align-items:center;gap:8px;font-size:0.9375rem;color:#61594a}
.db-tile__l::before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:#f9a600;border:1px solid #261b07}
.db-tile__v{font-size:clamp(1.875rem, 3.2vw, 2.75rem);font-weight:600;line-height:1.05;letter-spacing:-0.02em;font-variant-numeric:tabular-nums}
.db-fig .db-word{font-size:0.72em;letter-spacing:-0.01em}
.db-fig .db-unit{font-size:0.5em;font-weight:500;letter-spacing:0;color:#61594a}
.db-est__note{grid-column:1 / -1;margin:0;font-size:1rem;color:#61594a;max-width:68ch}
.db-chart{grid-column:1 / -1;margin:0;padding-top:24px;border-top:1px solid #e3dfd5;display:grid;grid-template-columns:5fr 7fr;column-gap:40px;row-gap:16px;align-items:center}
.db-chart__cap{margin:0}
.db-chart__kicker{display:block;margin-bottom:8px;font-weight:500}
.db-chart__text{display:block;color:#61594a;max-width:52ch}
.db-bars{list-style:none;display:grid;gap:14px}
.db-bar{display:grid;grid-template-columns:minmax(5.5rem, max-content) 1fr;column-gap:16px;row-gap:6px;align-items:center}
.db-bar__l{font-weight:500}
.db-bar__track{display:flex;align-items:center;gap:12px;min-width:0}
.db-bar__fill{display:block;height:36px;min-width:8px;border:1px solid #261b07;border-radius:4px;background:#f9a600}
.db-bar:nth-child(even) .db-bar__fill{background:#f8da9d}
.db-bar__v{flex:none;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}

/* inner page head */
.db-pagehead{padding:48px 0 48px;border-bottom:1px solid #e3dfd5}
.db-pagehead__grid{display:grid;grid-template-columns:7fr 5fr;column-gap:56px;row-gap:24px;align-items:end}
.db-pagehead h1{font-size:clamp(2.25rem, 4vw, 3.5rem);max-width:20ch;margin-top:16px}
.db-pagehead__lede{margin:20px 0 0;font-size:1.1875rem;line-height:1.5;color:#61594a;max-width:60ch}
.db-pagehead__side .db-pagehead__lede{margin:0}
.db-crumbs{margin:0 0 4px;font-size:0.9375rem}
.db-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:0 8px}
.db-crumbs li{display:flex;align-items:center;gap:8px;color:#61594a}
.db-crumbs li+li::before{content:"/";color:#61594a}
.db-crumbs a{display:inline-flex;align-items:center;min-height:44px;color:#261b07}
.db-meta{margin:20px 0 0;color:#61594a;font-variant-numeric:tabular-nums}
.db-pricecard{padding:24px;display:grid;gap:16px}
.db-pricecard .db-tile{padding:20px}
.db-pricecard .db-actions{gap:10px}

/* sections */
.db-section{padding:88px 0}
.db-section--tight{padding-top:24px}
.db-sh{max-width:46rem;margin:0 0 40px}
.db-sh--center{margin-left:auto;margin-right:auto;text-align:center}
.db-sh h2,.db-h2{font-size:clamp(1.875rem, 3vw, 2.5rem)}
.db-sh .db-tag{margin-bottom:16px}
.db-sh p{margin:16px 0 0;font-size:1.125rem;color:#61594a;max-width:60ch}
.db-sh--center p{margin-left:auto;margin-right:auto}
.db-shrow{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:16px 40px;margin-bottom:40px}
.db-shrow .db-sh{margin:0}
.db-more{display:inline-flex;align-items:center;min-height:44px;font-weight:500}
.db-split{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:start}
.db-split .db-sh{margin-bottom:24px}
.db-grid{list-style:none;display:grid;gap:24px;grid-template-columns:repeat(3, 1fr)}
.db-prose{max-width:68ch}
.db-prose p{max-width:68ch}
.db-prose h2{font-size:clamp(1.5rem, 2.4vw, 1.875rem);margin:40px 0 12px}
.db-prose ul{margin:0 0 1rem;padding-left:1.25rem}
.db-prose li{margin-bottom:0.5rem}
.db-prose li::marker{color:#61594a}

/* trust row */
.db-trust{list-style:none;display:grid;grid-template-columns:repeat(4, 1fr);gap:32px}
.db-trust li{padding-top:20px;border-top:1px solid #261b07}
.db-trust svg{display:block;width:20px;height:20px;margin-bottom:16px}
.db-trust h3{font-size:1.125rem;margin-bottom:8px}
.db-trust p{margin:0;color:#61594a}
.db-licence{margin:20px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;color:#61594a}
.db-sh .db-licence .db-tag{margin:0}

/* pricing: one aligned comparison table */
.db-compare{display:grid;grid-template-columns:repeat(3, 1fr);overflow:hidden}
.db-tier{position:relative;padding:28px 28px 20px;border-left:1px solid #e3dfd5}
.db-tier:first-child{border-left:0}
.db-tier--pick{box-shadow:inset 0 0 0 2px #261b07;border-radius:8px;border-left-color:transparent}
.db-tier--pick+.db-tier{border-left-color:transparent}
.db-tier__head{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:12px}
.db-tier__head h3{font-size:1.25rem}
.db-tier__price{margin:16px 0 0;font-size:clamp(2.25rem, 3.6vw, 3rem);font-weight:600;line-height:1.05;letter-spacing:-0.02em}
.db-tier__unit{margin:6px 0 0;color:#61594a}
.db-tier__note{margin:16px 0 8px;color:#261b07}
.db-tier__feats{list-style:none}
.db-tier__feats li{position:relative;padding:12px 0 12px 28px;border-top:1px solid #e3dfd5}
.db-tier__feats li::before{content:"";position:absolute;left:2px;top:1.15em;width:12px;height:7px;border-left:2px solid #261b07;border-bottom:2px solid #261b07;transform:rotate(-45deg)}
.db-pnote{margin:28px 0 0;max-width:68ch;font-size:1.125rem;line-height:1.55}
.db-tablewrap{overflow-x:auto;border:1px solid #e3dfd5;border-radius:8px;background:#ffffff;box-shadow:0 4px 8px rgb(38 27 7 / 0.06)}
.db-table{width:100%;border-collapse:collapse;min-width:30rem}
.db-table th,.db-table td{padding:14px 20px;text-align:left;border-bottom:1px solid #e3dfd5;vertical-align:middle}
.db-table thead th{font-size:0.875rem;font-weight:500;color:#61594a;background:#f8f7f5}
.db-table tbody tr:last-child th,.db-table tbody tr:last-child td{border-bottom:0}
.db-table tbody th{font-weight:500}
.db-table tbody th a{display:inline-flex;align-items:center;min-height:44px}
.db-table td{text-align:right;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.db-table thead th:last-child{text-align:right}

/* ledger list: steps and process */
.db-ledger{list-style:none;padding:8px 28px}
.db-ledger li{display:grid;grid-template-columns:44px 1fr;column-gap:20px;padding:22px 0;border-top:1px solid #e3dfd5}
.db-ledger li:first-child{border-top:0}
.db-ledger__n{grid-row:span 2;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px;background:#f8da9d;font-weight:600;font-variant-numeric:tabular-nums}
.db-ledger h3{font-size:1.1875rem;margin:0 0 6px;align-self:center}
.db-ledger p{margin:0;color:#61594a;max-width:60ch}

/* service and post cards */
.db-svc{display:flex;flex-direction:column;gap:12px;padding:28px}
.db-svc__price{margin:0;font-size:1.875rem;font-weight:600;line-height:1.1;letter-spacing:-0.02em;color:#261b07}
.db-card .db-svc__price{color:#261b07}
.db-svc h3{font-size:1.1875rem}
.db-post{display:flex;flex-direction:column;gap:12px;padding:28px}
.db-post__meta{margin:0;font-size:1rem;font-variant-numeric:tabular-nums}
.db-card .db-post__meta{color:#61594a}

/* testimonials */
.db-quotes{display:grid;gap:24px;grid-template-columns:repeat(auto-fit, minmax(18rem, 1fr))}
.db-quote{margin:0;display:flex;flex-direction:column;gap:20px;padding:28px}
.db-quote blockquote{margin:0}
.db-quote blockquote p{margin:0;font-size:1.125rem;line-height:1.5;color:#261b07}
.db-quote figcaption{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding-top:16px;border-top:1px solid #e3dfd5}
.db-quote cite{font-style:normal;font-weight:600}
.db-quote figcaption span{color:#61594a}

/* faq */
.db-faq{padding:4px 28px}
.db-faq details{border-top:1px solid #e3dfd5}
.db-faq details:first-child{border-top:0}
.db-faq summary{display:flex;align-items:center;gap:16px;min-height:44px;padding:20px 0;cursor:pointer;list-style:none;font-weight:500;font-size:1.0625rem}
.db-faq summary::-webkit-details-marker{display:none}
.db-faq summary::after{content:"";flex:none;margin-left:auto;width:28px;height:28px;border:1px solid #e3dfd5;border-radius:8px;background:linear-gradient(#261b07, #261b07) center / 12px 2px no-repeat, linear-gradient(#261b07, #261b07) center / 2px 12px no-repeat, #f8f7f5}
.db-faq details[open] summary::after{background:linear-gradient(#261b07, #261b07) center / 12px 2px no-repeat, #f8da9d;border-color:#f8da9d}
.db-faq summary:hover::after{border-color:#61594a}
.db-faq__a{padding:0 44px 22px 0;max-width:66ch}
.db-faq__a p{margin:0;color:#61594a}

/* areas and hours */
.db-where{display:grid;grid-template-columns:7fr 5fr;gap:0;overflow:hidden}
.db-where>div{padding:32px}
.db-where>div+div{border-left:1px solid #e3dfd5;background:#f8f7f5}
.db-h3{font-size:1.125rem;margin-bottom:16px}
.db-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.db-chips li{padding:6px 12px;border:1px solid #e3dfd5;border-radius:4px;background:#f8f7f5;font-size:1rem}
.db-where .db-chips li{background:#ffffff}
.db-hours{margin:0}
.db-hours div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:12px 0;border-bottom:1px solid #e3dfd5}
.db-hours div:first-child{border-top:1px solid #e3dfd5}
.db-hours dt{font-weight:500}
.db-hours dd{margin:0;font-variant-numeric:tabular-nums}
.db-hnote{margin:16px 0 0;color:#61594a}

/* closing CTA */
.db-cta{padding:0 0 88px}
.db-cta__panel{padding:56px 32px;text-align:center;display:flex;flex-direction:column;align-items:center}
.db-cta__panel>svg{width:44px;height:33px;margin-bottom:20px}
.db-cta h2{font-size:clamp(1.875rem, 3.4vw, 2.75rem);max-width:22ch}
.db-cta p{margin:16px 0 28px;max-width:56ch;font-size:1.125rem;color:#61594a}
.db-cta .db-actions{justify-content:center}

/* service page */
.db-two{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.db-two>.db-panel{padding:32px}
.db-two .db-h2{font-size:clamp(1.5rem, 2.2vw, 1.75rem)}
.db-ticks{list-style:none;display:grid;gap:12px;margin-top:20px}
.db-others{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.db-others a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid #e3dfd5;border-radius:8px;background:#ffffff;color:#261b07;text-decoration:none;font-weight:500;box-shadow:0 4px 8px rgb(38 27 7 / 0.06)}
.db-others a:hover{border-color:#261b07}

/* about */
.db-aside{padding:28px;display:grid;gap:12px;align-content:start}
.db-aside p{margin:0;color:#61594a}
.db-aside>svg{width:44px;height:33px}
.db-aside .db-tag{justify-self:start}
.db-aside .db-ghost{justify-self:start}
.db-split--wide{grid-template-columns:7fr 5fr}
.db-read{display:grid;grid-template-columns:minmax(0, 8fr) minmax(0, 4fr);gap:40px;align-items:start}
.db-read article{padding:48px 56px;max-width:none}
.db-read article>:first-child{margin-top:0}
.db-read aside{position:sticky;top:24px;padding:24px;display:grid;gap:12px}
.db-read aside .db-tile{padding:16px}
.db-read aside h2{font-size:1.25rem}
.db-read aside p{margin:0;color:#61594a}

/* contact */
.db-contact{display:grid;grid-template-columns:5fr 7fr;gap:40px;align-items:start}
.db-contact__form{grid-column:2;grid-row:1;padding:32px}
.db-contact__form .db-h3{font-size:1.25rem;margin-bottom:8px}
.db-contact__form>p{margin:0 0 24px;color:#61594a}
.db-contact__info{grid-column:1;grid-row:1;display:grid;gap:28px}
.db-detail{margin:0;display:grid;gap:4px}
.db-detail dt{font-size:0.9375rem;color:#61594a}
.db-detail dd{margin:0;font-size:1.125rem}
.db-detail dd a{display:inline-flex;align-items:center;min-height:44px}
.db-addr{margin:0 0 12px;font-weight:500}
.db-detail--big dd{font-size:1.75rem;font-weight:600;letter-spacing:-0.02em;font-variant-numeric:tabular-nums}

/* enquiry form (site.css is not loaded) */
.qform{display:block}
.qform__row{display:grid;gap:16px;grid-template-columns:1fr 1fr}
.qform__field{margin-bottom:16px}
.qform__field--wide{grid-column:1 / -1}
.qform label{display:block;margin-bottom:6px;font-weight:500;font-size:1rem}
.qform .req{color:#61594a}
.qform input,.qform textarea{display:block;width:100%;min-height:48px;padding:10px 12px;border:1px solid #61594a;border-radius:8px;background:#ffffff;color:#261b07;font:inherit}
.qform textarea{min-height:9rem;resize:vertical}
.qform input:focus-visible,.qform textarea:focus-visible{outline:3px solid #261b07;outline-offset:2px}
.qform__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.qform__hint{margin:0 0 16px;font-size:1rem;color:#61594a}
.qform__foot{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.qform__status{margin:0;font-weight:500;color:#61594a}
.qform__status:empty{display:none}
.qform__status--ok{color:#261b07}
.qform__status--err{color:#a4161a}
.qform__status--busy{color:#61594a}
.qform button[type="submit"]:disabled{opacity:0.6;cursor:not-allowed}

/* small-screen dock: Call and Book */
.db-dock{display:none}

/* footer */
.db-footer{background:#261b07;color:#f8f7f5;padding:72px 0 32px}
.db-footer__cols{display:grid;gap:40px;grid-template-columns:1.4fr 1fr 0.8fr 1.2fr}
.db-footer__brand{display:flex;align-items:center;gap:10px;font-size:1.25rem;margin-bottom:16px;color:#f8f7f5}
.db-footer__brand svg{width:32px;height:24px}
.db-footer h2{font-size:1rem;font-weight:500;letter-spacing:0;color:#f8da9d;margin-bottom:8px}
.db-footer h2.db-footer__brand{font-size:1.25rem;font-weight:600;color:#f8f7f5}
.db-footer p{color:#f8f7f5;margin:0 0 12px}
.db-footer ul{list-style:none}
.db-footer a{color:#f8f7f5;text-decoration-color:rgb(249 166 0 / 0.7)}
.db-footer a:hover{text-decoration-color:#f9a600}
.db-footer li a,.db-footer__contact a{display:inline-flex;align-items:center;min-height:44px}
.db-footer__contact{margin:0 0 12px}
.db-footer__hours{margin:0 0 12px;font-variant-numeric:tabular-nums}
.db-footer .db-tag{margin:4px 0 12px;color:#261b07}
.db-footer__contact a{overflow-wrap:anywhere}
.db-footer__base{margin-top:48px;padding-top:20px;border-top:1px solid rgb(248 247 245 / 0.2);display:flex;flex-wrap:wrap;gap:4px 24px;justify-content:space-between;align-items:center}
.db-footer__base p{margin:0}

/* M: 640 to 1023 */
@media (max-width:1023px){
  .db-wrap{padding:0 24px}
  .db-nav,.db-header__in>.db-btn{display:none}
  .db-menu{display:block}
  .db-hero__grid{grid-template-columns:1fr;grid-template-areas:none}
  .db-hero__grid>*{grid-area:auto}
  .db-hero__h1{max-width:20ch}
  .db-est{grid-template-columns:1fr}
  .db-chart{grid-template-columns:1fr}
  .db-pagehead__grid{grid-template-columns:1fr;align-items:start}
  .db-grid{grid-template-columns:repeat(2, 1fr)}
  .db-trust{grid-template-columns:repeat(2, 1fr)}
  .db-split,.db-split--wide{grid-template-columns:1fr;gap:8px}
  .db-read{grid-template-columns:1fr}
  .db-read aside{display:none}
  .db-read article{padding:40px}
  .db-compare{grid-template-columns:1fr}
  .db-tier{border-left:0;border-top:1px solid #e3dfd5}
  .db-tier:first-child{border-top:0}
  .db-tier{display:grid;grid-template-columns:minmax(0, 1fr) auto;column-gap:16px;align-items:end;padding:20px 24px}
  .db-tier__head{grid-column:1;grid-row:1;gap:8px;align-self:end}
  .db-tier__price{grid-column:2;grid-row:1;margin:0;font-size:1.75rem;text-align:right;white-space:nowrap}
  .db-tier__unit{grid-column:1 / -1;margin:2px 0 0;text-align:right}
  .db-tier__note{grid-column:1 / -1;margin:10px 0 6px}
  .db-tier__feats{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
  .db-tier__feats li{padding:8px 0 8px 24px}
  .db-tier__feats li::before{top:0.95em}
  .db-tier--pick{order:-1;border-radius:0;box-shadow:inset 4px 0 0 #261b07;background:rgb(248 218 157 / 0.35)}
  .db-where{grid-template-columns:1fr}
  .db-where>div+div{border-left:0;border-top:1px solid #e3dfd5}
  .db-contact{grid-template-columns:1fr}
  .db-contact__form,.db-contact__info{grid-column:1;grid-row:auto}
  .db-footer__cols{grid-template-columns:1fr 1fr}
  .db-section{padding:72px 0}
  .db-cta{padding-bottom:72px}
}
/* S: under 640 */
@media (max-width:639px){
  .db-wrap{padding:0 16px}
  .db-header__in{min-height:64px;gap:4px}
  .db-brand{font-size:1.125rem;gap:8px}
  .db-brand__full{display:none}
  .db-brand__short{display:inline}
  .db-tel{padding:0 8px}
  .db-tel svg{display:none}
  .db-menu summary{padding:0 12px}
  .db-hero{padding:28px 0 48px}
  .db-hero__grid{row-gap:16px}
  .db-hero__h1{font-size:2.25rem;order:1}
  .db-hero__eyebrow{margin-bottom:14px}
  .db-est{display:contents}
  .db-est__title{order:2;font-size:1.0625rem;margin-top:4px}
  .db-tiles{order:3;gap:8px}
  .db-est__note{order:4;font-size:1rem}
  .db-hero__pts{order:5}
  .db-hero__lic{margin-top:12px}
  .db-hero__actions{order:6}
  .db-hero__actions>*{flex:1 1 100%}
  .db-hero__lede{order:7;font-size:1.125rem}
  .db-chart{order:8;margin-top:12px;padding:20px;background:#ffffff;border:1px solid #e3dfd5;border-radius:8px;box-shadow:0 4px 8px rgb(38 27 7 / 0.06)}
  .db-tiles{grid-template-columns:1fr;gap:0;background:#ffffff;border:1px solid #e3dfd5;border-radius:8px;box-shadow:0 4px 8px rgb(38 27 7 / 0.06);padding:0 16px}
  .db-tile{flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 0;background:transparent;border-radius:0}
  .db-tile+.db-tile{border-top:1px solid #e3dfd5}
  .db-tile__l{font-size:0.9375rem;line-height:1.3}
  .db-tile__v{font-size:1.625rem;text-align:right;white-space:nowrap}
  .db-pricecard .db-tile{flex-direction:column;padding:16px;background:#f8f7f5;border-radius:8px}
  .db-bar{grid-template-columns:1fr}
  .db-pagehead{padding:32px 0}
  .db-pagehead h1{font-size:2.125rem}
  .db-pagehead__lede{font-size:1.125rem}
  .db-section{padding:56px 0}
  .db-section--tight{padding-top:16px}
  .db-sh{margin-bottom:28px}
  .db-shrow{margin-bottom:28px}
  .db-grid,.db-trust,.db-two,.qform__row{grid-template-columns:1fr}
  .qform__row{gap:0}
  .db-trust{gap:24px}
  .db-tier{padding:18px 20px 12px}
  .db-tier__feats{grid-template-columns:1fr}
  .db-tier__feats li{padding:6px 0 6px 24px;font-size:1rem}
  .db-tier__feats li::before{top:0.85em}
  .db-ledger{padding:4px 20px}
  .db-ledger li{grid-template-columns:36px minmax(0, 1fr);column-gap:12px;row-gap:8px;align-items:center;padding:20px 0}
  .db-ledger__n{grid-row:auto;width:36px;height:36px}
  .db-ledger h3{margin:0;font-size:1.0625rem}
  .db-ledger p{grid-column:1 / -1}
  .db-faq{padding:4px 20px}
  .db-faq__a{padding-right:0}
  .db-where>div,.db-two>.db-panel,.db-contact__form{padding:24px 20px}
  .db-read article{padding:28px 20px}
  .db-cta{padding-bottom:56px}
  .db-cta__panel{padding:40px 20px}
  .db-cta .db-actions>*{flex:1 1 100%}
  .db-table th,.db-table td{padding:12px 14px}
  .db-footer{padding:56px 0 24px}
  .db-footer__cols{grid-template-columns:1fr 1fr;gap:32px 16px}
  .db-footer__cols>div:first-child,.db-footer__cols>div:last-child{grid-column:1 / -1}
  .db-dock{display:flex;position:sticky;bottom:0;z-index:20;gap:8px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#f8f7f5;border-top:1px solid #e3dfd5;box-shadow:0 -4px 12px rgb(38 27 7 / 0.08)}
  .db-dock>*{flex:1 1 0}
}
/* XS: under 420, the phone number takes its own row so nothing in the header can push past the edge */
@media (max-width:419px){
  .db-header__in{flex-wrap:wrap;min-height:0;padding-top:6px;column-gap:8px}
  .db-tel{order:1;flex:1 0 100%;justify-content:flex-start;gap:8px;margin:6px 0 0;padding:0;border-top:1px solid #e3dfd5;border-radius:0}
  .db-tel svg{display:block}
}
@media (min-width:1024px){
  .db-compare{grid-template-rows:repeat(8, auto)}
  .db-tier{display:grid;grid-row:span 8;grid-template-rows:subgrid;row-gap:0}
  .db-tier__feats{display:contents}
  .db-tier__head{align-self:end}
  .db-tier__note{align-self:start}
}
@media (prefers-reduced-motion: no-preference){
  .db-btn,.db-ghost,.db-nav a,.db-tel,.db-menu summary,.db-menu__panel a,.qform button[type="submit"],.db-others a,.db-card,.db-faq summary::after,a{transition:background-color 150ms, color 150ms, border-color 150ms, text-decoration-color 150ms}
}
