/*
Theme Name: Smart Pet Source
Description: Premium B2B smart pet electronics child theme for Astra.
Author: Smart Pet Source
Template: astra
Version: 7.2.0
Text Domain: smart-pet-source
*/

:root{
  --sps-dark:#123b32;
  --sps-dark-2:#173d35;
  --sps-mint:#9fe6c3;
  --sps-mint-2:#a8f0d0;
  --sps-warm:#fbfaf7;
  --sps-soft:#f5f7f4;
  --sps-white:#fff;
  --sps-ink:#18231f;
  --sps-muted:#66716c;
  --sps-line:#e3e9e5;
  --sps-shadow:0 18px 50px rgba(18,59,50,.08);
  --sps-radius:18px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;overflow-x:hidden;background:var(--sps-white);color:var(--sps-ink);font-family:Inter,Manrope,"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease}
.sps-page{width:100%;overflow:hidden;background:var(--sps-white)}
.sps-wrap{width:min(1360px,calc(100% - 64px));margin-inline:auto}
.sps-section{padding:104px 0}
.sps-section--soft{background:var(--sps-soft)}
.sps-section--dark{background:var(--sps-dark);color:#fff}
.sps-section--dark .sps-heading,.sps-section--dark h2,.sps-section--dark h3{color:#fff!important}
.sps-section--dark p{color:#dce9e4}
.sps-section--dark .sps-eyebrow{color:var(--sps-mint)!important}

/* Astra shell and header */
body .site-content,body #content,body #primary,body .site-main,body article,body .entry-content{margin-top:0!important;padding-top:0!important}
body .site-content>.ast-container{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
.entry-header,.entry-title{display:none!important}
.ast-primary-header-bar{background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(227,233,229,.9)!important;box-shadow:none!important;backdrop-filter:blur(14px)}
body.home .site-header{position:absolute;inset:0 0 auto 0;z-index:60;width:100%}
body.home .ast-primary-header-bar{background:rgba(251,250,247,.12)!important;border-bottom-color:rgba(18,59,50,.12)!important;backdrop-filter:blur(10px)}
body.home.admin-bar .site-header{top:32px}
body.home.sps-header-scrolled .site-header{position:fixed;top:0;animation:spsHeaderIn .22s ease-out}
body.home.sps-header-scrolled .ast-primary-header-bar{background:rgba(255,255,255,.94)!important;border-bottom-color:var(--sps-line)!important;box-shadow:0 8px 28px rgba(18,59,50,.06)!important;backdrop-filter:blur(16px)}
body.home.admin-bar.sps-header-scrolled .site-header{top:32px}
@keyframes spsHeaderIn{from{transform:translateY(-8px);opacity:.94}to{transform:translateY(0);opacity:1}}
.site-title,.site-title a{color:var(--sps-dark)!important;font-weight:780!important;letter-spacing:-.035em}
.main-header-menu>.menu-item>a{color:var(--sps-ink)!important;font-size:14px!important;font-weight:600!important}
.main-header-menu>.menu-item>a:hover,.main-header-menu>.current-menu-item>a{color:var(--sps-dark)!important}
.main-header-menu>.menu-item:last-child>a{background:var(--sps-dark)!important;color:#fff!important;border-radius:8px!important;padding-inline:20px!important;margin-left:12px!important}
.main-header-menu>.menu-item:last-child>a:hover{background:var(--sps-dark-2)!important;color:#fff!important;transform:translateY(-1px)}
@media(min-width:922px){
  .ast-primary-header-bar,.ast-primary-header-bar .site-primary-header-wrap,.ast-primary-header-bar .ast-builder-grid-row{height:80px!important;min-height:80px!important}
  .ast-primary-header-bar .ast-builder-grid-row{max-width:1400px!important;gap:20px!important}
  .ast-primary-header-bar .main-header-menu{display:flex!important;flex-flow:row nowrap!important;align-items:center!important}
  .ast-primary-header-bar .main-header-menu>.menu-item>a{min-height:44px!important;padding:10px 11px!important;white-space:nowrap}
}

/* Type and reusable elements */
.sps-eyebrow{margin:0 0 17px;color:var(--sps-dark)!important;font-size:.74rem;font-weight:800;letter-spacing:.145em;line-height:1.4;text-transform:uppercase}
.sps-title,.sps-heading{color:var(--sps-dark)!important;font-weight:750;letter-spacing:-.052em}
.sps-title{margin:0;font-size:clamp(3.15rem,5vw,5.2rem);line-height:.99}
.sps-heading{margin:0;font-size:clamp(2.15rem,3.3vw,3.45rem);line-height:1.06}
.sps-lead{max-width:720px;color:var(--sps-muted);font-size:1.08rem;line-height:1.75}
.sps-btn{display:inline-flex;min-height:52px;align-items:center;justify-content:center;padding:13px 23px;border:1px solid var(--sps-dark);border-radius:8px;background:var(--sps-dark)!important;color:#fff!important;font-size:.9rem;font-weight:750;text-decoration:none!important;box-shadow:none!important;white-space:nowrap}
.sps-btn:hover{background:var(--sps-dark-2)!important;border-color:var(--sps-dark-2)!important;color:#fff!important;transform:translateY(-1px)}
.sps-btn--ghost{background:rgba(255,255,255,.86)!important;color:var(--sps-dark)!important;border-color:rgba(18,59,50,.7)!important}
.sps-btn--ghost:hover{background:#fff!important;color:var(--sps-dark)!important;border-color:var(--sps-dark)!important}
.sps-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:31px}
.sps-textlink{display:inline-flex;align-items:center;gap:8px;color:var(--sps-dark)!important;font-size:.84rem;font-weight:750;text-decoration:none!important}
.sps-textlink:hover{color:#236b58!important;transform:translateX(2px)}
.sps-icon{width:24px;height:24px}
.sps-iconbox{display:grid;width:42px;height:42px;place-items:center;color:var(--sps-dark);border-radius:50%;background:#edf5f0}
.sps-sectionhead{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:48px}
.sps-sectionhead>div{max-width:760px}.sps-sectionhead>p{max-width:520px;margin:0;color:var(--sps-muted);line-height:1.65}
.sps-sectionhead--center{display:block;margin-bottom:50px;text-align:center}
.sps-sectionhead--center .sps-heading{margin-bottom:15px}.sps-sectionhead--center>p:last-child{max-width:700px;margin:0 auto;color:var(--sps-muted)}
.sps-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:center}

/* Responsive */
@media(max-width:1180px){
  .sps-wrap{width:min(100% - 48px,1360px)}
  .sps-home .sps-hero__copy{width:50%}.sps-home .sps-hero .sps-title{font-size:4rem}.sps-home .sps-hero__overlay{background:linear-gradient(90deg,rgba(251,250,247,.99) 0%,rgba(251,250,247,.92) 43%,rgba(251,250,247,.2) 66%,transparent 84%)}
  .sps-capability{padding:12px 20px}.sps-servicecards{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:921px){
  .sps-section{padding:82px 0}.sps-page-hero{padding:82px 0 74px}
  .sps-home .sps-hero{min-height:100svh}.sps-home .sps-hero__content{align-items:flex-start;padding-top:132px}.sps-home .sps-hero__copy{width:58%}.sps-home .sps-hero .sps-title{font-size:3.45rem}.sps-home .sps-advantagegrid{grid-template-columns:repeat(2,1fr);max-width:390px;margin-top:38px}
  .sps-trustbar{padding:28px 0}.sps-trustbar .sps-wrap{grid-template-columns:repeat(2,1fr);gap:24px}.sps-trustbar__intro{grid-column:1/-1}.sps-trustbar article{padding:0;border-left:0}
  .sps-home .sps-productgrid{grid-template-columns:repeat(2,1fr)}.sps-capabilitygrid{grid-template-columns:repeat(2,1fr);gap:28px 0}.sps-capability:nth-child(2){border-right:0}
  .sps-brandcta__grid,.sps-split,.sps-productdetail,.sps-contactgrid{grid-template-columns:1fr}.sps-brandcta__grid>div:first-child{padding:70px 0}.sps-brandcta__single,.sps-brandcta__single .sps-media{min-height:0;aspect-ratio:16/9}
  .sps-finalcta .sps-wrap{display:block}.sps-finalcta .sps-actions{margin-top:28px}
  .sps-categorycard,.sps-categorycard:nth-child(even){grid-template-columns:1fr}.sps-categorycard:nth-child(even)>.sps-media{order:0}.sps-categorycard>.sps-media{min-height:0;aspect-ratio:16/10}
  .sps-featuregrid{grid-template-columns:repeat(2,1fr)}.sps-servicecards{grid-template-columns:repeat(2,1fr)}.sps-servicecards--3{grid-template-columns:repeat(3,1fr)}.sps-packaginggrid{grid-template-columns:repeat(2,1fr)}.sps-timeline{grid-template-columns:repeat(2,1fr);gap:25px}.sps-timeline article{border-left:0;border-top:1px solid rgba(255,255,255,.16)}
  .sps-contactgrid aside{position:static}.sps-aboutmedia{grid-template-columns:1fr 1fr}
}
@media(max-width:767px){
  body.home.admin-bar .site-header{top:46px}
  body.home.admin-bar.sps-header-scrolled .site-header{top:46px}
  .sps-wrap{width:min(100% - 32px,1360px)}.sps-section{padding:64px 0}.sps-sectionhead{display:block;margin-bottom:34px}.sps-sectionhead>p{margin-top:15px}.sps-page-hero{padding:68px 0 62px}.sps-page-hero .sps-title{font-size:2.75rem}.sps-title{font-size:2.75rem}.sps-heading{font-size:2.25rem}.sps-lead{font-size:1rem}
  .sps-home .sps-hero{display:flex;min-height:100svh;flex-direction:column;background:var(--sps-warm)}.sps-home .sps-hero__overlay{display:none}.sps-home .sps-hero__content{order:1;padding:132px 0 52px;background:var(--sps-warm)}.sps-home .sps-hero__copy{width:100%}.sps-home .sps-hero .sps-title{font-size:clamp(2.75rem,13vw,3.55rem)}.sps-home .sps-hero .sps-lead{font-size:.98rem}.sps-home .sps-hero__visual{position:relative;order:2;height:auto;aspect-ratio:4/3;z-index:auto}.sps-home .sps-hero__visual .sps-media{height:100%}.sps-home .sps-hero__visual img{object-position:63% center}.sps-home .sps-advantagegrid{max-width:none}
  .sps-actions{display:grid;width:100%;gap:12px}.sps-actions .sps-btn{width:100%}.sps-home .sps-hero .sps-actions .sps-btn{min-width:0}
  .sps-home .sps-productgrid,.sps-capabilitygrid,.sps-processgrid,.sps-servicecards,.sps-servicecards--3,.sps-featuregrid,.sps-packaginggrid,.sps-aboutmedia{grid-template-columns:1fr}
  .sps-capability{border-right:0;border-bottom:1px solid var(--sps-line);padding:20px 0}.sps-capability:last-child{border-bottom:0}.sps-brandcta h2{font-size:2.65rem}
  .sps-finalcta{padding:62px 0}.sps-categorycard>div{padding:32px 24px}.sps-categorycard>.sps-media{aspect-ratio:4/3}
  .sps-productsummary{padding:20px 0 0}.sps-gallery__thumbs{grid-template-columns:repeat(2,1fr)}.sps-specs>div{display:grid;gap:7px}.sps-specs strong{max-width:none;text-align:left}.sps-servicegrid{grid-template-columns:1fr}.sps-timeline{grid-template-columns:1fr}.sps-form-shell{padding:28px 20px}.sps-video{min-height:300px}
}
@media(max-width:420px){
  .sps-home .sps-advantagegrid{grid-template-columns:1fr 1fr;gap:20px 12px}.sps-trustbar .sps-wrap{grid-template-columns:1fr 1fr}.sps-trustbar article strong{font-size:1.35rem}.sps-home .sps-productcard__body{min-height:150px;padding:22px}.sps-brandcta h2{font-size:2.35rem}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* G07-B controlled staging layer */
.sps-g07b-breadcrumb{margin-bottom:28px;font-size:.86rem}.sps-g07b-breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.sps-g07b-breadcrumb li+li:before{content:"/";margin-right:8px;opacity:.55}.sps-g07b-breadcrumb a{color:inherit;text-decoration:underline;text-underline-offset:3px}.sps-g07b-hero .sps-actions{margin-top:28px}.sps-g07b-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:36px}.sps-g07b-products>.sps-card{display:flex;flex-direction:column;gap:18px}.sps-g07b-products .sps-actions{margin-top:auto}.sps-g07b-product-image{display:block;width:100%;aspect-ratio:1;object-fit:contain;border-radius:16px;background:#f7f8fa}.sps-g07b-product-placeholder{display:grid;place-items:center;width:100%;aspect-ratio:1;border-radius:16px;background:linear-gradient(135deg,#eef5ff,#f7f8fa);font-size:clamp(2.2rem,8vw,5rem);font-weight:700;color:#0b2035}.sps-g07b-evidence{padding:14px 16px;border-left:3px solid #1473e6;background:#f1f7ff;color:#405269;font-size:.9rem;line-height:1.55}.sps-g07b-related{margin-top:32px}.sps-g07b-scroll{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;margin:30px 0;padding:4px 2px 16px}.sps-g07b-scroll article{flex:0 0 min(360px,82vw);scroll-snap-align:start;border:1px solid var(--sps-line);border-radius:14px;padding:24px;background:#fff}.sps-g07b-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:30px 0}.sps-g07b-compare article{padding:26px;border-radius:14px;background:#fff;border:1px solid var(--sps-line)}.sps-g07b-capabilities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;margin:32px 0 0;padding:0}.sps-g07b-capabilities li{padding:16px 18px;border:1px solid var(--sps-line);border-radius:12px;background:#fff}.sps-g07b-page a:focus-visible,.sps-g07b-page button:focus-visible{outline:3px solid #1473e6;outline-offset:3px}.sps-g07b-page img{height:auto}.sps-g07b-page .sps-list{margin:0}.sps-g07b-page .sps-card a:not(.sps-btn){font-weight:700;color:#1268e8;text-underline-offset:3px}
.sps-global-contact-rail{position:fixed;right:16px;top:calc(50vh + 39px);z-index:40;display:flex;flex-direction:column;gap:8px;transform:translateY(-50%)}
.sps-global-contact-item{position:relative;display:flex;width:74px;flex-direction:column;align-items:center;gap:4px;text-align:center}
.sps-global-contact-button{display:grid;width:58px;height:58px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:#fff!important;box-shadow:0 7px 18px rgba(0,0,0,.18);transition:transform .2s ease,background .2s ease,box-shadow .2s ease;text-decoration:none!important}
.sps-global-contact-button.is-whatsapp{background:#25d366}.sps-global-contact-button.is-email{background:#1473e6}.sps-global-contact-button.is-phone{background:#1473e6}
.sps-global-contact-button svg{width:24px;height:24px}
.sps-global-contact-label{color:rgba(255,255,255,.8);font-size:10px;font-weight:500;line-height:16px;letter-spacing:.01em;text-shadow:0 1px 3px rgba(0,0,0,.9);white-space:nowrap}
.sps-global-contact-button:hover,.sps-global-contact-button:focus-visible{box-shadow:0 10px 24px rgba(0,0,0,.23);transform:translateY(-2px) scale(1.04)}
.sps-global-contact-button.is-whatsapp:hover,.sps-global-contact-button.is-whatsapp:focus-visible{background:#1fbd59}.sps-global-contact-button.is-email:hover,.sps-global-contact-button.is-email:focus-visible,.sps-global-contact-button.is-phone:hover,.sps-global-contact-button.is-phone:focus-visible{background:#075fc4}
.sps-global-contact-button:focus-visible,.sps-global-contact-trigger:focus-visible,.sps-global-contact-menu a:focus-visible,.sps-global-contact-menu button:focus-visible{outline:3px solid #fff;outline-offset:3px}


@media(min-width:1200px) and (max-height:800px){}
.sps-global-contact-mobile{display:none}
@media(max-width:1199px){.sps-global-contact-rail{display:none}.sps-global-contact-mobile{position:fixed;right:14px;bottom:max(14px,env(safe-area-inset-bottom));z-index:30;display:flex;flex-direction:column;align-items:flex-end}.sps-global-contact-trigger{display:grid;width:52px;height:52px;place-items:center;padding:0;border:0;border-radius:50%;background:#1473e6;color:#fff;box-shadow:0 10px 28px rgba(7,95,196,.28);font-size:0;transition:background .2s ease,transform .2s ease}.sps-global-contact-trigger:hover{background:#075fc4}.sps-global-contact-trigger:active{transform:scale(.95)}.sps-global-contact-trigger svg{width:21px;height:21px}.sps-global-contact-trigger>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.sps-global-contact-menu{position:absolute;right:0;bottom:62px;display:grid;width:250px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;border:1px solid rgba(9,31,52,.12);border-radius:16px;background:#fff;box-shadow:0 20px 50px rgba(8,30,52,.24)}.sps-global-contact-menu[hidden]{display:none}.sps-global-contact-menu>a,.sps-global-contact-menu>button{display:flex;min-height:48px;align-items:center;gap:10px;padding:7px 9px;border:0;border-radius:12px;background:#f3f7f5;color:#0b2035!important;font-size:.8rem;font-weight:650;text-align:left;text-decoration:none!important}.sps-global-contact-menu>a.is-email,.sps-global-contact-menu>a.is-phone{background:#f1f6fd}.sps-global-contact-menu-icon{display:grid;flex:0 0 32px;width:32px;height:32px;place-items:center;border-radius:50%;color:#fff}.is-whatsapp .sps-global-contact-menu-icon{background:#25d366}.is-email .sps-global-contact-menu-icon{background:#1473e6}.is-phone .sps-global-contact-menu-icon{background:#1473e6}.sps-global-contact-menu-icon svg{width:18px;height:18px}}
@media(max-width:480px){}
@media(max-width:1199px){.sps-global-contact-menu{bottom:60px}}
