/* SaleGopher */
:root{
  --paper:#ffffff; --sky:#eef4ff; --sky2:#d9e6ff; --cream:#fff8e4; --mintbg:#e8fff3;
  --ink:#14213d; --ink2:#3d4a66;
  --cobalt:#2952ff; --cobalt-d:#1a3ad6; --mint:#5cffb0; --mint-d:#1fd88a; --sun:#ffd23f; --sun-d:#e6b000;
  --dirt:#9a6332; --dirt-d:#6b4220; --green:#0f8a52; --red:#c81e2c;
  --line:#d3dcea; --r:6px;
  --display:"Bricolage Grotesque","Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
  --body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--body);overflow-x:hidden}
img,svg{max-width:100%;display:block}
a{color:var(--cobalt-d)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--cobalt);outline-offset:2px}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
h1,h2,h3{font-family:var(--display);line-height:1.06;margin:0 0 .5em;letter-spacing:-.02em;color:var(--ink)}
h1{font-size:clamp(2.2rem,5.6vw,4rem);font-weight:800}
h2{font-size:clamp(1.65rem,3.4vw,2.5rem);font-weight:800}
h3{font-size:1.25rem;font-weight:800}
h1 em,h2 em{font-style:normal;color:var(--cobalt);background:linear-gradient(transparent 62%,var(--mint) 62%,var(--mint) 92%,transparent 92%)}
p{margin:0 0 1em;max-width:68ch}
.lede{font-size:1.18rem;color:var(--ink2);max-width:46ch}
.kicker{display:inline-block;font:800 .8rem var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--cobalt-d);margin-bottom:10px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:99}

/* header */
.top{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:40}
.top .wrap{display:flex;align-items:center;gap:16px;min-height:68px}
.brand{display:flex;align-items:center;text-decoration:none;flex:none}
.brand img{width:170px;height:32px}
.nav{display:flex;gap:2px;margin-left:auto;align-items:center}
.nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:.94rem;padding:8px 9px;border-radius:var(--r);white-space:nowrap}
.nav a:hover,.nav a[aria-current=page]{background:var(--sky)}
.nav a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--mint-d)}
.tel{font-weight:800;white-space:nowrap;text-decoration:none;color:var(--ink)}
.bbb{display:block;width:150px;flex:none}
.bbb img{width:150px;height:auto;max-height:49px;overflow:hidden;font-size:11px}
.menu-btn{display:none;margin-left:auto;background:#fff;border:2px solid var(--ink);border-radius:var(--r);padding:8px 12px;font:700 .95rem var(--body);color:var(--ink);cursor:pointer;min-height:44px}
@media (max-width:1180px){
  .menu-btn{display:block}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;align-items:stretch;padding:8px 20px 16px;border-bottom:2px solid var(--ink);margin:0;box-shadow:0 12px 24px rgba(20,33,61,.12)}
  .nav.open{display:flex}
  .nav a{padding:12px 10px;font-size:1.05rem}
  .top .tel-d{display:none}
}
.mbar{display:none}
@media (max-width:1180px){
  .mbar{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:6px 20px;background:var(--mintbg);border-bottom:1px solid var(--line)}
  .mbar .bbb,.mbar .bbb img{width:110px}
}

