/*
Theme Name: Doggy Pamper Patrol Retro
Author: Doggy Pamper Patrol
Description: Mobile grooming theme with charcoal, gold and cream colors, service descriptions, Google review snapshots and SMS booking.
Version: 2.0.6
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: doggy-pamper-patrol-retro
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/


:root{--gold:#edb459;--ink:#363b3c;--cream:#faf7f1;--muted:#717572}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font:16px 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}header{height:100px;padding:12px 6%;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:white;position:sticky;top:0;z-index:20}header img{width:186px;height:78px;object-fit:contain}nav{display:flex;gap:32px;align-items:center;font-size:14px}.btn{display:inline-flex;gap:22px;align-items:center;justify-content:center;border:0;border-radius:100px;background:var(--gold);color:#303534;padding:17px 26px;font-weight:700;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px);background:#f5c77f}.btn.outline{background:transparent;border:1px solid #a9aaa5}.hero{display:grid;grid-template-columns:1.03fr 1fr;min-height:680px;position:relative}.hero-copy{padding:72px 7% 72px 12%}.eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-size:11px;font-weight:800;display:flex;gap:10px;align-items:center}.eyebrow:before{content:'';width:22px;height:2px;background:var(--gold)}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:clamp(48px,5.2vw,78px);line-height:1.06;letter-spacing:-4px;margin:25px 0}h1 em{font-style:normal;color:#b77e2d}p{line-height:1.75;color:var(--muted)}.hero-copy>p{max-width:410px;margin-bottom:30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-photo{position:relative;margin:25px 25px 25px 0;border-radius:180px 12px 12px 12px;overflow:hidden;background:#78848a}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:60% center}.photo-note{position:absolute;bottom:27px;left:27px;right:27px;padding:20px 24px;background:#faf7f1eb;backdrop-filter:blur(12px);border-radius:12px;display:flex;gap:17px;align-items:center}.photo-note span{font-size:30px}.photo-note strong{display:block}.photo-note small{color:var(--muted)}.mini{margin-top:35px;display:flex;gap:16px;font-size:12px;color:var(--muted)}.mini b{color:var(--ink)}.ticker{background:var(--gold);overflow:hidden;padding:20px 0;white-space:nowrap;font-size:13px;letter-spacing:2px;font-weight:700}.ticker div{display:flex;justify-content:space-around;gap:40px}.section{padding:95px 6%}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}h2{font-size:clamp(35px,4vw,54px);line-height:1.15;letter-spacing:-2px;margin:18px 0 0}.section-head p{max-width:340px;margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{border:1px solid #deded5;border-radius:18px;padding:32px;transition:.25s}.card:hover{background:white;transform:translateY(-7px);box-shadow:0 18px 35px #363b3c0c}.card .icon{font-size:30px;display:block;margin-bottom:35px}.card h3{font-size:24px;margin:0 0 12px}.card p{font-size:14px}.card a{font-size:13px;font-weight:700;display:flex;justify-content:space-between;border-top:1px solid #ddd;padding-top:23px;margin-top:26px}.about{background:var(--ink);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.about img{width:100%;height:480px;object-fit:cover;border-radius:18px 120px 18px 18px}.about p{color:#c3c6c3}.steps{list-style:none;padding:0;counter-reset:steps}.steps li{padding:18px 0;border-bottom:1px solid #646968;display:flex;gap:22px}.steps li:before{counter-increment:steps;content:'0' counter(steps);color:var(--gold);font-size:13px;padding-top:4px}.steps strong{display:block}.steps small{color:#c3c6c3;display:block;margin-top:7px;line-height:1.5}.review{text-align:center;max-width:850px;margin:auto}.review blockquote{font:600 clamp(24px,3vw,36px)/1.5 Manrope;margin:27px 0}.stars{color:#bb812d;letter-spacing:5px}.review small{color:var(--muted)}.review-controls{display:flex;gap:12px;justify-content:center;margin-top:25px}.round{width:44px;height:44px;border-radius:50%;border:1px solid #ccc;background:none}.booking{background:#ede8dc;display:grid;grid-template-columns:1fr 1fr;gap:8%;border-radius:24px;margin:0 6% 80px;padding:55px}.booking p{max-width:370px}.area{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.area span{border:1px solid #c9c7bd;border-radius:30px;padding:9px 16px;font-size:12px}.form{display:grid;gap:15px}.form label{font-size:12px;font-weight:700;display:grid;gap:7px}input,select{border:1px solid #c9c7bd;border-radius:8px;padding:14px;background:#faf7f1;color:var(--ink);width:100%}.form small{font-size:11px;line-height:1.6;color:#626761}.faq{max-width:860px;margin:auto;padding-top:0}details{border-bottom:1px solid #d8d8cf;padding:22px 0}summary{cursor:pointer;font-weight:600}details p{font-size:14px}footer{background:var(--ink);color:white;padding:45px 6% 25px}.footer-top{display:flex;justify-content:space-between;gap:25px;align-items:center}.footer-top img{width:190px}.footer-links{display:flex;gap:25px;font-size:14px}.copyright{border-top:1px solid #626766;margin-top:30px;padding-top:20px;font-size:11px;color:#c3c6c3;display:flex;justify-content:space-between}.menu{display:none}.reveal{animation:arrive .7s ease both}@keyframes arrive{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}:focus-visible{outline:3px solid #bc812e;outline-offset:4px}
@media(max-width:800px){header{height:82px;padding:8px 5%}header img{width:145px;height:62px}nav{gap:12px}nav>a:not(.btn){display:none}nav .btn{padding:12px 18px;font-size:12px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6% 35px}h1{letter-spacing:-2.5px;font-size:58px}.hero-photo{height:390px;margin:0 5% 25px;border-radius:100px 12px 12px 12px}.section{padding:65px 6%}.section-head{display:block}.section-head p{margin-top:20px}.services{grid-template-columns:1fr}.card .icon{margin-bottom:20px}.about{grid-template-columns:1fr;gap:30px}.about img{height:330px}.booking{grid-template-columns:1fr;padding:28px;margin:0 5% 60px;gap:30px}.footer-top{align-items:start;flex-direction:column}.footer-links{flex-wrap:wrap;gap:18px}.copyright{gap:20px;line-height:1.7}.ticker div{width:max-content;animation:move 24s linear infinite}.ticker div span{margin-right:25px}@keyframes move{to{transform:translateX(-35%)}}} @media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:30px 6% 42px;gap:25px}.trust-strip>div,.trust-strip>a{border-left:1px solid #d8d8ce;padding-left:26px}.trust-strip strong{font:800 39px Manrope;letter-spacing:-1.5px;display:block}.trust-strip strong span{color:#b77e2d;font-size:27px}.trust-strip small{display:block;color:var(--muted);margin-top:7px;font-size:12px}.service-card{padding:0;overflow:hidden;background:#fff}.service-photo{width:100%;height:245px;object-fit:cover;display:block}.service-body{padding:28px}.service-body h3{margin-top:17px}.included{padding:0;list-style:none;font-size:13px;line-height:1.7;margin:22px 0}.included li{padding:6px 0;border-bottom:1px solid #efeee7}.included li:before{content:'✓';margin-right:10px;color:#9c6d2b}.service-card .service-body>a{margin-top:22px}.addons{display:grid;grid-template-columns:1fr 1.4fr;gap:15px 40px;padding:32px;margin-top:24px;background:#ede8dc;border-radius:16px}.addons h3{margin-bottom:0}.addons>p{grid-column:1/-1;font-size:12px;margin:0}.addon-tags{display:flex;gap:8px;align-content:center;flex-wrap:wrap}.addon-tags span{background:var(--cream);padding:10px 14px;border-radius:30px;font-size:12px}.google-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center;background:#f0ece3;margin-bottom:75px}.google-summary h2{font-size:40px;margin:22px 0}.google-word{font:600 30px Arial;letter-spacing:-2px}.google-word b:nth-child(1),.google-word b:nth-child(4){color:#4285f4}.google-word b:nth-child(2),.google-word b:nth-child(6){color:#ea4335}.google-word b:nth-child(3){color:#fbbc05}.google-word b:nth-child(5){color:#34a853}.rating-number{font:800 34px Manrope;margin:22px 0 12px}.rating-number .stars{font-size:18px;vertical-align:middle;letter-spacing:2px}.google-summary>strong{font-size:12px;letter-spacing:2px}.google-summary p{font-size:12px;max-width:300px}.google-summary .btn{margin-top:15px;font-size:12px}.review{background:#faf7f1;border-radius:18px;padding:35px}.review blockquote{font-size:26px}.review-source{font-size:10px!important;line-height:1.6;margin-top:22px!important}.review-controls{margin-top:22px}@media(max-width:800px){.trust-strip{grid-template-columns:1fr 1fr;padding:15px 6% 35px;gap:28px}.trust-strip strong{font-size:31px}.trust-strip>div,.trust-strip>a{padding-left:15px}.service-photo{height:280px}.addons{grid-template-columns:1fr;padding:25px}.google-section{grid-template-columns:1fr;gap:35px}.google-summary h2{font-size:36px}.review{padding:25px}.review blockquote{font-size:23px}}

body.admin-bar header{top:32px}@media(max-width:782px){body.admin-bar header{top:46px}}@media(max-width:600px){body.admin-bar header{top:0}}
.custom-logo-link{display:block}.custom-logo{object-fit:contain} .wp-page{max-width:1000px;margin:auto;padding:70px 6%;min-height:60vh}

:root{--ink:#252522;--cream:#fdf7e9;--gold:#efb84f;--muted:#61594e}
header{background:var(--ink);height:88px}
header img{height:67px;width:155px}
.hero{padding:48px 6% 36px;gap:32px;align-items:center;min-height:auto;background:var(--cream)}
.hero-copy{padding:20px 0}
.hero h1{font-size:clamp(50px,7vw,112px);font-weight:800;line-height:.92;letter-spacing:-.075em}
.hero h1 em{color:#a16b14}
.hero-photo{margin:0;border:2px solid var(--ink);border-radius:24px;aspect-ratio:1.12;box-shadow:7px 7px 0 var(--ink);background:var(--gold)}
.hero-photo img{display:block;object-position:center}
.photo-note{left:16px;right:auto;bottom:16px;background:var(--cream);padding:12px 18px;border:1px solid var(--ink);box-shadow:3px 3px var(--ink)}
.photo-note span{font-size:22px}
.btn{border-radius:10px;border:1px solid var(--ink)}
.btn.outline{border-color:currentColor}
.trust-strip{background:var(--ink);color:var(--cream);padding:26px 6%;gap:12px}
.trust-strip>div,.trust-strip>a{border-color:#655d4e}
.trust-strip small{color:#e5d9c3}
.trust-strip strong span{color:var(--gold)}
.ticker{border-bottom:1px solid var(--ink);padding:14px 0}
.section-head h2{font-weight:800}
.services{gap:22px}
.service-card{border:1px solid var(--ink);background:#fffdf7;box-shadow:4px 4px 0 var(--ink)}
.service-card:hover{transform:translateY(-3px);box-shadow:5px 7px 0 var(--ink)}
.service-icon{display:flex;align-items:center;justify-content:space-between;background:#f5d58d;padding:15px 25px;border-bottom:1px solid var(--ink)}
.service-card:nth-child(2) .service-icon{background:#f7e6be}
.service-card:nth-child(3) .service-icon{background:#f4c46f}
.service-icon span{font-weight:700;font-size:12px}
.service-icon b{font-size:37px;line-height:1}
.about img{border-radius:20px;height:390px}
.google-section{background:#f6e9cc}
.booking{background:#f8dfaa;border:1px solid var(--ink);box-shadow:5px 5px 0 var(--ink)}
.reveal{animation:none}
@media(max-width:800px){header{height:78px}header img{width:130px;height:57px}.hero{padding:30px 6%;gap:18px}.hero h1{font-size:clamp(52px,13vw,80px)}.hero-photo{height:auto;aspect-ratio:1.12}.photo-note{padding:9px 13px}.about img{height:290px}}

.about img{width:min(100%,440px);height:auto;aspect-ratio:auto;object-fit:contain;justify-self:center}



@media (prefers-reduced-motion: no-preference) {
  .hero-copy.reveal { animation: patrol-enter 650ms ease-out both; }
  .hero-photo.reveal { animation: patrol-enter 750ms 150ms ease-out both; }
  .hero-photo .photo-note { animation: patrol-enter 500ms 420ms ease-out both; }
}
@keyframes patrol-enter {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}
