/* Folsom Family Dog Co. — movement, warmth, and clear local service. */
:root{--ink:#15364e;--paper:#fffaf2;--muted:#4c5c50;--line:#d6d6c8;--accent:#ffca63;--wash:#edf5f8;--serif:Georgia,serif}
body{background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
a:hover{color:#9b5e21}
.wrap{width:min(1240px,calc(100% - 80px))}
header{background:#fffaf2f5;backdrop-filter:blur(18px);border-bottom:1px solid #15364e15}
.header-inner{min-height:84px}.brand{color:var(--ink);font-size:19px;letter-spacing:1.1px}.brand span{font-size:12px;letter-spacing:3.8px;margin-top:5px}
.nav{gap:25px}.nav a{font-weight:600;font-size:14px}.nav .button{color:#fff}
.button,button:not(.menu-toggle):not([data-close-inquiry]):not(#acknowledge-policy){border-radius:5px;background:var(--ink);border-color:var(--ink);color:#fff;position:relative;overflow:hidden;transition:background .22s,color .22s,transform .22s,box-shadow .22s}
.button:hover,button:not(.menu-toggle):not([data-close-inquiry]):not(#acknowledge-policy):hover{background:#285c79;border-color:#285c79;color:#fff;transform:translateY(-2px);box-shadow:0 9px 22px #15364e25}
.button:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
/* Two quiet paw marks walk onto one edge of a highlighted button. */
.button::before,.button::after,[data-open-inquiry]::before,[data-open-inquiry]::after,.inquiry-dock button::before,.inquiry-dock button::after{content:"";position:absolute;right:3px;top:3px;width:13px;height:13px;background:var(--accent);mask:url('/assets/paw-mark.svg') center/contain no-repeat;opacity:0;transform:translate(8px,-8px) rotate(-25deg);pointer-events:none;transition:opacity .26s,transform .35s}
.button::after,[data-open-inquiry]::after,.inquiry-dock button::after{right:15px;top:15px;width:10px;height:10px;transition-delay:.08s}
.button:hover::before,.button:hover::after,.button:focus-visible::before,.button:focus-visible::after,[data-open-inquiry]:hover::before,[data-open-inquiry]:hover::after,[data-open-inquiry]:focus-visible::before,[data-open-inquiry]:focus-visible::after,.inquiry-dock button:hover::before,.inquiry-dock button:hover::after{opacity:1;transform:translate(0,0) rotate(-25deg)}
.button-ghost{background:transparent!important;border-color:#fff9!important;color:#fff!important}.button-ghost:hover{background:#ffffff24!important}
.section{padding:100px 0}.section h2{font-family:Arial,Helvetica,sans-serif;font-weight:650;letter-spacing:-1.8px}
.eyebrow{display:block!important;font-size:12px!important;font-weight:800;letter-spacing:.16em;text-transform:uppercase;line-height:1.35;margin:0 0 22px!important;color:#9c4d23}
.inline-arrow{font-size:15px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px;white-space:normal}
.new-hero{height:min(820px,calc(100svh - 84px));min-height:630px;position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden;background:#45687b;color:white}
.new-hero picture,.new-hero picture img{position:absolute;inset:0;width:100%;height:100%}.new-hero picture{z-index:-2}.new-hero picture img{object-fit:cover;object-position:center 52%}
.new-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,31,46,.85) 0%,rgba(9,31,46,.66) 31%,rgba(9,31,46,.17) 62%,rgba(9,31,46,.02) 100%),linear-gradient(0deg,rgba(9,31,46,.27),transparent 34%)}
.new-hero-content{padding:60px 0 95px}.new-hero .eyebrow{color:#ffcb81;letter-spacing:.11em}.new-hero h1{font-size:clamp(49px,6.5vw,92px);line-height:1.045;letter-spacing:-.055em;font-weight:650;max-width:740px;margin:0 0 24px;text-wrap:balance}.new-hero-content>p:not(.eyebrow){font-size:clamp(19px,2vw,23px);line-height:1.48;max-width:530px;margin:0;color:#fff}
.new-hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:32px}.new-hero .button,.new-final .button{min-height:56px;padding:15px 27px;background:var(--accent);border-color:var(--accent);color:#15364e}.new-hero .button:hover,.new-final .button:hover{background:#ffe08a;border-color:#ffe08a;color:#15364e}
.new-hero .button-ghost,.new-final .button-ghost{color:#fff}.hero-place{position:absolute;right:36px;bottom:25px;font-size:12px;font-weight:700;letter-spacing:.02em;color:#fff}
.trust-ribbon{background:var(--ink);color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:center;min-height:86px}.trust-grid span{display:flex;align-items:center;gap:11px;font-size:14px;font-weight:600;line-height:1.3}.trust-grid b{color:var(--accent);font-size:12px}
.new-section-heading{max-width:760px;margin-bottom:48px}.new-section-heading h2,.new-pricing-heading h2,.new-yard h2,.new-story h2,.new-proof h2,.new-final h2{font-size:clamp(37px,4.7vw,61px);line-height:1.1;letter-spacing:-.045em;margin:0 0 20px;font-weight:650;text-wrap:balance}.new-section-heading>p:not(.eyebrow),.new-pricing-heading p:not(.eyebrow){font-size:19px;color:var(--muted);line-height:1.55;margin:0}
.new-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.new-step-grid article{border-top:2px solid var(--ink);padding:25px 18px 0 0}.new-step-grid article>span{display:block;color:#af6024;font-size:14px;font-weight:800;margin-bottom:34px}.new-step-grid h3{font-size:25px;line-height:1.2;letter-spacing:-.6px;margin:0 0 14px}.new-step-grid p{font-size:16px;color:var(--muted);line-height:1.6;margin:0}.section-cta{display:flex;align-items:center;gap:28px;margin-top:44px;flex-wrap:wrap}
.new-pricing{background:#eff5f6}.new-pricing-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:37px}.new-pricing-heading>div{max-width:670px}.new-pricing-heading .inline-arrow{margin-bottom:8px}
.price-list{border:0;padding:0;gap:14px}.price-list>div{position:relative;border:1px solid #c9cbb9;background:#fffdf9;padding:30px 27px 32px;min-height:250px}.price-list>div:last-child{border:1px solid #c9cbb9}.price-list .featured-rate{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:none}.price-list>div span{font-size:19px;font-weight:700}.price-list strong{font-family:Arial,Helvetica,sans-serif;font-size:62px;font-weight:700;letter-spacing:-.06em;margin:9px 0 3px;line-height:1.1}.price-list p{font-size:15px;line-height:1.5}.price-list .featured-rate p{color:#eaf5f7}.price-list .featured-rate:before{content:"A good place to start";display:block;text-transform:uppercase;font-size:10px;letter-spacing:.11em;color:#ffcc6c;margin-bottom:14px;font-weight:800}.price-list .featured-rate span{display:block}.price-list+.help{font-size:14px;margin-top:18px;color:var(--muted)}.rate-bottom{border-top:1px solid #c9cbb9;margin-top:31px;padding-top:25px;display:flex;justify-content:space-between;align-items:center;gap:20px}.rate-bottom p{margin:0;font-size:17px}
.new-photo-message{position:relative;isolation:isolate;min-height:580px;display:flex;align-items:center;overflow:hidden;color:#fff;background:#41657a}.new-photo-cover,.new-photo-cover img{position:absolute;inset:0;width:100%;height:100%}.new-photo-cover{z-index:-2}.new-photo-cover img{object-fit:cover;object-position:center 53%}.new-photo-message:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(13,43,62,.65),transparent 72%)}.photo-message-content{display:flex;justify-content:flex-end;padding:75px 0}.photo-message-panel{width:min(530px,100%);padding:45px;background:rgba(13,43,62,.88);backdrop-filter:blur(8px)}.photo-message-panel .eyebrow{color:#ffd47a}.photo-message-panel h2{font-size:clamp(37px,4vw,57px);line-height:1.1;letter-spacing:-.045em;margin:0 0 18px;color:#fff}.photo-message-panel p:not(.eyebrow){font-size:18px;line-height:1.55;margin:0 0 24px}.photo-message-panel .inline-arrow{color:#ffe08a}
.new-yard{background:#fffcf4}.new-yard-grid{display:grid;grid-template-columns:1fr 1fr;gap:min(7vw,90px);align-items:center}.new-yard-image{height:630px;overflow:hidden}.new-yard-image img{height:100%;width:100%;object-fit:cover;object-position:center}.new-yard-copy>p:not(.eyebrow){font-size:18px;line-height:1.58;color:var(--muted)}.mini-rates{margin:28px 0 18px;border-top:1px solid var(--line)}.mini-rates>div{border-bottom:1px solid var(--line);padding:11px 0;display:flex;justify-content:space-between;align-items:center;gap:10px}.mini-rates span{font-weight:700}.mini-rates strong{font-size:20px}.mini-rates small{font-size:12px;font-weight:500}.new-yard .rate-note{font-size:13px!important;line-height:1.45!important;margin-bottom:25px}
.new-story{background:#e8f2f5}.new-story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw}.new-story h2{max-width:500px}.new-story-grid .large-copy{font-size:25px;line-height:1.5;color:var(--ink)}.new-story-grid p:not(.large-copy):not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.65}
.new-neighborhoods{background:#fffaf2}.local-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.local-photo-link{text-decoration:none;display:block;background:#ece5d7;padding-bottom:26px}.local-photo-link>div{height:330px;overflow:hidden}.local-photo-link img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.local-photo-link:hover img{transform:scale(1.03)}.local-photo-link>span{display:block;font-size:31px;font-weight:700;letter-spacing:-.035em;margin:20px 24px 6px}.local-photo-link small{display:block;font-size:15px;margin:0 24px;color:var(--muted)}
.new-proof{background:#163d57;color:#fff}.new-proof .eyebrow{color:#ffca63}.new-proof h2{max-width:720px;color:#fff}.new-proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:45px}.new-proof article{border:1px solid #ffffff5a;padding:30px}.new-proof article>strong{font-size:52px;letter-spacing:-.06em;color:#f1bd73}.new-proof h3{font-size:22px;margin:12px 0}.new-proof article p{margin:0;color:#e6f1f5;font-size:16px}.new-proof .fine-print{font-size:13px;color:#e6f1f5;margin:25px 0 0}
.new-faq-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:9vw;align-items:start}.new-faq-grid .question{border-bottom:1px solid var(--line);padding:22px 0}.new-faq-grid .question:first-child{border-top:1px solid var(--line)}.new-faq-grid .question summary{font-size:19px;font-weight:700;cursor:pointer}.new-faq-grid .question p{font-size:16px;color:var(--muted)}.new-faq-side img{width:100%;height:280px;object-fit:cover}.new-faq-side p{font-size:18px;font-weight:700;margin:20px 0 12px}
.new-learn{background:#edf5f8}.new-learn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.new-learn-card{text-decoration:none;display:block;background:#fffaf2;padding-bottom:26px}.new-learn-card>div{height:255px;overflow:hidden}.new-learn-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.new-learn-card:hover img{transform:scale(1.04)}.new-learn-card h3{font-size:24px;line-height:1.2;margin:23px 22px 14px;letter-spacing:-.5px}.new-learn-card span{display:block;font-size:14px;font-weight:700;margin:0 22px}
.new-final{background:#173e55;color:#fff;padding:95px 0 110px}.new-final h2{max-width:740px;color:white}.new-final p{font-size:19px;max-width:600px;color:#e9eee7}
/* One coherent image language on every inner page. */
.editorial-photo,.life-intro .editorial-photo,.home-reading .editorial-photo,.service-hero .editorial-photo,.guide-hero .editorial-photo,.yard-editorial .editorial-photo,.yard-service-hero .editorial-photo,.guide-article-photo,.page-photo,.article-photo,.guide-item>a:first-child,.guide-item img{border-radius:0!important;clip-path:none!important}
.service-hero,.guide-hero{grid-template-columns:.85fr 1.15fr;gap:5vw;padding:65px 0 85px}.service-hero h1,.guide-hero h1{font-family:Arial,Helvetica,sans-serif;font-weight:650;letter-spacing:-.05em}.service-hero .editorial-photo,.guide-hero .editorial-photo,.yard-service-hero .editorial-photo{height:570px!important}.service-hero .editorial-photo img,.guide-hero .editorial-photo img{width:100%;height:100%;object-fit:cover}.service-hero .intro,.guide-hero .intro{color:var(--muted)}
.service-prices,.yard-rate-band{background:#eff5f6}.city-hero .editorial-photo,.city-hero .editorial-photo img{width:100%;height:100%;object-fit:cover}.city-hero .editorial-photo{border-radius:0!important}
.guide-item img,.reading-link img{border-radius:0}.reading-link{border-radius:0!important}.guide-article-photo{max-width:1100px;margin:25px auto 55px}.guide-article-photo img{width:100%;height:min(500px,45vw);object-fit:cover}
.inquiry-dock{background:#fffaf2ee;border-color:#bbc7b5;border-radius:8px;box-shadow:0 10px 35px #163d5740}.inquiry-dock button{border-radius:5px!important;background:var(--ink);border-color:var(--ink);color:#fff}.inquiry-dock a{font-weight:700;color:var(--ink)}
#inquiry-dialog{border-radius:10px;background:#fffcf3}#inquiry-dialog .dialog-top{background:var(--ink);color:#fff}
footer{background:#102b40;color:#f8f1e4}footer .brand,footer a{color:#f8f1e4}
@media(max-width:900px){.trust-grid{grid-template-columns:repeat(2,1fr);padding:18px 0;gap:15px}.new-yard-grid{gap:30px}.new-yard-image{height:520px}.new-story-grid{gap:40px}}
@media(max-width:740px){.wrap{width:calc(100% - 38px)}.header-inner{min-height:72px}.brand{font-size:17px}.brand span{font-size:10px;letter-spacing:3px}.section{padding:72px 0}.new-hero{height:calc(100svh - 72px);min-height:600px;max-height:800px;align-items:flex-start}.new-hero picture img{object-position:57% center}.new-hero-shade{background:linear-gradient(180deg,rgba(17,38,28,.90) 0%,rgba(17,38,28,.70) 32%,rgba(17,38,28,.18) 68%,rgba(17,38,28,.10) 100%)}.new-hero-content{padding:40px 0 0}.new-hero h1{font-size:clamp(42px,10.8vw,64px);max-width:500px;margin-bottom:16px}.new-hero-content>p:not(.eyebrow){font-size:17px;max-width:390px}.new-hero-actions{gap:9px;margin-top:22px}.new-hero .button{min-height:46px;padding:10px 13px;font-size:13px}.hero-place{font-size:11px;right:19px;left:19px;bottom:16px;text-align:center}.trust-grid{gap:13px}.trust-grid span{font-size:11px;gap:7px}.new-section-heading{margin-bottom:35px}.new-section-heading h2,.new-pricing-heading h2,.new-yard h2,.new-story h2,.new-proof h2,.new-final h2{font-size:clamp(35px,9vw,48px)}.new-section-heading>p:not(.eyebrow){font-size:17px}.new-step-grid,.new-yard-grid,.new-story-grid,.new-faq-grid,.new-learn-grid{grid-template-columns:1fr}.new-step-grid{gap:30px}.new-step-grid article{padding-top:16px}.new-step-grid article>span{margin-bottom:13px}.section-cta{margin-top:34px}.new-pricing-heading{display:block}.new-pricing-heading .inline-arrow{display:inline-block;margin-top:20px}.price-list{grid-template-columns:1fr;gap:9px}.price-list>div{min-height:0;padding:22px}.price-list strong{font-size:53px}.price-list .featured-rate:before{margin-bottom:8px}.rate-bottom{align-items:flex-start;flex-direction:column}.new-photo-message{min-height:590px;align-items:end}.new-photo-cover img{object-position:65% center}.new-photo-message:before{background:linear-gradient(0deg,rgba(13,43,62,.84),rgba(13,43,62,.13) 100%)}.photo-message-content{padding:130px 0 28px}.photo-message-panel{padding:25px;background:rgba(13,43,62,.84)}.photo-message-panel h2{font-size:39px}.photo-message-panel p:not(.eyebrow){font-size:16px}.new-yard-image{height:320px}.new-story-grid .large-copy{font-size:21px}.local-photo-grid,.new-proof-grid{grid-template-columns:1fr}.local-photo-link>div{height:225px}.local-photo-link>span{font-size:27px}.new-proof-grid{margin-top:30px}.new-proof article>strong{font-size:43px}.new-faq-grid{gap:40px}.new-faq-side img{height:240px}.new-learn-grid{gap:12px}.new-learn-card>div{height:210px}.new-final{padding:75px 0 95px}.service-hero,.guide-hero{grid-template-columns:1fr;gap:28px;padding:35px 0 55px}.service-hero .editorial-photo,.guide-hero .editorial-photo,.yard-service-hero .editorial-photo{height:330px!important}.inquiry-dock{bottom:7px;width:calc(100% - 14px);padding:5px;gap:8px;justify-content:space-between}.inquiry-dock button{font-size:12px!important;min-height:42px!important;padding:8px 11px!important}.inquiry-dock a{font-size:11px}.inquiry-dock a:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.button,.button::before,.button::after,[data-open-inquiry]::before,[data-open-inquiry]::after,.new-learn-card img,.local-photo-link img{transition:none!important;transform:none!important}}
