.elementor-kit-11{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-11 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1500px;}.e-con{--container-max-width:1500px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Superior Scapes site 2026-10-07: generated by SuperiorScapeLLC/wp/port/css.py from the approved comp; do not hand-edit */
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlow/v13/7cHpv4kjgoGqM7E_Ass52Hs.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlow/v13/7cHpv4kjgoGqM7E_DMs5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3_-gs6VospT4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3_-gs51os.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E30-8s6VospT4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E30-8s51os.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B4873z3jWuZEC.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B4873z3bWuQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B46r2z3jWuZEC.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B46r2z3bWuQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B47b1z3jWuZEC.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B47b1z3bWuQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Elementor compensation layer (SuperiorScapeLLC/wp/port/css.py) --- */
body:not(.elementor-editor-active) .ss .elementor-widget,
body:not(.elementor-editor-active) .ss .elementor-widget-container,
body:not(.elementor-editor-active) .ss .elementor-button-wrapper,
body:not(.elementor-editor-active) .ss .elementor-image,
body:not(.elementor-editor-active) .ss .elementor-text-editor{display:contents}
.ss.e-con,.ss .e-con,.ss .e-con-inner{display:block}
.ss .e-con,.ss .e-con-inner,.ss.e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;
  --gap:0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-right:0px;--margin-bottom:0px;--margin-left:0px;
  --width:auto;--content-width:auto;--min-height:0;--flex-direction:row;--flex-wrap:nowrap;--justify-content:normal;
  --align-items:normal;--align-content:normal;--flex-grow:0;--flex-shrink:1;--flex-basis:auto;min-width:0}
/* real padding/margin reset at class weight only, so the comp's element rules (section{padding-block}) still win */
.ss :where(.e-con,.e-con-inner),:where(.ss.e-con){padding:0;margin:0}
.ss.e-con{--width:100%;width:100%;max-width:100%}
.ss .e-con::before{width:auto;height:auto;inset:auto}
.ss .elementor-widget-text-editor,.ss .elementor-widget-heading,.ss .elementor-widget-button{color:inherit;font:inherit}
.ss .elementor-heading-title{color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;text-transform:inherit;text-wrap:inherit}
.ss .elementor-widget-text-editor p:empty{display:none}
.ss .elementor-widget-image img{height:auto}
/* buttons: the comp's .btn/.call look bound to Elementor's own <a class="elementor-button"> */
.ss .elementor-button{border-radius:0;background:none;padding:0;font:inherit;color:inherit;fill:currentColor;line-height:1;box-shadow:none}
.ss .elementor-button-content-wrapper,.ss .elementor-button-text{display:contents}
.ss .elementor-button-icon{display:inline-flex;align-items:center;justify-content:center;margin:0}
.ss .elementor-button svg{width:1.15em;height:1.15em;fill:currentColor;flex:none}
.ss .btn .elementor-button-icon{order:2}
.ss .btn .elementor-button-icon svg{width:18px;height:18px}
.ss .btn.sm .elementor-button-icon svg{width:15px;height:15px}
.ss .call .elementor-button-icon svg{color:var(--olive);fill:var(--olive)}
/* whole-card links: the card is a container, a stretched empty anchor makes it clickable */
.ss .has-cover{position:relative}
.ss a.ss-cover{position:absolute;inset:0;z-index:3;display:block;border-radius:inherit}
.ss a.ss-cover:focus-visible{outline:3px solid var(--khaki);outline-offset:3px}
/* containers cannot be <figure>/<li>: the converter tags them instead */
.ss .is-figure{margin:0}
.ss figcaption,.ss cite,.ss q{font-style:normal}