/* buttons: squared, outlined, never pills */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:12px 22px;border-radius:var(--r);border:2px solid var(--ink);background:var(--cobalt);color:#fff;font:700 1.02rem var(--body);text-decoration:none;cursor:pointer;box-shadow:3px 3px 0 var(--ink);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.btn:hover{background:var(--cobalt-d);transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.btn.call{background:var(--mint);color:var(--ink)}
.btn.call:hover{background:#7dffc1}
.btn.alt{background:#fff;color:var(--ink)}
.btn.alt:hover{background:var(--sky)}
.btn.sun{background:var(--sun);color:var(--ink)}
.btn.sun:hover{background:#ffdc66}
.btn svg{width:20px;height:20px;flex:none}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
@media (max-width:520px){.ctas .btn{flex:1 1 100%}}

/* hero */
.hero{background:radial-gradient(1200px 400px at 85% 0%,var(--mintbg),transparent 60%),linear-gradient(180deg,var(--sky) 0%,#fff 100%);padding:40px 0 56px;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center}
.hero h1{max-width:14ch}
@media (max-width:860px){.hero{padding:22px 0 34px}.hero .wrap{grid-template-columns:1fr;gap:26px}}
.hero-art{position:relative;max-width:470px;width:100%;margin:0 auto;min-height:330px}
.hero-art .gopher{position:absolute;left:-6px;bottom:-10px;width:200px;z-index:2}
.sign{position:relative;margin-left:120px}
.sign .board{position:relative;background:#fff;border:3px solid var(--ink);border-radius:10px;padding:20px 20px 16px;box-shadow:7px 7px 0 var(--sun)}
.sign .tag{display:inline-block;background:var(--sun);color:var(--ink);font:800 1.2rem var(--display);padding:3px 10px;border:2px solid var(--ink);border-radius:4px;margin-bottom:12px;letter-spacing:.02em}
.sign .addr{font:800 clamp(1.02rem,3vw,1.35rem) var(--display);word-break:break-all;min-height:2.6em;transition:opacity .5s ease}
.sign .meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 10px;margin-top:10px;padding-top:10px;border-top:2px dashed var(--line);font-size:.92rem;color:var(--ink2)}
.sign .meta b{color:var(--ink)}
.sign .post{width:12px;height:110px;background:var(--dirt);margin:0 auto;border:2px solid var(--ink);border-top:0}
@media (max-width:860px){.hero-art{max-width:360px;min-height:0}.hero-art .gopher{width:140px;left:-10px;bottom:-6px}.sign{margin-left:92px}.sign .post{height:70px}}
@media (max-width:400px){.hero-art .gopher{width:118px}.sign{margin-left:78px}.sign .board{padding:16px 14px 12px}}

/* gopher motion: gentle only */
.gopher .g-bob{animation:bob 4.8s ease-in-out infinite;transform-origin:120px 240px}
.gopher .g-ring{animation:ring 2.8s ease-in-out infinite;transform-origin:186px 150px}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes ring{0%,100%{opacity:.25}50%{opacity:.85}}

/* page head */
.phead{background:radial-gradient(900px 300px at 90% 0%,var(--mintbg),transparent 60%),var(--sky);padding:30px 0 34px;border-bottom:1px solid var(--line)}
.phead .wrap{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}
.phead .mini{width:150px}
@media (max-width:760px){.phead{padding:18px 0 26px}.phead .wrap{grid-template-columns:1fr}.phead .mini{display:none}}
.crumbs{font-size:.9rem;margin-bottom:8px;color:var(--ink2)}
.crumbs a{color:var(--ink2)}

/* sections */
section{padding:64px 0}
section.tint{background:var(--sky)}
section.cream{background:var(--cream)}
.band{background:var(--cobalt);color:#fff}
.band h2,.band p{color:#fff}
.band a:not(.btn){color:#fff}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}
@media (max-width:860px){.grid3,.grid2{grid-template-columns:1fr}section{padding:46px 0}}
.steps{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;counter-reset:s}
.steps li{counter-increment:s;border-top:4px solid var(--ink);padding-top:14px}
.steps li::before{content:counter(s);font:800 2.4rem var(--display);color:var(--cobalt);display:block;line-height:1;margin-bottom:8px}
@media (max-width:860px){.steps{grid-template-columns:1fr}}
.plain{list-style:none;padding:0;margin:0}
.plain li{padding:10px 0 10px 30px;border-bottom:1px solid var(--line);position:relative}
.plain li::before{content:"";position:absolute;left:4px;top:18px;width:12px;height:12px;background:var(--mint-d);border:2px solid var(--ink);border-radius:2px}
.panel{background:#fff;border:2px solid var(--ink);border-radius:var(--r);padding:26px;box-shadow:5px 5px 0 var(--sky2)}
.panel.flat{border-color:var(--line);box-shadow:none}
.note{font-size:.92rem;color:var(--ink2)}
.straight{border-left:5px solid var(--sun);background:var(--cream);padding:14px 18px;border-radius:0 var(--r) var(--r) 0;max-width:none}

/* plans */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:22px;align-items:stretch}
@media (max-width:900px){.plans{grid-template-columns:1fr}}
.plan{background:#fff;border:2px solid var(--ink);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;box-shadow:5px 5px 0 var(--sky2)}
.plan.pro{box-shadow:6px 6px 0 var(--mint-d)}
.plan.prime{box-shadow:6px 6px 0 var(--sun)}
.plan .tier{font:800 .85rem var(--body);letter-spacing:.12em;color:var(--cobalt-d)}
.plan h3{margin:4px 0 2px}
.price{font:800 2.5rem var(--display);margin:8px 0 2px;line-height:1}
.price small{font:600 1rem var(--body);color:var(--ink2)}
.price .from{display:block;font:700 .85rem var(--body);color:var(--ink2);letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}
.plan .fit{color:var(--ink2);font-size:.95rem;margin:6px 0 12px}
.plan ul{list-style:none;padding:0;margin:0 0 18px}
.plan li{padding:7px 0 7px 26px;position:relative;border-bottom:1px solid var(--line);font-size:.97rem}
.plan li::before{content:"";position:absolute;left:2px;top:14px;width:12px;height:7px;border-left:3px solid var(--green);border-bottom:3px solid var(--green);transform:rotate(-45deg)}
.plan .btn{margin-top:auto}
.terms{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;padding:16px 18px;border:2px dashed var(--ink);border-radius:var(--r);background:#fff;font-weight:700}
.terms span{display:flex;align-items:center;gap:8px}
.terms span::before{content:"";width:10px;height:10px;background:var(--mint-d);border:2px solid var(--ink)}

/* old way vs new way */
.vs{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:26px}
@media (max-width:860px){.vs{grid-template-columns:1fr}}
.way{border:2px solid var(--ink);border-radius:var(--r);background:#fff;padding:22px;position:relative}
.way.old{background:#fafbfd;border-style:dashed}
.way.new{box-shadow:6px 6px 0 var(--mint-d)}
.way .lbl{display:inline-block;font:800 .8rem var(--body);letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border:2px solid var(--ink);border-radius:4px;margin-bottom:10px}
.way.old .lbl{background:#e9edf3}
.way.new .lbl{background:var(--mint)}
.way svg.flow{width:100%;height:auto;margin:6px 0 10px}
.way svg text{font-family:var(--body);font-weight:700;fill:var(--ink)}
.flow .dot{animation:fly 3.2s ease-in-out infinite}
.flow .dot.d2{animation-delay:.12s}.flow .dot.d3{animation-delay:.24s}.flow .dot.d4{animation-delay:.36s}
@keyframes fly{0%,12%{transform:translate(0,0);opacity:0}20%{opacity:1}75%{transform:translate(var(--dx),var(--dy));opacity:1}90%,100%{transform:translate(var(--dx),var(--dy));opacity:0}}
.flow .hit{animation:hit 3.2s ease-in-out infinite}
@keyframes hit{0%,70%{transform:scale(1)}80%{transform:scale(1.08)}100%{transform:scale(1)}}
.way ul{list-style:none;margin:0;padding:0}
.way li{padding:7px 0 7px 28px;position:relative;border-top:1px solid var(--line)}
.way.old li::before{content:"";position:absolute;left:4px;top:17px;width:13px;height:3px;background:var(--ink2)}
.way.new li::before{content:"";position:absolute;left:4px;top:12px;width:12px;height:7px;border-left:3px solid var(--green);border-bottom:3px solid var(--green);transform:rotate(-45deg)}

/* listings + dig */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}
.filters button{background:#fff;border:2px solid var(--ink);border-radius:var(--r);padding:8px 14px;font:700 .95rem var(--body);color:var(--ink);cursor:pointer;min-height:44px}
.filters button[aria-pressed=true]{background:var(--ink);color:#fff}
.lots{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media (max-width:980px){.lots{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.lots{grid-template-columns:1fr}}
.lot{border:2px solid var(--line);border-radius:var(--r);padding:20px;background:#fff;display:flex;flex-direction:column;transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .55s ease,border-color .2s}
.lot:hover{border-color:var(--ink)}
.lot .d{font:800 1.08rem var(--display);word-break:break-all;margin:8px 0 4px}
.lot .k{color:var(--ink2);font-size:.95rem;margin-bottom:14px}
.lot .st{align-self:flex-start;font-size:.82rem;font-weight:700;padding:3px 8px;border-radius:4px;background:var(--sky2);color:var(--ink);border:1px solid var(--ink)}
.lot .st.open{background:#d4f8e6;color:#075c34}
.lot .st.now{background:var(--sun);color:var(--ink)}
.lot .btn{margin-top:auto;min-height:46px;box-shadow:2px 2px 0 var(--ink)}
.lot[hidden]{display:none}
.dig-ready .lot{opacity:0;transform:translateY(34px) scale(.97)}
.dig-ready.dug .lot{opacity:1;transform:none}
.digbar{display:flex;align-items:flex-end;gap:16px;margin:8px 0 6px}
.digbar .mini-dig{width:96px;flex:none}
.digbar p{margin:0 0 8px;font-weight:700}
.mini-dig .g-pop{transform:translateY(60px);transition:transform .7s cubic-bezier(.2,.9,.3,1.3)}
.dug-bar .mini-dig .g-pop{transform:none}
.mini-dig .dirt{opacity:0}
.dug-bar .mini-dig .dirt{animation:dirt 1.1s ease-out .2s 1 both}
.mini-dig .dirt.r{--dx:18px}.mini-dig .dirt.l{--dx:-18px}
@keyframes dirt{0%{opacity:0;transform:translate(0,0)}25%{opacity:1}100%{opacity:0;transform:translate(var(--dx),-26px)}}
.pilots{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}
@media (max-width:760px){.pilots{grid-template-columns:1fr}}
.pilot{background:#fff;border:2px solid var(--ink);border-radius:var(--r);padding:22px;box-shadow:6px 6px 0 var(--sun);display:flex;flex-direction:column}
.pilot .d{font:800 clamp(1.15rem,3.4vw,1.5rem) var(--display);word-break:break-all;margin:10px 0 4px}
.pilot .btn{align-self:flex-start;margin-top:14px}

/* forms */
form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:620px){form .row{grid-template-columns:1fr}}
label{display:block;font-weight:700;font-size:.95rem;margin:12px 0 6px}
input,select,textarea{width:100%;font:400 1rem var(--body);padding:12px;border:2px solid #b9c5d8;border-radius:var(--r);background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{border-color:var(--cobalt)}
input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--red)}
textarea{min-height:110px;resize:vertical}
.consent{font-size:.82rem;color:var(--ink2);margin:12px 0}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.status{margin-top:12px;font-weight:700;min-height:1.6em}
.status.ok{color:#075c34}.status.err{color:var(--red)}

/* calculator */
.calc{display:grid;grid-template-columns:1fr 1fr;gap:32px}
@media (max-width:860px){.calc{grid-template-columns:1fr}}
.calc output{display:block;font:800 1.9rem var(--display);color:var(--ink);line-height:1.15}
.calc .res{background:var(--sky);border:2px solid var(--ink);border-radius:var(--r);padding:20px 22px;align-self:start}
.calc .res div{padding:9px 0;border-bottom:1px solid var(--sky2)}
.calc .res div:last-child{border-bottom:0}
.calc .res .big{background:#fff;border:2px solid var(--ink);border-radius:var(--r);padding:12px 14px;margin-bottom:8px}
.calc .res .neg output{color:var(--red)}
.calc .res .pos output{color:#075c34}
.presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.presets button{background:#fff;border:2px solid var(--ink);border-radius:var(--r);padding:7px 12px;font:700 .92rem var(--body);color:var(--ink);cursor:pointer;min-height:44px}
.presets button[aria-pressed=true]{background:var(--mint)}
input[type=range]{padding:0;border:0;accent-color:var(--cobalt);height:32px}

/* faq */
details{border-bottom:1px solid var(--line);padding:16px 0}
summary{font-weight:800;cursor:pointer;font-size:1.08rem;list-style-position:outside}
details p{margin:10px 0 0}

/* footer */
footer{background:var(--ink);color:#e7ecf6;padding:48px 0 84px}
footer a{color:#fff}
footer strong{color:#fff}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
@media (max-width:860px){footer .cols{grid-template-columns:1fr}}
footer .flogo{background:#fff;border-radius:var(--r);padding:8px 10px;display:inline-block;margin-bottom:12px}
footer .flogo img{width:160px;height:30px}
footer .bbb{background:#fff;padding:6px;border-radius:var(--r);width:auto;display:inline-block}
footer ul{list-style:none;padding:0;margin:0}footer li{padding:4px 0}
.fnote{color:#c9d3e6;margin-top:24px;font-size:.9rem}
.heart{display:flex;align-items:center;justify-content:center;gap:8px;padding:22px 0 4px;font-size:.95rem}
.heart svg{width:18px;height:18px;animation:beat 2.4s ease-in-out infinite}
@keyframes beat{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.dig-ready .lot{opacity:1;transform:none}.mini-dig .g-pop{transform:none}}
.pilot .st{align-self:flex-start;font-size:.82rem;font-weight:700;padding:3px 8px;border-radius:4px;background:var(--sun);color:var(--ink);border:1px solid var(--ink)}
.hero .lede{max-width:50ch}
