/* Square Lots site styles. Layout: a fenced yard plan - dark bands with orange fence-line accents, measured lot cards, dimensions set like plat callouts. */
:root{--sl-orange:#F26A1B;--sl-orange-dk:#C9520C;--sl-ink:#17201B;--sl-ink-2:#3E4742;--sl-muted:#5E6762;--sl-concrete:#F4F1EC;--sl-paper:#FFFFFF;--sl-line:#DDD8CF;--sl-f-display:"Archivo","Arial Narrow",Arial,sans-serif;--sl-f-body:"Public Sans","Segoe UI",Roboto,Helvetica,Arial,sans-serif;--sl-f-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace}
body{font-family:var(--sl-f-body);color:var(--sl-ink);background:var(--sl-concrete);font-size:17px;line-height:1.6}
h1,h2,h3,h4,.site-title{font-family:var(--sl-f-display);font-weight:800;letter-spacing:-.01em;line-height:1.08;text-wrap:balance;color:inherit}
.entry-content h1{font-size:clamp(2.3rem,5.6vw,4rem)}
.entry-content h2{font-size:clamp(1.8rem,3.6vw,2.6rem)}
.entry-content h3{font-size:1.25rem}
.content-bg,.site .content-bg,body.page .content-bg{background:transparent}
body.page .entry.single-entry{box-shadow:none;background:transparent}
body.page .entry-content-wrap{padding:0}
body.page .content-area{margin-top:0;margin-bottom:0}
.entry-content>.alignfull{margin-top:0;margin-bottom:0}
.sl-band{padding:clamp(56px,8vw,96px) 0}
.sl-band>*{max-width:1160px;margin-left:auto!important;margin-right:auto!important;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.sl-band.sl-light{background:var(--sl-concrete)}
.sl-band.sl-white{background:var(--sl-paper);border-top:1px solid var(--sl-line);border-bottom:1px solid var(--sl-line)}
.sl-band.sl-dark{background:var(--sl-ink);color:#fff}
.sl-dark p,.sl-dark li{color:#C9D0CB}.sl-dark strong{color:#fff}
.sl-dark a:not(.wp-block-button__link){color:#fff}
.sl-band.sl-orange{background:var(--sl-orange);color:#fff}
.sl-orange p{color:#fff}
.sl-eyebrow{font-family:var(--sl-f-mono);font-size:.8rem!important;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--sl-orange)!important;margin-bottom:.4em!important}
.sl-orange .sl-eyebrow{color:var(--sl-ink)!important}
.sl-lede{font-size:1.15rem;max-width:36em}
.sl-muted{color:var(--sl-muted)}
.sl-fine{font-size:.88rem!important;color:var(--sl-muted)}
.sl-dark .sl-fine{color:#A9B2AD}
/* buttons */
.wp-block-button__link,.wp-element-button{font-family:var(--sl-f-body);font-weight:700;border-radius:4px;padding:.95em 1.5em;background:var(--sl-orange);color:#fff;border:2px solid var(--sl-orange);transition:transform .12s ease,box-shadow .12s ease,background .12s ease}
.wp-block-button__link:hover{background:var(--sl-orange-dk);border-color:var(--sl-orange-dk);color:#fff;transform:translateY(-1px)}
.is-style-outline .wp-block-button__link{background:transparent;color:var(--sl-ink);border-color:var(--sl-ink)}
.is-style-outline .wp-block-button__link:hover{background:var(--sl-ink);color:#fff;border-color:var(--sl-ink)}
.sl-dark .is-style-outline .wp-block-button__link{color:#fff;border-color:#fff}
.sl-dark .is-style-outline .wp-block-button__link:hover{background:#fff;color:var(--sl-ink)}
.sl-orange .wp-block-button__link{background:var(--sl-ink);border-color:var(--sl-ink)}
.sl-orange .wp-block-button__link:hover{background:#000;border-color:#000}
:focus-visible{outline:3px solid var(--sl-orange);outline-offset:2px}
/* hero */
.sl-hero{padding:clamp(40px,7vw,88px) 0 clamp(48px,7vw,96px)}
.sl-hero .wp-block-columns{gap:clamp(28px,5vw,64px);align-items:center}
.sl-hero h1{color:#fff;margin:.1em 0 .35em}
.sl-hero h1 em{font-style:normal;color:var(--sl-orange)}
.sl-facts{list-style:none;padding:0!important;margin:18px 0 0!important;display:flex;flex-wrap:wrap;gap:6px 22px;font-family:var(--sl-f-mono);font-size:.86rem}
.sl-facts li::before{content:"\25A0  ";color:var(--sl-orange)}
.sl-plat{background:#1F2a24;border:1px solid #33403A;padding:14px;border-radius:2px}
.sl-plat svg{display:block;width:100%;height:auto}
.sl-plat figcaption,.sl-plat .cap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-family:var(--sl-f-mono);font-size:.74rem;color:#9AA49E;border-top:1px dashed #3a4741;margin-top:10px;padding-top:8px}
/* trust strip */
.sl-strip{background:var(--sl-orange);color:var(--sl-ink)}
.sl-strip .wp-block-columns{gap:0;margin:0}
.sl-strip .wp-block-column{padding:16px 12px;font-family:var(--sl-f-mono);font-weight:600;font-size:.86rem;text-transform:uppercase;letter-spacing:.06em;text-align:center;color:#fff}
.sl-strip p{margin:0;color:#fff}
/* cards */
.sl-cards{gap:16px!important}
.sl-card{background:var(--sl-paper);border:1px solid var(--sl-line);padding:24px!important;height:100%;display:flex;flex-direction:column;gap:10px}
.sl-card>*{margin:0!important}
.sl-card.sl-featured{border:2px solid var(--sl-ink);box-shadow:7px 7px 0 var(--sl-orange)}
.sl-dim{font-family:var(--sl-f-display)!important;font-weight:900;font-size:2.5rem!important;line-height:1!important;letter-spacing:-.02em}
.sl-dim small{font-family:var(--sl-f-mono);font-size:.8rem;font-weight:500;color:var(--sl-muted);margin-left:4px}
.sl-tag{align-self:flex-start;font-family:var(--sl-f-mono);font-size:.72rem!important;letter-spacing:.08em;text-transform:uppercase;background:var(--sl-ink);color:#fff;padding:3px 8px}
.sl-featured .sl-tag{background:var(--sl-orange)}
.sl-card ul{padding-left:1.1em;margin:0!important;color:var(--sl-ink-2);font-size:.96rem;flex:1}
.sl-card ul li{margin-bottom:4px}
.sl-price{font-family:var(--sl-f-display)!important;font-weight:800;font-size:1.9rem!important;border-top:1px dashed var(--sl-line);padding-top:12px;font-variant-numeric:tabular-nums}
.sl-price span{font-family:var(--sl-f-body);font-size:.9rem;font-weight:500;color:var(--sl-muted)}
.sl-was{font-size:.86rem!important;color:var(--sl-muted)}
.sl-card .wp-block-buttons{margin-top:6px!important}
.sl-card .wp-block-button,.sl-card .wp-block-button__link{width:100%;text-align:center}
/* feature grid */
.sl-grid{gap:0!important;border-top:1px solid var(--sl-line);border-left:1px solid var(--sl-line);margin-top:28px}
.sl-grid>.wp-block-column{border-right:1px solid var(--sl-line);border-bottom:1px solid var(--sl-line);padding:24px;margin:0!important}
.sl-grid h3{margin:.2em 0 .3em}
.sl-grid p{margin:0;color:var(--sl-ink-2);font-size:.97rem}
.sl-k{font-family:var(--sl-f-mono);font-size:.76rem!important;color:var(--sl-orange)!important;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin:0!important}
/* steps */
.sl-steps{counter-reset:step;list-style:none;padding:0!important;margin:0!important}
.sl-steps li{counter-increment:step;display:grid;grid-template-columns:3rem 1fr;gap:14px;padding:18px 0;border-top:1px solid rgba(255,255,255,.16)}
.sl-light .sl-steps li,.sl-white .sl-steps li{border-top-color:var(--sl-line)}
.sl-steps li::before{content:counter(step,decimal-leading-zero);font-family:var(--sl-f-mono);color:var(--sl-orange);font-weight:600}
.sl-steps strong{display:block;font-family:var(--sl-f-display);font-size:1.15rem;margin-bottom:2px}
.sl-checks{list-style:none;padding:0!important}
.sl-checks li{padding-left:1.7em;position:relative;margin-bottom:10px}
.sl-checks li::before{content:"\2713";position:absolute;left:0;color:var(--sl-orange);font-weight:800}
/* trades */
.sl-pills{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0!important;margin:22px 0 0!important}
.sl-pills li a,.sl-pills li span{display:inline-block;font-family:var(--sl-f-mono);font-size:.9rem;padding:9px 15px;border:1px solid var(--sl-line);background:var(--sl-paper);border-radius:999px;text-decoration:none;color:var(--sl-ink)}
.sl-pills li a:hover{border-color:var(--sl-orange);color:var(--sl-orange)}
.sl-pain{list-style:none;padding:0!important;margin:0!important;border-top:1px solid var(--sl-line)}
.sl-pain li{padding:16px 0;border-bottom:1px solid var(--sl-line);color:var(--sl-ink-2)}
.sl-pain strong{color:var(--sl-ink)}
/* faq */
.sl-faq .wp-block-details{border-bottom:1px solid var(--sl-line);padding:16px 0;margin:0}
.sl-faq .wp-block-details:first-of-type{border-top:1px solid var(--sl-line)}
.sl-faq summary{cursor:pointer;font-weight:700;font-size:1.08rem;list-style:none;display:flex;justify-content:space-between;gap:16px}
.sl-faq summary::-webkit-details-marker{display:none}
.sl-faq summary::after{content:"+";font-family:var(--sl-f-mono);color:var(--sl-orange);font-size:1.4rem;line-height:1}
.sl-faq details[open] summary::after{content:"\2212"}
.sl-faq details p{margin:10px 0 0;color:var(--sl-ink-2);max-width:62ch}
/* forms */
.sl-formbox{background:var(--sl-paper);border:2px solid var(--sl-ink);box-shadow:8px 8px 0 var(--sl-orange);padding:clamp(18px,3vw,32px)!important;color:var(--sl-ink)}
.sl-formbox p{color:var(--sl-ink-2)}
.fluentform .ff-el-input--label label{font-weight:600;font-size:.93rem;color:var(--sl-ink)}
.fluentform .ff-el-form-control{border:1px solid #9BA39E!important;border-radius:3px!important;padding:12px!important;font-size:16px!important;background:#FBFAF8!important;color:var(--sl-ink)!important}
.fluentform .ff-el-form-control:focus{border-color:var(--sl-ink)!important;outline:3px solid rgba(242,106,27,.35)}
.fluentform .ff-btn-submit{width:100%;font-weight:800!important;font-size:1.08rem!important;padding:16px 20px!important;border-radius:4px!important;background:var(--sl-orange)!important;border-color:var(--sl-orange)!important}
.fluentform .ff-btn-submit:hover{background:var(--sl-orange-dk)!important;opacity:1!important}
.sl-form-fine{font-size:.85rem;color:var(--sl-muted);margin:0}
.ff-el-group{margin-bottom:16px!important}
.ff-message-success{border:2px solid var(--sl-orange)!important;background:#FFF6F0!important;box-shadow:none!important;padding:18px!important}
/* header */
.site-header .custom-logo{max-height:52px;width:auto}
.site-branding .site-title-wrap{display:none}
.main-navigation .primary-menu-container>ul>li.sl-menu-cta>a{background:var(--sl-orange);color:#fff!important;border-radius:4px;padding:.55em 1em!important;margin-left:8px;font-weight:700}
.main-navigation .primary-menu-container>ul>li.sl-menu-cta>a:hover{background:var(--sl-orange-dk)}
.main-navigation .primary-menu-container>ul>li.menu-item>a{font-weight:600}
/* footer */
.sl-footer{background:var(--sl-ink);color:#A9B2AD;padding:48px 0 32px;font-size:.93rem}
.sl-footer-in{max-width:1160px;margin:0 auto;padding:0 max(16px,env(safe-area-inset-left,0px));display:flex;flex-wrap:wrap;gap:28px 56px;justify-content:space-between}
.sl-footer img{max-width:240px;height:auto;display:block;margin-bottom:12px}
.sl-footer b{display:block;color:#fff;font-family:var(--sl-f-mono);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}
.sl-footer a{color:#D9DED9;text-decoration:none;display:block;margin-bottom:6px}
.sl-footer a:hover{color:var(--sl-orange)}
.sl-footer-cols{display:flex;flex-wrap:wrap;gap:24px 48px}
.site-footer{background:var(--sl-ink)}
.site-footer .site-footer-row-container-inner{background:#101713;color:#8E9993}
.site-footer a{color:#D9DED9}
/* sticky mobile CTA */
.sl-sticky{display:none}
@media (max-width:767px){.sl-sticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:999;align-items:center;justify-content:space-between;gap:10px;background:var(--sl-ink);color:#fff;padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));font-size:.92rem;box-shadow:0 -4px 16px rgba(0,0,0,.2)}.sl-sticky a{background:var(--sl-orange);color:#fff;text-decoration:none;font-weight:800;padding:10px 16px;border-radius:4px;white-space:nowrap}.sl-sticky a.sl-call{background:transparent;border:1px solid #fff;padding:9px 12px}body{padding-bottom:64px}.sl-hide-mobile{display:none!important}}
@media (max-width:781px){.sl-grid>.wp-block-column{flex-basis:100%!important}.sl-hero .wp-block-columns{flex-wrap:wrap}}
@media (min-width:600px) and (max-width:1000px){.sl-cards{flex-wrap:wrap!important}.sl-cards>.wp-block-column{flex-basis:calc(50% - 8px)!important;flex-grow:0}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* steps fix: number in left gutter, title + text stacked */
.sl-steps li{display:block;position:relative;padding:18px 0 18px 3.5rem}
.sl-steps li::before{position:absolute;left:0;top:18px;font-size:1.15rem;line-height:1.3}
.sl-steps strong{line-height:1.3;margin-bottom:6px}