:root{--ground:#F6F7F2; --surface:#ECEEE4; --tint:#E9E7CF; --ink:#1F2113; --muted:#545744; --line:rgba(31,33,19,.14); --olive:#44471B; --olive-deep:#2E3012; --khaki:#A69459; --khaki-soft:#D4C894; --star:#7E6F33; --on-photo:#F6F5EC; --white:#FCFCF9; --ss-display:"Barlow Condensed","Arial Narrow",system-ui,sans-serif; --body:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif; --r:14px; --rb:8px; --wrap:1500px; --gut:clamp(16px,4vw,40px); color-scheme:light;}
*{box-sizing:border-box}
body{background:var(--ground);color:var(--ink);font:400 17px/1.6 var(--body);-webkit-font-smoothing:antialiased}
.ss a{color:inherit}
.ss img{display:block;max-width:100%}
.ss .i{width:1.15em;height:1.15em;flex:none;vertical-align:-.18em}
.ss .wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}
.ss h1,.ss h1.elementor-heading-title,.ss h2,.ss h2.elementor-heading-title,.ss h3,.ss h3.elementor-heading-title{font-family:var(--ss-display);font-weight:700;line-height:1.02;letter-spacing:-.005em;margin:0;text-wrap:balance}
.ss h2,.ss h2.elementor-heading-title{font-size:clamp(2.3rem,4.4vw,3.5rem)}
.ss h3,.ss h3.elementor-heading-title{font-size:1.55rem;line-height:1.08}
.ss p{margin:0}
.ss .lede{color:var(--muted);max-width:60ch;font-size:1.08rem;margin-top:14px}
.ss section{padding-block:clamp(64px,8vw,104px)}
.ss :focus-visible{outline:3px solid var(--khaki);outline-offset:3px;border-radius:4px}
.ss .btn .elementor-button{display:inline-flex;align-items:center;gap:14px;height:52px;padding:0 6px 0 22px;border-radius:var(--rb);font:600 1rem/1 var(--body);text-decoration:none;white-space:nowrap;background:var(--olive);color:var(--white);transition:background .25s cubic-bezier(.16,1,.3,1),transform .15s}
.ss .btn .elementor-button .elementor-button-icon{width:40px;height:40px;border-radius:6px;display:grid;place-items:center;background:var(--khaki-soft);color:var(--olive-deep);transition:transform .3s cubic-bezier(.16,1,.3,1)}
.ss .btn .elementor-button:hover{background:var(--olive-deep)}
.ss .btn .elementor-button:hover .elementor-button-icon{transform:translateX(3px)}
.ss .btn .elementor-button:active{transform:translateY(1px) scale(.985)}
.ss .btn.sm .elementor-button{height:44px;padding-left:16px;gap:10px}
.ss .btn.sm .elementor-button .elementor-button-icon{width:32px;height:32px}
.ss .call .elementor-button{display:inline-flex;align-items:center;gap:10px;font-weight:600;text-decoration:none;white-space:nowrap;font-variant-numeric:tabular-nums;padding-block:6px;border-bottom:2px solid var(--khaki)}
.ss .call .elementor-button:hover{border-color:var(--ink)}
.ss .call .elementor-button .elementor-button-icon svg{color:var(--olive)}
.ss .top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--ground);border-bottom:1px solid var(--line)}
.ss .top .bar{display:flex;align-items:center;gap:22px;height:72px}
.ss .brand{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:auto}
.ss .brand img{width:46px;height:46px;object-fit:contain}
.ss .brand span{font:800 1.45rem/1 var(--ss-display);text-transform:uppercase;letter-spacing:.01em;color:var(--olive);white-space:nowrap}
.ss .menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px;height:100%}
.ss .menu > li{height:100%;display:flex;align-items:center}
.ss .mtrig .elementor-button{display:inline-flex;align-items:center;gap:6px;height:40px;padding-inline:14px;border:0;border-radius:var(--rb);background:transparent;color:var(--ink);font:500 1rem/1 var(--body);cursor:pointer;white-space:nowrap}
.ss .mtrig .elementor-button .elementor-button-icon svg{width:14px;height:14px;transition:transform .25s cubic-bezier(.16,1,.3,1)}
.ss .mtrig .elementor-button:hover,.ss .mtrig .elementor-button[aria-expanded="true"]{background:var(--surface)}
.ss .mtrig .elementor-button[aria-expanded="true"] .elementor-button-icon svg{transform:rotate(180deg)}
.ss .top .call .elementor-button{border:0}
.ss .mega{position:absolute;left:0;right:0;top:100%;background:var(--ground);border-bottom:1px solid var(--line);box-shadow:0 30px 50px -30px rgba(46,48,18,.35);padding-block:28px 32px}
.ss .mega[hidden]{display:none}
@media(prefers-reduced-motion:no-preference){.ss .mega:not([hidden]){animation:drop .28s cubic-bezier(.16,1,.3,1)}}
@keyframes drop{from{opacity:.4;transform:translateY(-6px)}to{opacity:1;transform:none}}
.ss .mega-grid{display:grid;gap:14px}
.ss .mega-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.ss .mcard{display:flex;flex-direction:column;gap:10px;text-decoration:none;min-width:0;border-radius:var(--r);padding:8px;margin:-8px;transition:background .2s}
.ss .mcard:hover{background:var(--surface)}
.ss .mcard img,.ss .mcard .ph{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px}
.ss .mcard .ph{background:linear-gradient(150deg,#4A4D22,#2E3012)}
.ss .mcard b{font:700 1.2rem/1.1 var(--ss-display);color:var(--ink)}
.ss .mcard span.d{font-size:.92rem;line-height:1.4;color:var(--muted)}
.ss .mcta{background:var(--tint);border-radius:var(--r);padding:22px;display:flex;flex-direction:column;gap:10px;justify-content:center}
.ss .mcta b{font:700 1.5rem/1.05 var(--ss-display)}
.ss .mcta p{color:var(--muted);font-size:.95rem}
.ss .mcta .btn .elementor-button{align-self:flex-start;margin-top:6px}
.ss .mega-foot{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font-size:.95rem}
.ss .mega-foot a{font-weight:600;color:var(--ink);text-decoration:none;display:inline-flex;gap:8px;align-items:center}
.ss .mega-foot a:hover{color:var(--olive)}
.ss .towns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr);gap:36px;align-items:start}
.ss .towns h4,.ss .towns h4.elementor-heading-title{font:700 1.2rem/1 var(--ss-display);color:var(--olive);margin:0 0 12px}
.ss .towns ul{list-style:none;margin:0;padding:0;columns:2;column-gap:20px}
.ss .towns li{break-inside:avoid;padding-block:4px}
.ss .towns a{text-decoration:none;color:var(--muted)}
.ss .towns a:hover{color:var(--ink)}
.ss .towns a.has-page{color:var(--ink);font-weight:600}
.ss .towns :is(figure,.is-figure),.ss .about-m :is(figure,.is-figure){margin:0}
.ss .towns :is(figure,.is-figure) img,.ss .about-m :is(figure,.is-figure) img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px}
.ss .towns figcaption{margin-top:10px;font-size:.92rem;color:var(--muted)}
.ss .towns figcaption .ulink{margin-left:6px;color:var(--ink)}
.ss .about-m{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:36px;align-items:start}
.ss .about-m ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 24px}
.ss .about-m li a{display:block;padding:12px 14px;margin-inline:-14px;border-radius:var(--rb);text-decoration:none}
.ss .about-m li a:hover{background:var(--surface)}
.ss .about-m li b{display:block;font:700 1.2rem/1.1 var(--ss-display)}
.ss .about-m li span{font-size:.92rem;color:var(--muted)}
.ss .burger .elementor-button{display:none;width:44px;height:44px;border-radius:var(--rb);border:1px solid var(--line);background:var(--ground);color:var(--ink);place-items:center;cursor:pointer;flex:none}
.ss .burger .elementor-button .elementor-button-icon svg{width:22px;height:22px}
.ss .burger .elementor-button .x{display:none}
.ss .burger .elementor-button[aria-expanded="true"] .x{display:block}
.ss .burger .elementor-button[aria-expanded="true"] .l{display:none}
@media(min-width:1041px){.ss .navwrap,.ss .navwrap nav{height:100%}}
@media(min-width:1041px) and (max-width:1220px){.ss .top .call .elementor-button{display:none}}
@media(min-width:1041px) and (max-width:1220px){.ss .top .bar{gap:14px}}
@media(max-width:1040px){.ss .burger .elementor-button{display:grid}}
@media(max-width:1040px){.ss .navwrap{position:absolute;left:0;right:0;top:100%;background:var(--ground);border-bottom:1px solid var(--line);max-height:calc(100dvh - 72px);overflow-y:auto;padding:4px var(--gut) 24px;box-shadow:0 30px 50px -30px rgba(46,48,18,.35)}}
@media(max-width:1040px){.ss .navwrap[data-open="false"]{display:none}}
@media(max-width:1040px){.ss .menu{flex-direction:column;align-items:stretch;height:auto;gap:0}}
@media(max-width:1040px){.ss .menu > li{height:auto;display:block;border-bottom:1px solid var(--line)}}
@media(max-width:1040px){.ss .mtrig .elementor-button{width:100%;justify-content:space-between;height:58px;padding-inline:0;font:700 1.35rem/1 var(--ss-display);background:transparent!important}}
@media(max-width:1040px){.ss .mega{position:static;box-shadow:none;border:0;padding:0 0 18px;animation:none!important}}
@media(max-width:1040px){.ss .mega .wrap{padding-inline:0}}
@media(max-width:1040px){.ss .mega-grid.four{grid-template-columns:1fr 1fr}}
@media(max-width:1040px){.ss .towns,.ss .about-m{grid-template-columns:1fr;gap:20px}}
@media(max-width:1040px){.ss .towns :is(figure,.is-figure),.ss .about-m :is(figure,.is-figure){display:none}}
@media(max-width:640px){.ss .top .call .elementor-button{display:none}}
@media(max-width:640px){.ss .brand span{font-size:1.2rem}}
@media(max-width:640px){.ss .top .bar > .btn.sm .elementor-button{display:none}}
@media(max-width:480px){.ss .mega-grid.four{grid-template-columns:1fr}}
@media(max-width:480px){.ss .mcard{flex-direction:row;align-items:center;gap:14px}}
@media(max-width:480px){.ss .mcard img,.ss .mcard .ph{width:72px;flex:none;aspect-ratio:1}}
@media(max-width:480px){.ss .mcard span.d{display:none}}
@media(max-width:480px){.ss .about-m ul{grid-template-columns:1fr}}
.ss .hero{padding-block:clamp(40px,6vw,72px) clamp(48px,6vw,80px)}
.ss .hero .wrap{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(28px,5vw,64px);align-items:center}
.ss .hero h1,.ss .hero h1.elementor-heading-title{font-size:clamp(2.7rem,4.8vw,4.3rem);color:var(--ink)}
.ss .hero h1 em{font-style:normal;color:var(--olive)}
.ss .hero p{font-size:clamp(1.08rem,1.5vw,1.22rem);color:var(--muted);max-width:40ch;margin-top:20px}
.ss .hero .ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:30px}
@media(max-width:900px){.ss .hero .wrap{grid-template-columns:1fr}}
@media(min-width:1041px){.ss .hero{--hero-h:min(820px,calc(100dvh - 72px - 48px));min-height:var(--hero-h);display:flex;align-items:center;padding-block:48px;background:var(--surface)}}
@media(min-width:1041px){.ss .hero > .wrap{width:100%;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,5vw,64px)}}
@media(min-width:1041px){.ss .hero h1,.ss .hero h1.elementor-heading-title{font-size:clamp(2.9rem,4vw,4.1rem)}}
@media(min-width:1041px){.ss .hero p{font-size:1.25rem;margin-top:24px}}
@media(min-width:1041px){.ss .hero .ctas{margin-top:36px}}
@media(min-width:1041px){.ss .hero .compare{aspect-ratio:4/3;max-height:min(580px,calc(var(--hero-h) - 96px - 34px));width:100%;margin-inline:auto}}
.ss .compare{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;max-width:100%;--pos:50%;box-shadow:0 30px 60px -36px rgba(46,48,18,.5);touch-action:pan-y}
.ss .compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}
.ss .compare .before{clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.ss .compare .bar{position:absolute;top:0;bottom:0;left:var(--pos);width:3px;margin-left:-1.5px;background:var(--white);pointer-events:none;box-shadow:0 0 0 1px rgba(31,33,19,.15)}
.ss .compare .knob{position:absolute;top:50%;left:var(--pos);width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:var(--white);color:var(--olive);display:grid;place-items:center;pointer-events:none;box-shadow:0 6px 20px rgba(31,33,19,.3)}
.ss .compare .knob .i{width:24px;height:24px}
.ss .compare input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}
.ss .compare input:focus-visible+.bar+.knob{outline:3px solid var(--khaki);outline-offset:3px}
.ss .compare-cap{display:flex;justify-content:space-between;gap:16px;margin-top:12px;font-size:.95rem;color:var(--muted)}
.ss .compare-cap b{color:var(--ink);font-weight:600}
.ss .checks{background:var(--tint);padding-block:clamp(44px,5vw,64px)}
.ss .checks .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.4fr);gap:clamp(28px,5vw,64px);align-items:start}
.ss .checks h2,.ss .checks h2.elementor-heading-title{font-size:clamp(1.9rem,3vw,2.5rem)}
.ss .checks h2 + p{color:var(--muted);margin-top:10px;max-width:32ch}
.ss .checks ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 32px}
.ss .checks li{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start;min-width:0}
.ss .checks li .i{width:28px;height:28px;color:var(--olive)}
.ss .checks li b{display:block;font-weight:600}
.ss .checks li span{color:var(--muted);font-size:.96rem;line-height:1.45}
@media(max-width:980px){.ss .checks .wrap{grid-template-columns:1fr}}
@media(max-width:980px){.ss .checks ul{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ss .checks ul{grid-template-columns:1fr}}
.ss .svc-head{margin-bottom:34px}
.ss .tile{position:relative;isolation:isolate;overflow:hidden;border-radius:var(--r);color:var(--on-photo);text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;min-height:220px}
.ss .tile img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.16,1,.3,1)}
.ss .tile::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(24,26,12,.86) 0%,rgba(24,26,12,.34) 52%,rgba(24,26,12,0) 100%)}
.ss .tile:hover img{transform:scale(1.04)}
.ss .tile p{font-size:.98rem;line-height:1.45;margin-top:8px;max-width:44ch;color:rgba(246,245,236,.9)}
.ss .tile .more{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-weight:600;font-size:.95rem;color:var(--khaki-soft);align-self:flex-start;padding-bottom:3px;background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;transition:background-size .35s cubic-bezier(.16,1,.3,1)}
.ss .tile:hover .more{background-size:100% 2px}
.ss .tile .more .i{transition:transform .3s cubic-bezier(.16,1,.3,1)}
.ss .tile:hover .more .i{transform:translateX(4px)}
.ss .tile.pano{min-height:clamp(300px,34vw,440px);padding:clamp(24px,4vw,44px);margin-bottom:14px}
.ss .tile.pano::before{background:linear-gradient(90deg,rgba(24,26,12,.82) 0%,rgba(24,26,12,.45) 40%,rgba(24,26,12,0) 70%)}
.ss .tile.pano h3,.ss .tile.pano h3.elementor-heading-title{font-size:clamp(2.2rem,4vw,3.2rem)}
.ss .tile.pano p{font-size:1.08rem;max-width:38ch}
.ss .stagger{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(5,minmax(96px,auto));grid-auto-flow:column;gap:14px}
.ss .stagger .tall{grid-row:span 3}
.ss .stagger .short{grid-row:span 2}
.ss .tile.solid{background:linear-gradient(150deg,#4A4D22,#2E3012)}
.ss .tile.solid::before{display:none}
@media(max-width:860px){.ss .stagger{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-flow:row}}
@media(max-width:860px){.ss .stagger .tall,.ss .stagger .short{grid-row:auto;min-height:260px}}
@media(max-width:560px){.ss .stagger{grid-template-columns:1fr}}
@media(max-width:560px){.ss .tile.pano::before{background:linear-gradient(0deg,rgba(24,26,12,.86) 0%,rgba(24,26,12,.3) 70%)}}
.ss .sod{background:var(--surface)}
.ss .frames{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:40px}
.ss .frames :is(figure,.is-figure){margin:0;min-width:0}
.ss .frames img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
.ss .frames figcaption{margin-top:10px;font-size:.95rem;color:var(--muted)}
.ss .frames figcaption b{display:block;color:var(--ink);font:700 1.25rem/1.1 var(--ss-display)}
@media(max-width:820px){.ss .frames{grid-template-columns:1fr 1fr}}
.ss .steps{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;margin:52px 0 0}
.ss .step{display:grid;grid-template-columns:110px 1fr;gap:18px;padding-block:18px;border-top:1px solid var(--line)}
.ss .step dt{font:700 1.35rem/1.2 var(--ss-display);color:var(--olive)}
.ss .step dd{margin:0}
@media(max-width:820px){.ss .steps{grid-template-columns:1fr}}
@media(max-width:820px){.ss .step{grid-template-columns:96px 1fr}}
.ss .water{margin-top:44px;background:var(--ground);border-radius:var(--r);padding:clamp(22px,3vw,32px)}
.ss .water h3,.ss .water h3.elementor-heading-title{font-size:1.6rem}
.ss .water > p{color:var(--muted);margin-top:6px}
.ss .days{display:grid;grid-template-columns:repeat(25,minmax(0,1fr));gap:4px;margin-top:20px}
.ss .day{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 0 6px;border-radius:6px;background:var(--surface);min-width:0}
.ss .day.two{background:var(--tint)}
.ss .day .drops{display:flex;flex-direction:column;color:var(--olive);line-height:0}
.ss .day .drops .i{width:12px;height:12px}
.ss .day small{font-size:.72rem;color:var(--muted);font-variant-numeric:tabular-nums}
.ss .water .key{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:14px;font-size:.92rem;color:var(--muted)}
.ss .water .key span{display:inline-flex;align-items:center;gap:8px}
.ss .water .key i{width:14px;height:14px;border-radius:4px;display:inline-block}
@media(max-width:760px){.ss .days{grid-template-columns:repeat(9,minmax(0,1fr))}}
.ss .grass{margin-top:44px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.2fr);gap:32px;align-items:center}
.ss .grass-img,.ss .grass-img > :is(img,.elementor-heading-title){border-radius:var(--r);aspect-ratio:4/3;object-fit:cover;width:100%}
.ss .grass h3,.ss .grass h3.elementor-heading-title{font-size:1.9rem}
.ss .grass ul{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:16px 32px}
.ss .grass li b{display:block;font:700 1.25rem/1.1 var(--ss-display)}
.ss .grass li span{color:var(--muted);font-size:.98rem}
@media(max-width:820px){.ss .grass{grid-template-columns:1fr}}
@media(max-width:460px){.ss .grass ul{grid-template-columns:1fr}}
.ss .trio{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:14px}
.ss .trio :is(figure,.is-figure){margin:0;min-width:0}
.ss .trio img{width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
.ss .trio :is(figure,.is-figure):first-child img{aspect-ratio:auto}
@media(min-width:821px){.ss .trio img,.ss .trio :is(figure,.is-figure):first-child img{aspect-ratio:auto;height:460px}}
.ss .owner-text{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);margin-top:44px;align-items:start}
.ss .owner-text .lede{margin-top:16px}
.ss .owner-text .facts{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:22px;color:var(--muted);font-weight:500}
.ss .owner-text .facts span{display:inline-flex;gap:8px;align-items:center}
.ss .owner-text .facts .i{color:var(--olive)}
.ss .owner-text blockquote{margin:0;padding:28px 30px;background:var(--surface);border-radius:var(--r);font-size:1.2rem;line-height:1.55}
.ss .owner-text cite{display:block;margin-top:16px;font:600 .95rem/1.3 var(--body);font-style:normal;color:var(--muted)}
@media(max-width:820px){.ss .trio{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.ss .trio :is(figure,.is-figure):first-child{grid-column:span 2}}
@media(max-width:820px){.ss .trio :is(figure,.is-figure):first-child img{aspect-ratio:16/10}}
@media(max-width:820px){.ss .owner-text{grid-template-columns:1fr}}
.ss .work{background:var(--surface)}
.ss .work-head{display:flex;align-items:flex-end;gap:20px 32px;flex-wrap:wrap}
.ss .work-head > div{margin-right:auto}
.ss .filters{display:flex;flex-wrap:wrap;gap:8px}
.ss .filters button{height:40px;padding-inline:16px;border-radius:var(--rb);border:1px solid var(--line);background:var(--ground);color:var(--ink);font:500 .98rem/1 var(--body);cursor:pointer}
.ss .filters button:hover{border-color:var(--olive)}
.ss .filters button[aria-pressed="true"]{background:var(--olive);border-color:var(--olive);color:var(--white)}
.ss .grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:32px}
.ss .grid :is(figure,.is-figure){margin:0;min-width:0}
.ss .grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--r)}
.ss .grid figcaption{margin-top:8px;font-size:.93rem;color:var(--muted)}
@media(max-width:900px){.ss .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.ss .grid{grid-template-columns:1fr 1fr}}
.ss .reviews .wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start}
.ss .score{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.ss .score .n{font:800 3.4rem/1 var(--ss-display)}
.ss .stars{display:flex;gap:2px;color:var(--star)}
.ss .stars .i{width:20px;height:20px}
.ss .score small{display:block;color:var(--muted);font-size:.95rem}
.ss .feature{margin:0}
.ss .feature q{display:block;font:700 clamp(1.7rem,2.8vw,2.3rem)/1.15 var(--ss-display);quotes:"\201C" "\201D";max-width:28ch}
.ss .who{margin-top:16px;color:var(--muted);font-weight:500}
.ss .who b,.ss .side b{color:var(--ink)}
.ss .side{display:grid;gap:26px;padding-top:6px}
.ss .side :is(figure,.is-figure){margin:0;padding-top:22px;border-top:1px solid var(--line)}
.ss .side q{quotes:"\201C" "\201D";font-size:1.12rem}
.ss .side figcaption{margin-top:8px;color:var(--muted);font-size:.95rem}
.ss .ulink{display:inline-flex;align-items:center;gap:8px;font-weight:600;text-decoration:none;border-bottom:2px solid var(--khaki);padding-bottom:2px;justify-self:start}
.ss .ulink:hover{border-color:var(--ink)}
@media(max-width:820px){.ss .reviews .wrap{grid-template-columns:1fr}}
.ss .vh,.ss .vh > :is(img,.elementor-heading-title){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ss .areas{padding-top:0}
.ss .groups{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:34px}
.ss .groups h3,.ss .groups h3.elementor-heading-title{font-size:1.35rem;margin-bottom:14px;color:var(--olive)}
.ss .chips{display:flex;flex-wrap:wrap;gap:8px}
.ss .chips a{display:inline-flex;align-items:center;height:40px;padding-inline:16px;border-radius:var(--rb);background:var(--surface);text-decoration:none;font-weight:500}
.ss .chips a:hover{background:var(--tint)}
.ss .chips a.has-page{background:var(--olive);color:var(--white)}
.ss .chips a.has-page:hover{background:var(--olive-deep)}
.ss .areas .fine{margin-top:22px;color:var(--muted);font-size:.95rem}
@media(max-width:720px){.ss .groups{grid-template-columns:1fr}}
.ss .closer{position:relative;isolation:isolate;overflow:hidden;color:var(--on-photo);background:#1C1E0D}
.ss .closer-bg,.ss .closer-bg > :is(img,.elementor-heading-title){position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:60% 0%}
.ss .closer::before{content:"";position:absolute;inset:0;z-index:-1;background: linear-gradient(180deg,rgba(28,30,13,0) 0,rgba(28,30,13,0) 330px,rgba(28,30,13,.78) 540px,rgba(28,30,13,.96) 660px,#1C1E0D 760px), linear-gradient(90deg,rgba(28,30,13,.92) 0%,rgba(28,30,13,.8) 34%,rgba(28,30,13,.3) 62%,rgba(28,30,13,.05) 85%)}
.ss .est{padding-block:clamp(72px,9vw,120px) clamp(56px,7vw,88px)}
.ss .est .copy{max-width:560px}
.ss .est h2,.ss .est h2.elementor-heading-title{font-size:clamp(2.6rem,5vw,4rem)}
.ss .est p{color:rgba(246,245,236,.88);margin-top:16px;max-width:44ch;font-size:1.1rem}
.ss .est .ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:30px}
.ss .est .btn .elementor-button{background:var(--khaki-soft);color:var(--olive-deep)}
.ss .est .btn .elementor-button .elementor-button-icon{background:var(--olive);color:var(--white)}
.ss .est .btn .elementor-button:hover{background:#E0D6A8}
.ss .est .call .elementor-button{color:var(--on-photo);border-color:var(--khaki-soft)}
.ss .est .call .elementor-button .elementor-button-icon svg{color:var(--khaki-soft)}
.ss .est .call .elementor-button:hover{border-color:var(--on-photo)}
.ss .est dl{margin:30px 0 0;display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:.96rem;color:rgba(246,245,236,.82)}
.ss .est dt{font-weight:600;color:var(--on-photo)}
.ss .est dd{margin:0}
.ss footer{padding-block:24px 36px;color:rgba(246,245,236,.72);font-size:.95rem}
.ss footer .cols{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:36px;padding-top:24px}
.ss footer .fb{display:flex;gap:14px;align-items:flex-start}
.ss footer .fb img{width:64px;height:64px;object-fit:contain}
.ss footer h4,.ss footer h4.elementor-heading-title{font:700 1.1rem/1 var(--ss-display);color:var(--on-photo);margin:0 0 14px}
.ss footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ss footer a{text-decoration:none}
.ss footer a:hover{color:var(--khaki-soft)}
.ss footer .nap b{color:var(--on-photo);display:block;font-size:1.05rem}
.ss footer .legal{margin-top:40px;padding-top:20px;border-top:1px solid rgba(246,245,236,.14);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;font-size:.88rem;color:rgba(246,245,236,.6)}
@media(max-width:860px){.ss footer .cols{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.ss .closer-bg,.ss .closer-bg > :is(img,.elementor-heading-title){object-position:30% 0%}}
@media(max-width:760px){.ss .closer::before{background:linear-gradient(180deg,rgba(28,30,13,.5) 0,rgba(28,30,13,.78) 300px,rgba(28,30,13,.94) 560px,#1C1E0D 700px)}}
@media(max-width:480px){.ss footer .cols{grid-template-columns:1fr}}
@supports(animation-timeline:view()){.ss .reveal,.ss .reveal > :is(img,.elementor-heading-title){animation:lift linear both;animation-timeline:view();animation-range:entry 0% entry 40%}}
@keyframes lift{from{transform:translateY(20px)}to{transform:none}}
body{margin:0}
.ss .phero{background:var(--surface);padding-block:clamp(44px,6vw,80px)}
.ss .phero .wrap{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(28px,5vw,64px);align-items:center}
.ss .phero h1,.ss .phero h1.elementor-heading-title{font-size:clamp(2.6rem,4.2vw,3.9rem)}
.ss .phero h1 em{font-style:normal;color:var(--olive)}
.ss .phero .lede{font-size:clamp(1.08rem,1.4vw,1.2rem);margin-top:18px;max-width:46ch}
.ss .phero .ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:28px}
.ss .phero :is(figure,.is-figure){margin:0}
.ss .phero :is(figure,.is-figure) img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r);box-shadow:0 30px 60px -36px rgba(46,48,18,.5)}
.ss .phero figcaption{margin-top:10px;font-size:.92rem;color:var(--muted)}
.ss .phero .panel{aspect-ratio:4/3;border-radius:var(--r);background:linear-gradient(150deg,#4A4D22,#2E3012);display:grid;place-items:center;text-align:center;padding:32px;color:var(--khaki-soft)}
.ss .phero .panel b{display:block;font:700 1.6rem/1.1 var(--ss-display);color:var(--on-photo)}
.ss .phero .panel span{display:block;margin-top:8px;font-size:.95rem}
.ss .phero.slim .wrap{grid-template-columns:minmax(0,1fr)}
.ss .phero.slim h1,.ss .phero.slim h1.elementor-heading-title{max-width:22ch}
@media(max-width:900px){.ss .phero .wrap{grid-template-columns:1fr}}
.ss .blk{padding-block:clamp(56px,7vw,96px)}
.ss .blk.tinted{background:var(--surface)}
.ss .blk.khaki{background:var(--tint)}
.ss .blk:not(.tinted):not(.khaki):not(.areas) + .blk:not(.tinted):not(.khaki):not(.areas){padding-top:0}
.ss .split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.ss .split.flip > :first-child{order:2}
.ss .split img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}
@media(max-width:860px){.ss .split{grid-template-columns:1fr}}
@media(max-width:860px){.ss .split.flip > :first-child{order:0}}
.ss .prose{max-width:68ch}
.ss .prose p{color:var(--muted);margin-top:14px}
.ss .prose p:first-of-type{margin-top:16px}
.ss .prose h3,.ss .prose h3.elementor-heading-title{margin-top:30px}
.ss .prose ul{color:var(--muted);padding-left:20px;margin:14px 0 0}
.ss .prose li{margin-top:6px}
.ss .prose a{color:var(--ink);text-decoration-color:var(--khaki);text-decoration-thickness:2px;text-underline-offset:3px}
.ss .ticks{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 36px}
.ss .ticks.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.ss .ticks li{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start;min-width:0}
.ss .ticks li .i{width:26px;height:26px;color:var(--olive)}
.ss .ticks b{display:block;font-weight:600}
.ss .ticks span{color:var(--muted);font-size:.97rem;line-height:1.5}
@media(max-width:900px){.ss .ticks.three{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ss .ticks,.ss .ticks.three{grid-template-columns:1fr}}
.ss .fixes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:32px}
.ss .fix{background:var(--ground);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.ss .fix small{color:var(--muted);font-size:.92rem}
.ss .fix b{font:700 1.5rem/1.05 var(--ss-display);color:var(--olive)}
.ss .fix p{color:var(--muted);font-size:.96rem}
@media(max-width:1000px){.ss .fixes{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ss .fixes{grid-template-columns:1fr}}
.ss .opts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:32px}
.ss .opt{margin:0;min-width:0}
.ss .opt img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}
.ss .opt figcaption{margin-top:12px}
.ss .opt b{display:block;font:700 1.3rem/1.1 var(--ss-display)}
.ss .opt span{display:block;color:var(--muted);font-size:.96rem;margin-top:4px}
@media(max-width:1000px){.ss .opts{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.ss .opts{grid-template-columns:1fr}}
.ss .strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:32px}
.ss .strip.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.ss .strip :is(figure,.is-figure){margin:0;min-width:0}
.ss .strip img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
.ss .strip figcaption{margin-top:8px;font-size:.93rem;color:var(--muted)}
@media(max-width:860px){.ss .strip,.ss .strip.three{grid-template-columns:1fr 1fr}}
.ss .faq{max-width:900px;margin-top:28px;border-top:1px solid var(--line)}
.ss .faq details{border-bottom:1px solid var(--line)}
.ss .faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font:700 1.3rem/1.2 var(--ss-display)}
.ss .faq summary::-webkit-details-marker{display:none}
.ss .faq summary .i{width:20px;height:20px;color:var(--olive);transition:transform .25s cubic-bezier(.16,1,.3,1);flex:none}
.ss .faq details[open] summary .i{transform:rotate(180deg)}
.ss .faq .a{padding:0 0 22px;color:var(--muted);max-width:70ch}
.ss .faq .a p+p{margin-top:10px}
.ss .related{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:30px}
.ss .related .mcard{margin:0;padding:0}
.ss .related .mcard:hover{background:transparent}
.ss .related .mcard:hover b{color:var(--olive)}
@media(max-width:900px){.ss .related{grid-template-columns:1fr 1fr}}
.ss .projs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:30px}
.ss .proj{background:var(--ground);border-radius:var(--r);padding:24px;min-width:0}
.ss .blk:not(.tinted) .proj{background:var(--surface)}
.ss .proj b{display:block;font:700 1.45rem/1.05 var(--ss-display)}
.ss .proj .where{display:flex;align-items:center;gap:6px;color:var(--olive);font-weight:600;font-size:.95rem;margin-top:8px}
.ss .proj p{color:var(--muted);font-size:.96rem;margin-top:10px}
@media(max-width:1000px){.ss .projs{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ss .projs{grid-template-columns:1fr}}
.ss .svc-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:34px}
.ss .svc-row{display:grid;grid-template-columns:200px 1fr;gap:22px;align-items:center;text-decoration:none;padding:14px;border-radius:var(--r);background:var(--ground);transition:background .2s}
.ss .blk:not(.tinted) .svc-row{background:var(--surface)}
.ss .svc-row:hover{background:var(--tint)}
.ss .svc-row img,.ss .svc-row .ph{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:linear-gradient(150deg,#4A4D22,#2E3012)}
.ss .svc-row b{display:block;font:700 1.5rem/1.05 var(--ss-display)}
.ss .svc-row span{display:block;color:var(--muted);margin-top:6px;font-size:.97rem}
.ss .svc-row .go{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-weight:600;color:var(--olive)}
@media(max-width:980px){.ss .svc-list{grid-template-columns:1fr}}
@media(max-width:520px){.ss .svc-row{grid-template-columns:1fr}}
.ss .town-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px}
@media(max-width:860px){.ss .town-cards{grid-template-columns:1fr}}
.ss .est-page{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,64px);align-items:start}
@media(max-width:960px){.ss .est-page{grid-template-columns:1fr}}
.ss .form{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:clamp(22px,3vw,36px);display:grid;gap:18px}
.ss .form .note{font-size:.9rem;color:var(--muted);background:var(--surface);border-radius:var(--rb);padding:10px 14px}
.ss .form .row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:560px){.ss .form .row{grid-template-columns:1fr}}
.ss .field{display:grid;gap:7px;min-width:0}
.ss .field label,.ss .field legend{font-weight:600;font-size:.97rem;color:var(--ink);padding:0}
.ss .field .help{font-size:.88rem;color:var(--muted)}
.ss .field input,.ss .field textarea,.ss .field select{width:100%;font:400 1rem/1.4 var(--body);color:var(--ink);background:var(--ground);border:1.5px solid rgba(31,33,19,.28);border-radius:var(--rb);padding:12px 14px;min-height:48px}
.ss .field textarea{min-height:120px;resize:vertical}
.ss .field input[type=file]{padding:10px 12px;cursor:pointer}
.ss .field input[type=file]::file-.elementor-kit-11-button{font:600 .92rem var(--body);color:var(--white);background:var(--olive);border:0;border-radius:calc(var(--rb) - 2px);padding:8px 14px;margin-right:12px;cursor:pointer}
.ss .field input:focus,.ss .field textarea:focus,.ss .field select:focus{outline:none;border-color:var(--olive);box-shadow:0 0 0 3px rgba(68,71,27,.18)}
.ss .field [aria-invalid="true"]{border-color:#9B2C1F}
.ss fieldset.field{border:0;margin:0;padding:0}
.ss .checksel{display:flex;flex-wrap:wrap;gap:8px}
.ss .checksel label{display:inline-flex;align-items:center;gap:8px;height:42px;padding-inline:14px;border-radius:var(--rb);border:1.5px solid rgba(31,33,19,.22);background:var(--ground);font-weight:500;cursor:pointer}
.ss .checksel input{width:18px;height:18px;min-height:0;accent-color:var(--olive);margin:0}
.ss .checksel label:has(input:checked){border-color:var(--olive);background:var(--tint)}
.ss .form-msg{color:#8A2418;font-weight:600}
.ss .form .btn .elementor-button{justify-self:start}
.ss .nextsteps{list-style:none;margin:20px 0 0;padding:0}
.ss .nextsteps li{display:grid;grid-template-columns:28px 1fr;gap:12px;padding-block:14px;border-top:1px solid var(--line)}
.ss .nextsteps li .i{width:24px;height:24px;color:var(--olive);margin-top:2px}
.ss .nextsteps b{display:block}
.ss .nextsteps span{color:var(--muted);font-size:.96rem}
.ss .aside-card{background:var(--surface);border-radius:var(--r);padding:clamp(22px,3vw,32px)}
.ss .aside-card h2,.ss .aside-card h2.elementor-heading-title{font-size:clamp(1.8rem,2.6vw,2.3rem)}
.ss .aside-card dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:20px 0 0}
.ss .aside-card dt{font-weight:600}
.ss .aside-card dd{margin:0;color:var(--muted)}
.ss .legal-text{max-width:72ch}
.ss .legal-text h2,.ss .legal-text h2.elementor-heading-title{font-size:1.8rem;margin-top:36px}
.ss .legal-text p,.ss .legal-text li{color:var(--muted)}
.ss .legal-text p{margin-top:12px}
.ss .closer.slim::before{background:#1C1E0D}
.ss .closer.slim .closer-bg,.ss .closer.slim .closer-bg > :is(img,.elementor-heading-title){display:none}
.ss .closer.slim footer{padding-top:56px}
.ss .chips span{display:inline-flex;align-items:center;height:40px;padding-inline:16px;border-radius:var(--rb);background:var(--surface);font-weight:500}
.ss .blk.tinted .chips span,.ss .blk.tinted .chips a:not(.has-page){background:var(--ground)}
.ss .projs.three{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:860px){.ss .projs.three{grid-template-columns:1fr}}
.ss .town-cards .mcard{margin:0;padding:0}
.ss .town-cards .mcard:hover{background:transparent}
.ss .blk .split{margin-top:30px;align-items:start}
.ss .blk .split .prose p:first-of-type{margin-top:0}

/* --- .elementor-kit-11 fixups for Elementor's widget wrappers --- */
.ss .checks .elementor-widget-heading + .elementor-widget-text-editor p{color:var(--muted);margin-top:10px;max-width:32ch}
.ss .water .elementor-widget-text-editor > p{color:var(--muted);margin-top:8px}
.ss .split.flip > .elementor-widget:first-child > *{order:2}
@media (max-width:860px){.ss .split.flip > .elementor-widget:first-child > *{order:0}}
.ss .split > .elementor-widget-image img,.ss .split > img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}


/* --- header (Theme Builder) : mega menu built from containers + button widgets --- */
.elementor-location-header{position:sticky;top:0;z-index:20}
.admin-bar .elementor-location-header{top:32px}
@media (max-width:782px){.admin-bar .elementor-location-header{top:46px}}
.ss .top{position:relative}
/* panels span the whole header like the comp: only .top is a containing block */
.ss .top .bar,.ss .top nav,.ss .top .menu,.ss .top .mi{position:static}
@media (min-width:1041px){.ss .top .navwrap{position:static}}
.ss .menu{display:flex}
.ss .menu > .mi{height:100%;display:flex;align-items:center}
.ss .mtrig .elementor-button{display:inline-flex;align-items:center;gap:6px;height:40px;padding-inline:14px;border:0;border-radius:var(--rb);background:transparent;color:var(--ink);font:500 1rem/1 var(--body);cursor:pointer;white-space:nowrap}
.ss .mtrig .elementor-button-icon{order:2}
.ss .mtrig .elementor-button svg{width:12px;height:12px;transition:transform .25s cubic-bezier(.16,1,.3,1)}
.ss .mtrig .elementor-button:hover,.ss .mtrig .elementor-button[aria-expanded="true"]{background:var(--surface)}
.ss .mtrig .elementor-button[aria-expanded="true"] svg{transform:rotate(180deg)}
body:not(.elementor-editor-active) .ss .mega:not(.is-open){display:none}
.ss .mega.is-open{display:block}
@media (prefers-reduced-motion:no-preference){.ss .mega.is-open{animation:drop .28s cubic-bezier(.16,1,.3,1)}}
.ss .burger .elementor-button{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--rb);border:1px solid var(--line);background:var(--ground);color:var(--ink);cursor:pointer}
.ss .burger .elementor-button svg{width:20px;height:20px}
.ss .burger .elementor-button-text{display:none}
.ss .burger .elementor-button[aria-expanded="true"] .elementor-button-icon{display:none}
.ss .burger .elementor-button[aria-expanded="true"]::after{content:"\00d7";font:400 30px/1 var(--body);margin-top:-3px}
body:not(.elementor-editor-active) .ss .burger{display:none}
@media (max-width:1040px){
  body:not(.elementor-editor-active) .ss .burger{display:contents}
  body:not(.elementor-editor-active) .ss .navwrap:not(.is-open){display:none}
  .ss .menu > .mi{height:auto;display:block;border-bottom:1px solid var(--line)}
  .ss .mtrig .elementor-button{width:100%;justify-content:space-between;height:58px;padding-inline:0;font:700 1.35rem/1 var(--ss-display);background:transparent!important}
}
.ss .brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.ss .top .bar > .elementor-widget-text-editor:first-child{margin-right:auto}
/* --- footer (Theme Builder) --- */
.ss.closer-root{background:#1C1E0D}
.ss .closer{display:block}
.ss .closer .closer-bg img,.ss .closer img.closer-bg{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:60% 0%;border-radius:0;max-width:none}
.ss .closer > .elementor-widget-image{position:absolute;inset:0;z-index:-2}
@media (max-width:760px){.ss .closer img.closer-bg{object-position:30% 0%}}
.ss footer .nap{line-height:1.6}
/* --- FAQ: nested accordion standing in for the comp's <details> --- */
.ss .ss-acc{--n-accordion-icon-normal-color:var(--olive);--n-accordion-icon-active-color:var(--olive);--n-accordion-title-normal-color:var(--ink);--n-accordion-title-hover-color:var(--olive);--n-accordion-title-active-color:var(--ink);max-width:900px;margin-top:28px;border-top:1px solid var(--line)}
.ss .ss-acc .e-n-accordion{display:block}
.ss .ss-acc .e-n-accordion-item{background:none;margin:0;border-bottom:1px solid var(--line)}
.ss .ss-acc .e-n-accordion-item-title{background:none;border:0;border-radius:0;padding:20px 0;margin:0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none}
.ss .ss-acc .e-n-accordion-item-title::-webkit-details-marker{display:none}
.ss .ss-acc .e-n-accordion-item-title-header{flex:1 1 auto;margin:0}
.ss .ss-acc .e-n-accordion-item-title-text{font:700 1.3rem/1.2 var(--ss-display);color:var(--ink);text-transform:none;letter-spacing:0;margin:0}
.ss .ss-acc .e-n-accordion-item-title-icon{order:1;flex:none;width:auto}
.ss .ss-acc .e-n-accordion-item-title-icon .e-opened{display:none}
.ss .ss-acc .e-n-accordion-item-title-icon .e-closed{display:flex}
.ss .ss-acc .e-n-accordion-item-title-icon svg{width:18px;height:18px;fill:var(--olive);transition:transform .25s cubic-bezier(.16,1,.3,1)}
.ss .ss-acc .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg{transform:rotate(180deg)}
.ss .ss-acc .e-n-accordion-item > .e-con,.ss .ss-acc .faq-answer{border:0;background:none;padding:0 0 22px}
.ss .ss-acc .faq-answer p{color:var(--muted);max-width:70ch}
.ss .ss-acc .faq-answer p+p{margin-top:10px}
/* --- estimate form: Elementor Pro form widget restyled to the comp's .form --- */
.ss .ss-form .elementor-form-fields-wrapper{margin:0!important;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ss .ss-form .elementor-field-group{padding:0!important;margin:0!important;width:auto!important;max-width:none!important;grid-column:1/-1;display:grid;gap:7px}
.ss .ss-form .elementor-field-group.elementor-col-50{grid-column:auto}
@media (max-width:560px){.ss .ss-form .elementor-form-fields-wrapper{grid-template-columns:1fr}.ss .ss-form .elementor-field-group.elementor-col-50{grid-column:1/-1}}
.ss .ss-form .elementor-field-label{font-weight:600!important;font-size:.97rem!important;color:var(--ink)!important;padding:0!important;margin:0!important}
.ss .ss-form input.elementor-field,.ss .ss-form textarea.elementor-field,.ss .ss-form select.elementor-field{width:100%;font:400 1rem/1.4 var(--body)!important;color:var(--ink)!important;background:var(--ground)!important;border:1.5px solid rgba(31,33,19,.28)!important;border-radius:var(--rb)!important;padding:12px 14px!important;min-height:48px!important;box-shadow:none!important}
.ss .ss-form textarea.elementor-field{min-height:120px!important}
.ss .ss-form .elementor-field:focus{outline:none!important;border-color:var(--olive)!important;box-shadow:0 0 0 3px rgba(68,71,27,.18)!important}
.ss .ss-form .elementor-field-subgroup{display:flex;flex-wrap:wrap;gap:8px}
.ss .ss-form .elementor-field-option{display:inline-flex;align-items:center;gap:8px;height:42px;padding-inline:14px;border-radius:var(--rb);border:1.5px solid rgba(31,33,19,.22);background:var(--ground);margin:0!important}
.ss .ss-form .elementor-field-option:has(input:checked){border-color:var(--olive);background:var(--tint)}
.ss .ss-form .elementor-field-option input{width:18px;height:18px;accent-color:var(--olive);margin:0}
.ss .ss-form .elementor-field-option label{font-weight:500;cursor:pointer;margin:0}
.ss .ss-form .elementor-field-type-submit{grid-column:1/-1}
.ss .ss-form .elementor-field-type-submit .elementor-button{display:inline-flex!important;align-items:center;gap:14px;height:52px!important;padding:0 22px!important;border-radius:var(--rb)!important;font:600 1rem/1 var(--body)!important;background:var(--olive)!important;color:var(--white)!important;width:auto!important;border:0!important}
.ss .ss-form .elementor-field-type-submit .elementor-button:hover{background:var(--olive-deep)!important}
.ss .ss-form .e-form__buttons{display:flex!important;justify-content:flex-start!important}
.ss .ss-form .elementor-field-type-submit .elementor-button,.ss .ss-form .e-form__buttons button.elementor-button[type=submit]{padding:0 6px 0 22px!important;flex:0 0 auto!important;width:auto!important;max-width:max-content}
.ss .ss-form .elementor-field-type-submit .elementor-button-content-wrapper{display:flex;align-items:center;gap:14px;flex-direction:row!important}
.ss .ss-form .elementor-field-type-submit .elementor-button-text{order:1}
.ss .ss-form .elementor-field-type-submit .elementor-button-icon{order:2;width:40px;height:40px;border-radius:6px;display:grid;place-items:center;background:var(--khaki-soft);margin:0!important;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.ss .ss-form .elementor-field-type-submit .elementor-button-icon svg{width:16px;height:16px;fill:var(--olive-deep)}
.ss .ss-form .elementor-field-type-submit .elementor-button:hover .elementor-button-icon{transform:translateX(3px)}
.ss .ss-form .elementor-select-wrapper{background:none!important;border:0!important;padding:0!important;min-height:0!important;position:relative}
.ss .ss-form .elementor-select-wrapper select{width:100%;font:400 1rem/1.4 var(--body)!important;color:var(--ink)!important;background:var(--ground)!important;border:1.5px solid rgba(31,33,19,.28)!important;border-radius:var(--rb)!important;padding:12px 40px 12px 14px!important;min-height:48px!important;box-shadow:none!important;appearance:none}
.ss .ss-form .elementor-select-wrapper select:focus{outline:none!important;border-color:var(--olive)!important;box-shadow:0 0 0 3px rgba(68,71,27,.18)!important}
.ss .ss-form .select-caret-down-wrapper{right:14px!important;font-size:12px!important;color:var(--ink)!important}
.ss .ss-form .select-caret-down-wrapper svg{fill:currentColor;width:12px}
.ss .ss-form input[type=file]{padding:8px 10px!important}
.ss .ss-form input[type=file]::file-.elementor-kit-11-button{font:600 .92rem var(--body);color:var(--white);background:var(--olive);border:0;border-radius:calc(var(--rb) - 2px);padding:8px 14px;margin-right:12px;cursor:pointer}
.ss .ss-form .elementor-message{font-weight:600;margin-top:12px}
.ss .ss-form .elementor-message.elementor-message-danger,.ss .ss-form .elementor-error .elementor-field{color:#8A2418}
.ss .ss-form .elementor-error .elementor-field{border-color:#9B2C1F!important}
.ss .ss-form .elementor-field-type-html{font-size:.88rem;color:var(--muted)}
/* mega panel photos: tinted box until the photo arrives */
.ss .mega img{background:var(--surface)}
/* hidden helper widgets (schema, site script) */
.ss .ss-hidden{position:absolute!important;width:0!important;height:0!important;overflow:hidden!important}/* End custom CSS */