:root{--ink:#29205e;--green:#2f759c;--green-hover:#245e82;--mint:#e4eff8;--cream:#f9fbfe;--yellow:#b8dff0;--peach:#eeeafa;--sand:#eaf0fa;--muted:#637086;--white:#fff;--line:#dce4ee;--display:"Manrope","Trebuchet MS",sans-serif;--body:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:112px}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
svg{display:block;width:24px;height:24px}
.icon{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.icon.tiny{width:18px;height:18px}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #5046a3;outline-offset:5px}
.container{width:min(1200px,calc(100% - 80px));margin-inline:auto}
.section{padding:96px 0}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--display);font-weight:800}
h1{font-size:clamp(48px,5.6vw,80px);line-height:1.07;letter-spacing:-4px}
h2{font-size:clamp(32px,3.4vw,46px);line-height:1.17;letter-spacing:-1.8px}
h3{font-size:24px;line-height:1.3;letter-spacing:-.6px}
p{color:var(--muted)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:15px 23px;border:1px solid var(--green);border-radius:50px;background:var(--green);color:white;font-size:14px;line-height:1.35;font-weight:700;text-align:center;transition:background .2s,transform .2s,box-shadow .2s}
.button:hover{background:var(--green-hover);transform:translateY(-2px);box-shadow:0 6px 20px #29205e14}
.button-small{padding:12px 19px;min-height:46px;font-size:13px}
.button-outline{background:transparent;color:var(--green);border-color:#a3b5d0}
.button-outline:hover{background:var(--mint);color:var(--ink)}
.button-cream{background:var(--cream);border-color:var(--cream);color:var(--ink)}
.button-cream:hover{background:white}
.button-yellow{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}
.button-yellow:hover{background:#d1ecf8}
.text-link{display:inline-flex;align-items:center;gap:11px;font-size:14px;font-weight:700}
.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:800;letter-spacing:1.7px;color:var(--green);margin-bottom:20px}
.eyebrow-dot{height:7px;width:7px;border-radius:50%;background:var(--green)}
.eyebrow.light{color:#d8e8f7}
.category-label{font-size:10px;font-weight:800;letter-spacing:1.8px;color:var(--green)}
.green{color:var(--green)}
.skip-link{position:fixed;z-index:1000;left:16px;top:12px;padding:12px 18px;background:var(--ink);color:white;border-radius:10px;transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
.topbar{background:var(--ink);color:#eef5fc;font-size:11px}
.topbar-inner{min-height:35px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.topbar-inner>span,.topbar a{display:flex;align-items:center;gap:8px}
.topbar .icon{width:14px;height:14px}
.site-header{position:sticky;top:0;z-index:80;background:#f9fbfef5;border-bottom:1px solid #e6eaf2;backdrop-filter:blur(15px)}
.header-inner{min-height:93px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:inline-flex;align-items:center;gap:11px;flex-shrink:0}
.brand-mark{width:45px;height:48px;border-radius:15px 15px 15px 6px;background:var(--green);display:grid;place-items:center;color:var(--yellow);transform:rotate(-7deg)}
.brand-mark svg{width:31px;height:31px;fill:currentColor;transform:rotate(7deg)}
.brand-name{font-family:var(--display);font-size:27px;font-weight:800;letter-spacing:-1.1px;line-height:1.1}
.brand-name>span{color:var(--green)}
.brand-name small{display:block;font-family:var(--body);font-size:7px;line-height:1.6;letter-spacing:1.1px;margin-top:5px;color:var(--muted);font-weight:700}
.site-nav{display:flex;align-items:center;gap:26px;font-size:12px;font-weight:700}
.site-nav>a:not(.button){padding:12px 0}
.site-nav>a:not(.button):hover{color:var(--green)}
.menu-button{display:none;background:transparent;border:1px solid var(--line);border-radius:10px;width:44px;height:44px;padding:11px;gap:5px;flex-direction:column;justify-content:center}
.menu-button span{display:block;height:2px;width:20px;background:var(--ink);transition:transform .2s,opacity .2s}

.round-icon{width:42px;height:42px;border-radius:50%;background:var(--mint);color:var(--green);display:grid;place-items:center;flex-shrink:0}

.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}
.section-heading>p{width:370px;max-width:40%;font-size:14px;line-height:1.85;padding-bottom:5px}
.section-heading .eyebrow{margin-bottom:13px}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#ffffff;transition:transform .2s,box-shadow .2s}
.service-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #29205e0a}
.service-art{height:172px;position:relative;display:grid;place-items:center;overflow:hidden}
.service-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.service-art[data-custom-photo="true"]:before{display:none}
.service-art[data-custom-photo="true"] .service-number{z-index:1;color:var(--ink);background:#fffffff0;padding:4px 9px;border-radius:20px;line-height:1.4}
.service-mint .service-art{background:#e1eff9}
.service-sand .service-art{background:#eeeafa}
.service-peach .service-art{background:#e5eefa}
.service-number{position:absolute;left:24px;top:19px;font-size:11px;letter-spacing:1px;color:#66748a}
.service-icon{width:88px;height:88px;fill:none;stroke:var(--green);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;transform:rotate(-10deg)}
.service-art:before{content:"";position:absolute;width:129px;height:129px;background:#ffffff50;border-radius:50%;transform:translate(5px,0)}
.art-paw{position:absolute;right:60px;top:40px;width:27px;height:27px;fill:var(--green);stroke:none;transform:rotate(16deg);opacity:.7}
.art-bubble{position:absolute;border:2px solid #94a9c9;border-radius:50%;width:18px;height:18px}
.bubble-one{right:92px;top:36px}
.bubble-two{right:67px;top:61px;width:10px;height:10px}
.service-content{padding:27px 28px 30px}
.service-content h3{margin-top:7px;font-size:23px}
.service-content p{font-size:13px;line-height:1.85;margin-top:14px;min-height:74px}
.service-link{display:inline-flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;font-weight:700;color:var(--green);margin-top:24px}
.service-link:hover{text-decoration:underline;text-underline-offset:5px}
.service-link .icon{width:18px;height:18px}
.about{padding-top:8px;padding-bottom:30px}
.about-panel{background:var(--ink);color:var(--cream);border-radius:32px;display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:68px 75px;position:relative;overflow:hidden}
.about-copy h2{font-size:48px;line-height:1.12}
.about-copy h2>span{color:var(--yellow)}
.about-copy p{color:#d0dcef;font-size:14px;line-height:1.85;margin-top:23px;max-width:410px}
.about-copy .button{margin-top:27px}
.about-detail{display:flex;flex-direction:column;align-items:center;justify-content:center}
.heart-art{position:relative;display:flex;align-items:center;justify-content:center;width:190px;height:158px;margin-top:-14px}
.heart-art>svg{width:140px;height:140px;fill:none;stroke:var(--yellow);stroke-width:.8;transform:rotate(-12deg)}
.heart-art>span{position:absolute;display:grid;place-items:center;width:68px;height:68px;color:var(--cream);transform:rotate(12deg);top:54px}
.heart-art>span svg{width:47px;height:47px;fill:currentColor}

.about-values{align-self:stretch;max-width:405px;margin-top:12px}
.about-values>div{display:flex;align-items:flex-start;gap:20px;padding:19px 0;border-bottom:1px solid #ffffff1e}
.about-values>div:last-child{border:0}
.about-values>div>span{color:var(--yellow);font-size:11px;line-height:1.6;letter-spacing:1px}
.about-values p{color:#d0dcef;font-size:12px;line-height:1.7}
.about-values strong{color:var(--cream);font-size:14px;display:block;margin-bottom:3px}
.products{padding-bottom:76px}
.products-grid{display:grid;grid-template-columns:.9fr 1.3fr;gap:70px;align-items:center}
.products-intro p{margin-top:22px;font-size:14px;line-height:1.85;max-width:330px}
.products-intro .text-link{margin-top:24px}
.product-browser{min-width:0}
.product-tabs{display:flex;gap:5px;background:#eaf0f8;padding:6px;border-radius:50px;margin-bottom:20px}
.product-tab{display:flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:30px;padding:13px 15px;font-size:12px;font-weight:700;background:transparent;flex:1;color:#4d6080;white-space:nowrap}
.product-tab.active{background:var(--white);color:var(--ink);box-shadow:0 2px 8px #29205e0a}
.product-tab .icon{width:18px;height:18px}
.product-panel{background:var(--mint);border-radius:26px;padding:43px 35px;display:grid;grid-template-columns:.65fr 1fr;gap:24px;align-items:center;min-height:295px}
.product-illustration{position:relative;display:grid;place-items:center;aspect-ratio:1;border-radius:50%;background:#f9fbfe66}
.product-illustration>svg:not(.product-paw){width:96px;height:96px;fill:none;stroke:var(--green);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;transform:rotate(-8deg)}

.product-panel h3{font-size:24px;line-height:1.35;margin-top:8px}
.product-panel p{font-size:12px;margin-top:15px;line-height:1.85}
.product-panel .service-link{font-size:11px;margin-top:19px}
.contact-steps{padding-top:25px;padding-bottom:78px}
.compact .button{margin-bottom:4px}
.steps-list{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:0;margin:0;list-style:none}
.steps-list li{border-top:1px solid #bbc9df;padding-top:25px;position:relative}
.step-number{display:inline-grid;place-items:center;height:37px;width:37px;background:var(--yellow);border-radius:50%;font-size:14px;font-weight:800;margin-bottom:17px}
.steps-list h3{font-size:18px;letter-spacing:-.3px}
.steps-list p{font-size:13px;line-height:1.8;margin-top:12px;max-width:300px}
.instagram-section{padding:18px 0 12px}
.instagram-banner{display:flex;align-items:center;gap:28px;padding:36px 45px;border-radius:26px;background:#e6eef9}
.instagram-symbol{display:grid;place-items:center;width:66px;height:66px;background:var(--cream);border-radius:21px;transform:rotate(-9deg);flex-shrink:0;color:var(--green)}
.instagram-symbol svg{width:35px;height:35px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transform:rotate(9deg)}
.instagram-banner h2{font-size:25px;letter-spacing:-.8px}
.instagram-banner p{font-size:12px;margin-top:9px}
.instagram-banner .eyebrow{font-size:9px;margin-bottom:10px}
.instagram-banner .button{margin-left:auto;flex-shrink:0;font-size:12px}
.faq{padding-top:95px;padding-bottom:89px}
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:82px}
.faq-grid>div:first-child>p{max-width:295px;font-size:14px;margin-top:22px;line-height:1.85}
.faq-grid .text-link{margin-top:24px}
.faq-list details{border-bottom:1px solid #d3dcec}
.faq-list details:first-child{border-top:1px solid #d3dcec}
.faq-list summary{list-style:none;font-size:14px;font-weight:700;padding:23px 0;display:flex;align-items:center;justify-content:space-between;gap:25px;cursor:pointer;line-height:1.5}
.faq-list summary::-webkit-details-marker{display:none}
.faq-plus{flex-shrink:0;width:22px;height:22px;position:relative;color:var(--green)}
.faq-plus:before,.faq-plus:after{content:"";position:absolute;top:10px;left:4px;right:4px;height:1.5px;background:currentColor}
.faq-plus:after{transform:rotate(90deg);transition:transform .2s}
.faq-list details[open] .faq-plus:after{transform:rotate(0)}
.faq-list p{font-size:13px;line-height:1.85;padding:0 27px 24px 0}
.contact{background:#ebf2fb;border-top:1px solid #e1eaf7;padding-top:80px}
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:start}
.message-card{background:var(--white);border-radius:26px;padding:36px 35px;border:1px solid #e1e8f3;scroll-margin-top:115px}
.form-label{display:flex;align-items:center;gap:7px;font-size:9px;letter-spacing:1.4px;color:var(--green);font-weight:800;margin-bottom:17px}
.form-label .icon{height:16px;width:16px}
.message-card h3{font-size:24px}
.message-card>p{font-size:12px;line-height:1.85;margin-top:12px;margin-bottom:24px;max-width:400px}
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;min-width:0}
.field label{font-size:11px;font-weight:700;color:var(--ink)}
.field label>span:not(.optional){color:var(--green)}
.optional{font-weight:400;font-size:10px;color:var(--muted)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.field input,.field select,.field textarea{width:100%;min-height:46px;background:#f8faff;border:1px solid #d9e2f0;border-radius:10px;padding:12px 13px;font-size:12px;color:var(--ink);line-height:1.6;transition:border-color .2s}
.field select{padding-right:26px}
.field textarea{resize:vertical;min-height:90px;max-height:280px}
.field input::placeholder,.field textarea::placeholder{color:#727f98}
.field input:hover,.field select:hover,.field textarea:hover{border-color:#93abc9}
.form-submit{width:100%;font-size:12px;padding-inline:13px;min-height:51px}
.form-submit .icon{height:19px;width:19px}
.form-note{font-size:10px;line-height:1.7;margin-top:14px;color:#697890}
.form-status:empty{display:none}
.form-status{font-size:11px;background:#edf4fc;color:var(--ink);border-radius:8px;padding:12px;margin-top:12px;line-height:1.6}
.form-status a{text-decoration:underline}
.visit-card{padding:8px 4px}
.visit-heading{display:flex;gap:14px;align-items:center}
.visit-heading .round-icon{background:#d5e5f6;width:46px;height:46px}
.visit-heading h3{font-size:22px}
.visit-heading p{font-size:11px;margin-top:2px}
.visit-card address{font-style:normal;font-size:13px;line-height:1.9;margin-top:23px;color:var(--ink)}
.visit-card address>span{color:var(--muted);font-size:11px}
.map-area{height:245px;margin-top:24px;border-radius:19px;overflow:hidden;background:#dce7f8;position:relative;border:1px solid #cedcf0}
.map-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;background-color:#deeaf8;background-image:linear-gradient(90deg,#f1f6fc70 1px,transparent 1px),linear-gradient(#f1f6fc70 1px,transparent 1px);background-size:45px 45px}
.map-placeholder>svg{width:32px;height:32px;fill:none;stroke:var(--green);stroke-width:1.4}
.map-placeholder strong{font-family:var(--display);font-size:16px;line-height:1.45}
.map-placeholder .button{font-size:10px;min-height:36px;padding:8px 15px;margin-top:5px;background:var(--cream)}
.map-placeholder p{font-size:9px}
.map-area iframe{display:block;width:100%;height:100%;border:0}
.route-button{margin-top:17px;width:100%;font-size:12px;min-height:46px}
.contact-details{display:flex;flex-direction:column;gap:17px;margin-top:24px}
.contact-details>a,.contact-details>div{display:flex;gap:14px;align-items:center}
.contact-details .icon{height:19px;width:19px;color:var(--green)}
.contact-details small{display:block;font-size:8px;color:var(--muted);letter-spacing:1.4px;font-weight:700}
.contact-details strong{display:block;font-size:14px;letter-spacing:.2px}
.contact-details>div>span>span{font-size:11px}
.final-cta{background:var(--green);color:var(--cream);padding:54px 0;overflow:hidden}
.final-inner{display:flex;align-items:center;justify-content:space-between;gap:35px;position:relative}
.final-inner h2{font-size:36px}
.final-inner .eyebrow{margin-bottom:14px;font-size:9px}
.final-inner .button{position:relative;z-index:1}
.cta-paw{position:absolute;fill:#ffffff09;right:260px;top:-45px;width:240px;height:240px;transform:rotate(20deg)}
.site-footer{padding-top:39px}
.footer-main{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-bottom:35px}
.footer-main>p{font-size:11px;line-height:1.9}
.footer-social{display:flex;gap:10px}
.footer-social a{height:40px;width:40px;display:grid;place-items:center;border:1px solid #cbd7eb;border-radius:50%;color:var(--green)}
.footer-social a:hover{background:var(--mint)}
.footer-social .icon{width:18px;height:18px}
.footer-bottom{border-top:1px solid var(--line);padding:19px 0 23px;font-size:9px;color:#67748a;display:flex;justify-content:space-between;gap:20px}
.footer-bottom a{display:flex;align-items:center;gap:6px}
.footer-bottom .icon{width:12px;height:12px}
.floating-whatsapp{position:fixed;right:27px;bottom:24px;z-index:75;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--green);color:white;box-shadow:0 7px 25px #29205e30;border:3px solid var(--cream);transition:transform .2s}
.floating-whatsapp>svg{height:27px;width:27px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.floating-whatsapp>span{position:absolute;right:64px;white-space:nowrap;background:white;color:var(--ink);padding:7px 11px;font-size:11px;border-radius:8px;box-shadow:0 3px 12px #29205e10;opacity:0;pointer-events:none;transform:translateX(8px);transition:opacity .2s,transform .2s}
.floating-whatsapp:hover{transform:translateY(-3px)}
.floating-whatsapp:hover>span,.floating-whatsapp:focus-visible>span{opacity:1;transform:translateX(0)}
.mobile-cta{display:none}

@media(max-width:1160px){
  .container{width:calc(100% - 64px)}.site-nav{gap:19px;font-size:11px}.site-nav .button{font-size:11px;padding-inline:15px}h1{font-size:65px;letter-spacing:-3px}.about-panel{padding:55px;gap:45px}.products-grid{gap:44px}.product-tab{padding-inline:11px}.product-panel{gap:20px;padding:30px 24px}.instagram-banner{padding-inline:32px;gap:23px}.instagram-banner .button{padding-inline:17px}
}
@media(max-width:960px){
  .site-header .container{position:relative}.header-inner{min-height:80px}.menu-button{display:flex}.site-nav{position:absolute;left:0;right:0;top:80px;background:var(--cream);border:1px solid var(--line);border-top:0;border-radius:0 0 18px 18px;padding:18px;display:none;box-shadow:0 18px 25px #29205e10;align-items:stretch;font-size:14px;gap:0}.site-nav.is-open{display:flex;flex-direction:column}.site-nav>a:not(.button){padding:12px 8px}.site-nav .button{margin-top:10px;font-size:13px}.menu-button[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}.menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-button[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}
  h1{font-size:54px;letter-spacing:-2.5px}
  .section{padding-block:70px}.services-grid{gap:16px}.service-content{padding:22px 21px}.service-content h3{font-size:20px}.service-content p{min-height:96px;font-size:12px}.service-link{font-size:11px}.service-art{height:140px}.service-icon{width:70px;height:70px}.art-paw{right:27px}
  .about.section{padding-top:0;padding-bottom:10px}.about-panel{padding:45px;gap:32px}.about-copy h2{font-size:39px}.about-copy p{font-size:12px}.about-values strong{font-size:12px}.about-values p{font-size:11px}.heart-art{height:142px;width:160px}
  .products-grid{grid-template-columns:1fr;gap:34px}.products-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:35px;align-items:start}.products-intro .eyebrow{grid-column:1/-1;margin-bottom:14px}.products-intro h2{grid-row:2/4}.products-intro p{margin-top:0;max-width:none}.products-intro .text-link{align-self:start;margin-top:18px}.product-panel{grid-template-columns:.6fr 1fr;padding:35px;min-height:260px}.product-illustration{max-width:180px;margin-inline:auto;width:100%}.product-panel h3{font-size:28px}.product-panel p{font-size:13px}
  .contact-steps.section{padding-top:14px}.steps-list{gap:24px}.steps-list h3{font-size:16px}.instagram-banner{gap:19px;flex-wrap:wrap}.instagram-banner>div:nth-child(2){flex:1}.instagram-banner .button{margin-left:85px}.faq-grid{gap:40px;grid-template-columns:.8fr 1.2fr}.contact-grid{gap:26px}.message-card{padding:27px 24px}.form-row{grid-template-columns:1fr;gap:0}.form-submit{font-size:11px;gap:7px}.visit-heading h3{font-size:19px}.footer-brand .brand-name{font-size:23px}.footer-brand .brand-name small{font-size:6px}.footer-main{gap:20px}.footer-main>p{font-size:10px}
}
@media(max-width:680px){
  html{scroll-padding-top:89px}.container{width:calc(100% - 40px)}.topbar-inner{min-height:31px;font-size:9px}.topbar a{font-size:0;gap:0}.topbar a .icon{width:15px;height:15px}.topbar a .tiny{display:none}.header-inner{min-height:75px;gap:18px}.brand-mark{width:38px;height:42px;border-radius:12px 12px 12px 5px}.brand-mark svg{width:27px;height:27px}.brand-name{font-size:24px}.brand-name small{font-size:6px;letter-spacing:.7px}.brand{gap:9px}.site-nav{top:75px}
  h1{font-size:clamp(49px,12.3vw,69px);letter-spacing:-2.9px;line-height:1.07}.round-icon{width:35px;height:35px}

  .section{padding-block:54px}h2{font-size:34px;letter-spacing:-1.4px}.eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:15px}.section-heading{display:block;margin-bottom:29px}.section-heading>p{width:100%;max-width:100%;font-size:13px;margin-top:17px;padding-bottom:0;max-width:430px}
  .services-grid{grid-template-columns:1fr;gap:21px}.service-card{display:grid;grid-template-columns:105px 1fr;border-radius:20px}.service-art{height:100%;min-height:225px}.service-art:before{width:92px;height:92px}.service-icon{width:58px;height:58px}.service-number{top:15px;left:15px;font-size:9px}.art-paw{right:10px;top:44px;width:18px;height:18px}.bubble-one{right:13px;top:57px;width:11px;height:11px}.bubble-two{right:8px;top:76px;width:7px;height:7px}.service-content{padding:24px 21px}.service-content h3{font-size:20px}.service-content p{font-size:12px;min-height:0;margin-top:12px;line-height:1.8}.service-content .category-label{font-size:8px}.service-link{margin-top:18px;font-size:10px;gap:9px}
  .about.section{padding-block:0 3px}.about-panel{padding:36px 29px;grid-template-columns:1fr;border-radius:24px;gap:24px}.about-copy h2{font-size:40px}.about-copy p{font-size:13px;margin-top:20px}.about-copy .button{font-size:12px;min-height:48px;margin-top:22px}.about-detail{align-items:stretch}.heart-art{display:none}.about-values{margin-top:0;max-width:none}.about-values>div{padding:16px 0;gap:14px}.about-values strong{font-size:13px}.about-values p{font-size:11px}
  .products-grid{gap:28px}.products-intro{display:block}.products-intro .eyebrow{margin-bottom:15px}.products-intro p{margin-top:17px;font-size:13px}.products-intro h2 br:last-of-type{display:none}.products-intro .text-link{font-size:12px;margin-top:20px}.product-tabs{border-radius:18px;display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:5px;margin-bottom:14px}.product-tab{font-size:11px;padding:11px;border-radius:14px}.product-panel{grid-template-columns:82px 1fr;gap:17px;padding:26px 20px;min-height:290px;border-radius:20px}.product-illustration{width:82px;height:82px}.product-illustration>svg:not(.product-paw){width:56px;height:56px}.product-panel h3{font-size:23px;letter-spacing:-.7px}.product-panel p{font-size:11px;line-height:1.8}.product-panel .category-label{font-size:8px}.product-panel .service-link{font-size:10px;margin-top:17px}
  .contact-steps.section{padding-top:0;padding-bottom:40px}.compact .button{margin-top:20px;font-size:12px;min-height:47px}.steps-list{grid-template-columns:1fr;gap:21px}.steps-list li{display:grid;grid-template-columns:38px 1fr;column-gap:16px;padding-top:21px}.step-number{grid-row:1/3;height:34px;width:34px;margin-bottom:0}.steps-list h3{font-size:17px;margin-top:4px}.steps-list p{grid-column:2;font-size:12px;margin-top:8px;max-width:none}
  .instagram-section{padding-top:3px}.instagram-banner{padding:29px 25px;gap:17px;border-radius:22px}.instagram-symbol{width:47px;height:47px;border-radius:15px}.instagram-symbol svg{height:26px;width:26px}.instagram-banner>div:nth-child(2){flex-basis:calc(100% - 64px)}.instagram-banner h2{font-size:20px;letter-spacing:-.6px}.instagram-banner .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:8px}.instagram-banner p{font-size:11px}.instagram-banner .button{margin-left:0;width:100%;min-height:47px;font-size:12px}
  .faq-grid{grid-template-columns:1fr;gap:29px}.faq-grid>div:first-child>p{max-width:none;font-size:13px;margin-top:17px}.faq-grid .text-link{font-size:12px;margin-top:18px}.faq-list summary{font-size:13px;padding:21px 0;gap:17px}.faq-list p{font-size:12px;line-height:1.8;padding-right:8px}
  .contact-grid{grid-template-columns:1fr;gap:32px}.message-card{border-radius:22px;padding:28px 23px}.message-card h3{font-size:23px}.message-card>p{font-size:12px}.form-row{grid-template-columns:1fr;gap:0}.field label{font-size:12px}.field input,.field textarea,.field select{font-size:16px;padding:11px 12px}.field input::placeholder,.field textarea::placeholder{font-size:12px}.field select{font-size:14px;min-height:49px}.form-submit{font-size:11px;min-height:51px;gap:8px}.form-submit .tiny{display:none}.form-note{font-size:10px}.visit-card{padding:0 3px}.visit-heading h3{font-size:22px}.visit-card address{font-size:13px}.map-area{height:230px}
  .final-cta{padding:40px 0}.final-inner{display:block}.final-inner h2{font-size:33px}.final-inner .button{margin-top:25px;font-size:12px}.cta-paw{right:-40px;top:10px;width:180px;height:180px}.site-footer{padding-top:31px;padding-bottom:72px}.footer-main{display:grid;grid-template-columns:1fr auto;gap:20px;padding-bottom:27px}.footer-main>p{grid-row:2;grid-column:1;font-size:10px}.footer-social{grid-column:2;grid-row:1/3;flex-direction:column;gap:8px}.footer-social a{width:34px;height:34px}.footer-bottom{font-size:8px;padding-block:16px 20px;gap:14px}.footer-bottom a{font-size:8px;white-space:nowrap}
  .floating-whatsapp{display:none}.mobile-cta{position:fixed;display:flex;align-items:center;justify-content:center;gap:12px;bottom:0;left:0;right:0;z-index:90;color:var(--cream);background:var(--green);border-top:1px solid #ffffff22;min-height:58px;padding:15px 20px calc(15px + env(safe-area-inset-bottom));font-size:12px;font-weight:700;box-shadow:0 -3px 15px #29205e14}.mobile-cta .icon{height:20px;width:20px}
}
@media(max-width:380px){.container{width:calc(100% - 32px)}h1{font-size:47px;letter-spacing:-2.7px}.service-card{grid-template-columns:86px 1fr}.service-content{padding:22px 18px}.service-content h3{font-size:18px}.service-link{font-size:9px}.product-panel{grid-template-columns:65px 1fr;padding:24px 17px;gap:13px}.product-illustration{width:65px;height:65px}.product-illustration>svg:not(.product-paw){width:46px;height:46px}.product-panel h3{font-size:21px}.footer-brand .brand-name{font-size:22px}.footer-brand .brand-name small{font-size:5px}.form-submit{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Identidade visual da Dream Pet, com logo e publicações do perfil. */
.brand-logo{width:96px;height:96px;object-fit:contain;flex-shrink:0;background:#fff}
.brand-context{font-size:12px;line-height:1.7;color:var(--ink);font-weight:700}
.brand-context small{font-size:10px;font-weight:500;color:var(--muted)}
.header-inner{min-height:104px}
.site-header{background:#fffffff2}

.about-panel{background:#2d245e}
.about-photo{position:relative;display:block;width:100%;max-width:375px;border-radius:20px;overflow:hidden;background:#e6eef9;border:4px solid #ffffff30}
.about-photo img{width:100%;height:225px;object-fit:cover;object-position:50% 35%}
.about-photo>span{position:absolute;bottom:13px;left:13px;right:13px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#ffffffed;border-radius:30px;padding:9px 13px;color:var(--ink);font-size:11px;font-weight:700}
.about-values{margin-top:15px}
.instagram-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:25px}
.instagram-card{display:block;overflow:hidden;border:1px solid var(--line);border-radius:23px;background:#fff;transition:transform .2s,box-shadow .2s}
.instagram-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px #29205e10}
.instagram-card-image{aspect-ratio:1;background:#edf4fb;overflow:hidden}
.instagram-card-image img{width:100%;height:100%;object-fit:contain}
.instagram-card-reel{background:#1c08a7}
.instagram-card-copy{padding:23px}
.instagram-card-copy h3{font-size:19px;letter-spacing:-.5px;line-height:1.45;margin-top:7px}
.instagram-card-copy p{font-size:12px;line-height:1.8;margin-top:10px}
.instagram-post-link{display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--green);font-size:11px;font-weight:700;margin-top:17px}
.final-cta{background:#332476}
.footer-brand .brand-logo{width:85px;height:85px}
@media(max-width:960px){.site-nav{top:104px}.instagram-gallery{gap:16px}.instagram-card-copy{padding:19px}.instagram-card-copy h3{font-size:17px}.brand-context{font-size:11px}.about-photo img{height:205px}}
@media(max-width:680px){.header-inner{min-height:86px}.site-nav{top:86px}.brand-logo{width:80px;height:80px}.brand-context{font-size:11px}.brand-context small{font-size:9px}.brand{gap:9px}.instagram-gallery{grid-template-columns:1fr;gap:20px}.instagram-card-copy{padding:23px}.instagram-card-copy h3{font-size:21px}.instagram-card-copy p{font-size:13px}.instagram-post-link{font-size:12px}.about-photo{max-width:none}.about-photo img{height:220px}.about-values{margin-top:9px}.footer-brand .brand-logo{width:76px;height:76px}.footer-brand .brand-context{font-size:10px}.footer-brand .brand-context small{font-size:8px}}

@media(max-width:760px){.service-card.with-service-photo{display:block}.service-card.with-service-photo .service-art{height:210px;min-height:0}.service-card.with-service-photo .service-content{padding:24px}.service-card.with-service-photo .service-number{left:17px;top:17px;font-size:11px}}

.product-illustration.with-product-photo{border-radius:18px;overflow:hidden;background:#f9fbfe}
.product-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
@media(max-width:760px){.product-panel.with-product-photo{grid-template-columns:1fr;gap:22px}.product-illustration.with-product-photo{width:min(100%,220px);max-width:220px;height:auto;aspect-ratio:1}}

/* Fachada e informações da loja na mesma abertura. */
.hero.section{padding:0}
.hero-banner{position:relative;isolation:isolate;overflow:hidden;width:100%;background:#18264b;color:#fff}
.hero-banner .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%;z-index:0}
.hero-banner:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#142044fa 0%,#142044ee 32%,#142044b8 52%,#14204412 100%);pointer-events:none}
.hero-banner-inner{position:relative;z-index:2}
.hero-banner-content{max-width:568px;padding:52px 0 48px}
.hero-badge{display:inline-flex;align-items:center;gap:9px;padding:7px 12px;border:1px solid #ffffff35;border-radius:30px;background:#142044b3;font-size:10px;font-weight:700;letter-spacing:1.2px;line-height:1.5;color:#fff}
.paw-mark{width:18px;height:18px;fill:currentColor;stroke:none;flex-shrink:0}
.hero-banner h1{font-size:clamp(56px,6vw,78px);line-height:1.06;letter-spacing:-2.5px;color:#fff;margin-top:23px}
.hero-banner h1>span{display:block;font-size:clamp(26px,3vw,36px);line-height:1.25;letter-spacing:-.8px;font-weight:600;margin-top:9px;color:#fff}
.hero-banner-description{color:#e6edf9;max-width:470px;font-size:14px;line-height:1.8;margin-top:20px}
.hero-banner-services{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:23px 0 0;padding:0}
.hero-banner-services li{font-size:11px;font-weight:500;padding:6px 11px;border:1px solid #ffffff38;border-radius:7px;background:#ffffff0c;color:#fff}
.hero-banner-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:29px}
.hero-banner-actions .button{border-radius:10px;background:#fff;color:#204c71;border-color:#fff;box-shadow:none;transform:none;font-size:13px;padding-inline:19px}
.hero-banner-actions .button:hover{background:#dfedf8;border-color:#dfedf8}
.hero-banner-actions .text-link{font-size:12px;color:#fff}
.hero-banner-footer{position:relative;z-index:2;padding:22px 0;border-top:1px solid #ffffff25;background:#142044ed}
.hero-banner-footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}
.hero-banner-address,.hero-banner-phone{display:flex;align-items:center;gap:12px;color:#fff}
.hero-banner-address strong{display:block;font-size:13px;font-weight:600}
.hero-banner-address span{display:block;font-size:11px;line-height:1.7;color:#dbe5f6;margin-top:3px}
.hero-banner-phone small{display:block;font-size:10px;color:#dbe5f6}
.hero-banner-phone strong{display:block;font-size:16px;font-weight:600;letter-spacing:.3px}
.hero-banner-phone:hover strong{text-decoration:underline;text-underline-offset:4px}
.hero-banner .photo-caption{position:absolute;z-index:3;top:18px;right:18px;padding:5px 10px;border-radius:6px;background:#142044c9;color:#fff;font-size:9px;line-height:1.5}
.hero-banner .photo-caption:hover{text-decoration:underline;text-underline-offset:3px}
.product-illustration>.product-paw{position:absolute;top:8px;right:7px;width:27px;height:27px;fill:var(--green);stroke:none;transform:rotate(16deg);opacity:.7}
@media(max-width:960px){.hero-banner-content{max-width:538px;padding:46px 0 40px}.hero-banner-footer{padding:20px 0}.hero-banner:before{background:linear-gradient(90deg,#142044fa 0%,#142044e8 42%,#14204450 100%)}}
@media(max-width:680px){.hero-banner .hero-photo{object-position:65% 30%}.hero-banner:before{background:linear-gradient(180deg,#14204412 0%,#14204438 18%,#142044c9 34%,#142044f5 56%,#142044fa 100%)}.hero-banner-content{max-width:none;padding:170px 0 30px}.hero-badge{font-size:8px;letter-spacing:.9px;gap:7px;padding:6px 9px}.hero-badge .paw-mark{width:16px;height:16px}.hero-banner h1{font-size:clamp(46px,12vw,64px);letter-spacing:-1.5px;margin-top:20px}.hero-banner h1>span{font-size:clamp(23px,6vw,29px);margin-top:8px;letter-spacing:-.6px}.hero-banner-description{font-size:12px;line-height:1.85;margin-top:17px}.hero-banner-services{gap:6px;margin-top:18px}.hero-banner-services li{font-size:9px;padding:5px 8px}.hero-banner-actions{gap:16px;margin-top:23px}.hero-banner-actions .button{font-size:12px;min-height:49px;padding:13px 15px}.hero-banner-actions .text-link{font-size:11px}.hero-banner-footer{padding:21px 0}.hero-banner-footer-inner{align-items:flex-start;flex-direction:column;gap:17px}.hero-banner-address strong{font-size:12px}.hero-banner-address span{font-size:10px}.hero-banner-phone strong{font-size:15px}.hero-banner .photo-caption{top:13px;right:13px;font-size:8px}.product-illustration>.product-paw{width:18px;height:18px;right:0;top:-3px}}
@media(max-width:380px){.hero-banner-services{gap:5px}.hero-banner-services li{font-size:8px;padding-inline:7px}}

/* Ícone da parceira sobre a fachada, abaixo do crédito da foto. */
.hero-photo-links{position:absolute;z-index:3;top:18px;right:18px;display:flex;flex-direction:column;align-items:flex-end;gap:12px;max-width:calc(100% - 36px)}
.hero-banner .hero-photo-links .photo-caption{position:static;max-width:100%;text-align:right}
.hero-partner{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;padding:5px;border:1px solid #ffffffcc;border-radius:12px;background:#fffffff2;box-shadow:0 3px 12px #14204426}
.hero-partner img{width:40px;height:40px;object-fit:contain;border-radius:7px}
.hero-partner:hover{background:var(--white);border-color:var(--yellow)}
.hero-partner:focus-visible{outline-color:var(--yellow)}
@media(max-width:680px){.hero-photo-links{top:13px;right:13px;gap:10px;max-width:calc(100% - 26px)}.hero-partner{width:48px;height:48px;border-radius:10px}.hero-partner img{width:36px;height:36px}}

/* Parceria com a DogFit: destaque nas cores da Dream Pet antes do rodapé. */
.header-identity{display:flex;align-items:center;gap:18px;min-width:0}
.header-partner{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:46px;min-height:46px;padding:5px 8px;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--muted);flex-shrink:0}
.header-partner img{width:34px;height:34px;border-radius:6px;object-fit:contain;flex-shrink:0}
.header-partner-label{font-size:10px;line-height:1.3;font-weight:700}
.header-partner:hover{border-color:var(--green);background:var(--mint);color:var(--green)}
@media(max-width:1160px){.header-identity{gap:14px}.header-partner{padding:5px}.header-partner-label{display:none}}
@media(max-width:680px){.site-header .header-inner{gap:10px}.header-identity{flex:1;gap:10px}.site-header .brand{min-width:0;flex-shrink:1}.site-header .brand-context{min-width:0}}

.partner-section{padding:52px 0;background:var(--mint);border-bottom:1px solid var(--line)}
.partner-card{display:grid;grid-template-columns:216px minmax(0,1fr);align-items:center;column-gap:40px;row-gap:20px;width:100%;margin-inline:auto;padding:36px 42px;border:1px solid #4b427c;border-radius:28px;background:var(--ink);color:var(--white);box-shadow:0 12px 28px #29205e18}
.partner-logo-link{display:block;grid-row:1/3;width:216px;height:216px;padding:12px;border-radius:24px;background:var(--white);box-shadow:0 8px 24px #120d3526}
.partner-logo{width:100%;height:100%;object-fit:contain;border-radius:12px}
.partner-copy{grid-column:2;grid-row:1;align-self:end;min-width:0}
.partner-eyebrow{display:inline-block;font-family:var(--body);font-size:13px;line-height:1.5;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--yellow);margin-bottom:12px;padding:6px 13px;border:1px solid #b8dff052;border-radius:50px;background:#ffffff0c}
.partner-name{font-family:var(--display);font-size:clamp(28px,3vw,36px);line-height:1.2;font-weight:800;letter-spacing:-.7px;color:var(--white)}
.partner-description{font-size:15px;line-height:1.7;margin-top:10px;color:#e0e9f5}
.partner-button{grid-column:2;grid-row:2;align-self:start;justify-self:start;min-height:52px;font-size:14px;padding:14px 24px;background:var(--yellow);border-color:var(--yellow);color:var(--ink);white-space:normal}
.partner-button:hover{background:#d1ecf8;border-color:#d1ecf8;color:var(--ink)}
.partner-logo-link:focus-visible,.partner-button:focus-visible{outline-color:var(--yellow)}
@media(max-width:680px){.partner-section{padding:32px 0}.partner-card{grid-template-columns:minmax(0,1fr);gap:22px;padding:28px 20px;border-radius:24px;text-align:center}.partner-logo-link{grid-row:auto;width:184px;height:184px;justify-self:center}.partner-copy{grid-column:auto;grid-row:auto;align-self:auto}.partner-eyebrow{font-size:12px;letter-spacing:1px;margin-bottom:12px}.partner-name{font-size:28px;letter-spacing:-.5px}.partner-description{font-size:14px;line-height:1.65}.partner-button{grid-column:auto;grid-row:auto;justify-self:center;width:min(100%,320px);min-height:52px}}
