/*
Theme Name: Miami Same Day Plumbing Experts — AI Website Factory
Theme URI: https://github.com/
Author: AI Website Factory
Author URI: https://github.com/
Description: Generated WordPress theme for Miami Same Day Plumbing Experts (Miami).
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: gyl-dynamic-theme

Generated by the AI Website Factory build pipeline. Page content lives in
real WordPress Pages built from the custom `gyl/section` block. The rest of
this file (palette variables, typography, every component class the section
render callbacks emit) is appended below this comment block at export time,
generated from the same renderer that powers the Site Builder Studio preview
so the exported theme matches pixel-for-pixel.
*/


:root{--base:#14181e;--surface:#0d2137;--surface2:#192c41;--accent:#e56b4e;--gold2:#ea8971;--ink:#f7f2ea;--muted:#b7b3a9;--line:rgba(229,107,78,0.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--base);color:var(--ink);font-family:'Inter',system-ui,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:'Fraunces',Georgia,serif;font-weight:600;line-height:1.12}
h1{font-size:clamp(2.4rem,5vw,3.8rem);margin:.12em 0 .3em}h2{font-size:2.1rem;margin:0 0 .4em}h3{font-size:1.25rem;margin:0 0 .35em}
p{opacity:.92;margin:0 0 1.05em}a{color:inherit}.gold{color:var(--accent)}
.eyebrow{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:700;margin:0 0 .7em;display:inline-block}
.accent-rule{width:54px;height:3px;background:var(--accent);border-radius:3px;margin:.1em 0 1.3em}
.btn{display:inline-flex;align-items:center;gap:.5em;background:linear-gradient(135deg,var(--gold2),var(--accent));color:#191407;font-weight:700;padding:.8em 1.4em;border-radius:999px;text-decoration:none;min-height:46px;border:0;cursor:pointer;font-size:1rem;box-shadow:0 8px 24px rgba(201,164,60,.25);transition:transform .15s}
.btn:hover{transform:translateY(-2px)}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.slot{position:relative;width:100%;height:100%;overflow:hidden}.slot-tag{position:absolute;left:8px;bottom:8px;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#cdbf9d;background:rgba(8,10,15,.6);border:1px dashed rgba(201,164,60,.5);border-radius:6px;padding:2px 7px}
/* header */
header.site{position:sticky;top:0;z-index:40;background:rgba(11,13,18,.9);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}
.topbar{display:flex;align-items:center;gap:18px;min-height:66px}
.logo{font-family:'Fraunces',Georgia,serif;font-size:1.35rem;font-weight:700;text-decoration:none}.logo b{color:var(--accent)}
nav.main{display:flex;gap:20px;margin-left:auto;font-size:.95rem}nav.main a{text-decoration:none;opacity:.86;padding:6px 2px}nav.main a:hover{color:var(--accent);opacity:1}
.hdr-contact{display:flex;align-items:center;gap:14px;font-size:.9rem}
.hdr-contact a{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:var(--ink);opacity:.9}.hdr-contact a:hover{color:var(--accent)}
.hdr-contact svg{width:17px;height:17px;color:var(--accent)}
.hdr-contact .btn{padding:.5em 1.05em;min-height:40px;font-size:.88rem}
.nav-toggle{display:none;margin-left:auto;background:none;border:1px solid var(--line);color:var(--ink);border-radius:10px;width:46px;height:46px;cursor:pointer}
.nav-toggle svg{width:22px;height:22px}
/* hero */
.hero{position:relative;min-height:560px;display:flex;align-items:center;overflow:hidden}
.hero-bg{position:absolute;inset:0}.hero-bg .slot{height:100%}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,9,13,.93),rgba(7,9,13,.6) 52%,rgba(7,9,13,.28));z-index:1}
.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;padding:74px 24px;width:100%}
.hero.solo .wrap{grid-template-columns:1fr;max-width:880px}
.hero .sub{font-size:1.16rem;opacity:.92;margin-bottom:1.4em;max-width:600px}
.cta-row{display:flex;gap:14px;flex-wrap:wrap}
.pill-row{display:flex;gap:20px;flex-wrap:wrap;margin-top:26px}.pill-row .t{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--muted)}.pill-row svg{width:20px;height:20px;color:var(--accent)}
.ribbon{display:inline-block;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold2);border:1px dashed rgba(201,164,60,.5);border-radius:999px;padding:5px 12px;margin-bottom:14px}
/* multi-step form */
.qform{background:linear-gradient(180deg,#faf7f0,#efe9da);color:#191407;border-radius:18px;padding:24px;box-shadow:0 30px 70px rgba(0,0,0,.5)}
.qform .qe{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#8a6d1f;font-weight:800}
.qform h3{font-family:'Fraunces',Georgia,serif;color:#191407;margin:2px 0 12px}
.qf-dots{display:flex;gap:8px;margin-bottom:14px}.qf-dots span{flex:1;height:5px;border-radius:3px;background:#d9cdab}.qf-dots span.on{background:var(--accent)}
.qfield{margin-bottom:11px}.qfield label{display:block;font-size:.76rem;font-weight:700;color:#5b5444;margin:0 0 5px}
.qfield input,.qfield select{width:100%;border:1px solid #cdbf9d;background:#fff;border-radius:10px;padding:12px 13px;font:inherit;color:#191407;min-height:46px}
.qf-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.qf-step[hidden]{display:none}.qf-nav{display:flex;gap:10px;margin-top:14px}.qf-nav .btn{flex:1;justify-content:center}
.qf-back{background:transparent;border:1px solid #cdbf9d;color:#5b5444;box-shadow:none}
/* generic band */
section.band{padding:84px 0;border-top:1px solid rgba(255,255,255,.05)}section.alt{background:var(--surface)}
.sec-head{text-align:center;max-width:680px;margin:0 auto 40px}.sec-head .accent-rule{margin-left:auto;margin-right:auto}
/* eeat */
.eeat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.eeat-card{background:var(--surface2);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:24px}
.eeat-card .ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:rgba(201,164,60,.12);margin-bottom:14px}.eeat-card .ic svg{width:24px;height:24px;color:var(--accent)}
.eeat-card p{font-size:.94rem;color:var(--muted);margin:0}
/* steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:s}
.step{position:relative;padding:0 6px}.step .n{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-family:'Fraunces',Georgia,serif;font-size:1.3rem;color:#191407;background:linear-gradient(135deg,var(--gold2),var(--accent));margin-bottom:14px;font-weight:700}
.step p{font-size:.94rem;color:var(--muted);margin:0}
/* features */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.feat{display:flex;align-items:center;gap:14px;background:var(--surface2);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:18px 20px}
.feat .ic{width:42px;height:42px;flex:none;border-radius:11px;display:grid;place-items:center;background:rgba(201,164,60,.12)}.feat .ic svg{width:22px;height:22px;color:var(--accent)}.feat h3{font-size:1.02rem;margin:0;font-family:'Inter',system-ui,sans-serif;font-weight:700}
/* carousel */
.carousel{position:relative}.car-viewport{overflow:hidden}
.car-track{display:flex;gap:20px;transition:transform .4s ease}
.car-track>*{flex:0 0 calc((100% - 40px)/3)}
.car-btn{position:absolute;top:38%;z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(11,13,18,.8);color:var(--ink);cursor:pointer;display:grid;place-items:center}
.car-btn:hover{background:var(--accent);color:#191407}.car-btn svg{width:22px;height:22px}.car-prev{left:-10px}.car-next{right:-10px}
.car-dots{display:flex;gap:9px;justify-content:center;margin-top:24px}
.car-dots button{width:9px;height:9px;border-radius:50%;border:0;background:#3a3f4b;cursor:pointer;padding:0}.car-dots button.on{background:var(--accent);width:24px;border-radius:5px}
.pcard{background:var(--surface2);border:1px solid rgba(255,255,255,.06);border-radius:16px;overflow:hidden;text-decoration:none;display:block;transition:border-color .15s,transform .15s}
.pcard:hover{border-color:var(--line);transform:translateY(-3px)}.pcard .thumb{aspect-ratio:16/10}.pcard .pc{padding:18px}
.pcard h3{font-size:1.12rem;margin:0 0 3px}.pcard p{font-size:.9rem;color:var(--muted);margin:0 0 10px}.pcard .more{color:var(--accent);font-weight:700;font-size:.88rem}
.pcard .spec{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.pcard .spec span{font-size:.74rem;color:var(--muted);background:rgba(255,255,255,.05);border-radius:6px;padding:3px 8px}
/* areas */
.areas-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.acard{background:var(--surface2);border:1px solid rgba(255,255,255,.06);border-radius:14px;overflow:hidden;text-decoration:none;display:block;transition:border-color .15s,transform .15s}.acard:hover{border-color:var(--line);transform:translateY(-3px)}
.acard .thumb{aspect-ratio:4/3}.acard .ac{padding:14px 16px}.acard h3{font-size:1.05rem;margin:0}.acard span{color:var(--accent);font-size:.82rem;font-weight:700}
/* feature/body */
.feature{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center}.feature .art{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.07);aspect-ratio:16/11;box-shadow:0 24px 60px rgba(0,0,0,.4)}
.body-copy{max-width:760px}.body-copy h2{margin-top:1.4em}.body-copy h2:first-child{margin-top:0}
.prose{max-width:880px;margin:0 auto}.prose h2{font-size:1.6rem;margin:1.5em 0 .4em}.prose h2:first-child{margin-top:0}.prose p{font-size:1.06rem}
.feature.rev .art{order:-1}
.callout{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center;background:var(--surface2);border:1px solid var(--line);border-radius:18px;padding:32px}
.callout h2{font-size:1.7rem}.callout p{color:var(--muted)}.callout-art{border-radius:14px;overflow:hidden;aspect-ratio:16/10}
.incl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.incl{display:flex;align-items:flex-start;gap:12px;background:var(--surface2);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:16px}.incl svg{width:22px;height:22px;color:var(--accent);flex:none;margin-top:2px}.incl span{font-size:.96rem}
@media(max-width:760px){.callout{grid-template-columns:1fr}.incl-grid{grid-template-columns:1fr}}
.places-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.place{display:flex;align-items:center;gap:12px;background:var(--surface2);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:16px 18px}.place svg{width:22px;height:22px;color:var(--accent);flex:none}.place span{font-weight:600}
.airtable{width:100%;border-collapse:collapse;margin:.4em 0 1em}.airtable th{text-align:left;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);padding:10px 8px;border-bottom:1px solid var(--line)}.airtable td{padding:13px 8px;border-bottom:1px solid rgba(255,255,255,.08)}.airtable td:first-child{font-weight:600}
@media(max-width:760px){.places-grid{grid-template-columns:1fr}}
/* expect (reviews substitute) */
.expect{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ecard{background:var(--surface2);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:24px}.ecard .ic{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:rgba(201,164,60,.12);margin-bottom:12px}.ecard .ic svg{width:22px;height:22px;color:var(--accent)}.ecard p{font-size:.94rem;color:var(--muted);margin:0}
/* faq accordion */
.faq{max-width:860px;margin:0 auto}
.faq-item{border-top:1px solid rgba(255,255,255,.1)}.faq-item:last-child{border-bottom:1px solid rgba(255,255,255,.1)}
.faq-q{width:100%;text-align:left;background:none;border:0;color:var(--ink);font:inherit;font-size:1.12rem;font-family:'Fraunces',Georgia,serif;padding:22px 44px 22px 0;cursor:pointer;position:relative;min-height:44px}
.faq-q .chev{position:absolute;right:4px;top:50%;transform:translateY(-50%);transition:transform .25s;color:var(--accent)}.faq-q .chev svg{width:22px;height:22px}
.faq-q[aria-expanded="true"] .chev{transform:translateY(-50%) rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}.faq-a p{margin:0 0 22px;color:var(--muted)}
/* contact */
.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ccard{background:var(--surface2);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:22px;text-align:center}
.ccard .ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:rgba(201,164,60,.12);margin:0 auto 12px}.ccard .ic svg{width:24px;height:24px;color:var(--accent)}
.ccard a,.ccard p{display:block;text-decoration:none;color:var(--ink);font-weight:700;margin:0}.ccard small{color:var(--muted);font-weight:400}
/* cta */
.ctaband{position:relative;text-align:center;padding:96px 0;overflow:hidden}.ctaband .hero-bg{opacity:.45}.ctaband:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,15,.86),rgba(8,10,15,.93));z-index:1}.ctaband .wrap{position:relative;z-index:2}.ctaband h2{font-size:2.5rem}
/* footer */
footer.site{background:#090a0e;border-top:1px solid rgba(255,255,255,.07);padding:56px 0 28px;color:var(--muted);font-size:.92rem}
.fcols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1.2fr;gap:28px}
footer h4{color:var(--ink);font-family:'Inter',system-ui,sans-serif;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px}
footer a{display:block;text-decoration:none;opacity:.82;margin-bottom:8px;min-height:24px}footer a:hover{color:var(--accent);opacity:1}
footer .fc-contact a{display:flex;align-items:center;gap:8px}footer .fc-contact svg{width:16px;height:16px;color:var(--accent)}
footer .copy{border-top:1px solid rgba(255,255,255,.07);margin-top:34px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.85rem}
.note{font-size:.72rem;color:#8a8270;border:1px dashed rgba(201,164,60,.4);border-radius:8px;padding:2px 8px}
@media(max-width:980px){.eeat-grid,.steps,.areas-grid,.contact-grid{grid-template-columns:repeat(2,1fr)}.feat-grid,.expect{grid-template-columns:1fr 1fr}.car-track>*{flex-basis:calc((100% - 20px)/2)}.fcols{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.hero .wrap,.feature{grid-template-columns:1fr;gap:28px}.hero{min-height:auto}.hero .wrap{padding:46px 24px}section.band{padding:54px 0}body{font-size:16px}h1{font-size:2.1rem}
nav.main{display:none;position:absolute;top:66px;left:0;right:0;flex-direction:column;background:#0c0f16;border-bottom:1px solid var(--line);padding:10px 24px;gap:0}nav.main.open{display:flex}nav.main a{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.hdr-contact{display:none}.nav-toggle{display:grid;place-items:center}
.car-track>*{flex-basis:86%}.car-prev{left:0}.car-next{right:0}
.eeat-grid,.steps,.feat-grid,.expect,.areas-grid,.contact-grid{grid-template-columns:1fr}.fcols{grid-template-columns:1fr}}
