/* Final visual pass: PP Kids — friendly, soft and easy for parents. */
:root{
  --finish-ink:#17364b;
  --finish-muted:#607581;
  --finish-line:#dfe9e9;
  --finish-surface:#fff;
  --finish-soft:#fff8ed;
  --finish-accent:#df715b;
  --finish-focus:rgba(23,54,75,.28);
}

body.page-product,body.page-cart,body.page-checkout,body.page-login{background:#fffdf9;color:var(--finish-ink)}
body.page-product main,body.page-cart main,body.page-checkout main,body.page-login main{min-height:55vh}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--finish-focus)!important;outline-offset:3px!important}
:where(button,.btn,.header-icon-btn,.bottom-nav-item,.cat-chip,.pw-toggle){touch-action:manipulation}
:where(input,select,textarea){font-size:16px}

body.page-product .product-detail,
body.page-cart .cart-page-table,body.page-cart .cart-summary-box,
body.page-checkout .checkout-card,body.page-checkout .checkout-summary-card,
body.page-login .auth-card{
  border:1px solid var(--finish-line)!important;
  border-radius:22px!important;
  background:var(--finish-surface)!important;
  box-shadow:0 16px 45px rgba(23,54,75,.065)!important;
}
body.page-product .product-detail{overflow:hidden}
body.page-product .product-detail-name{color:var(--finish-ink)!important;line-height:1.25;text-wrap:balance;font-weight:900!important}
body.page-product .product-detail-desc{color:var(--finish-muted)!important;line-height:1.9}
body.page-product .product-detail-actions .btn{min-height:50px;border-radius:15px!important}
body.page-product .product-gallery img{background:#f7f1e9}
body.page-cart .cart-page-row{gap:1rem!important}
body.page-cart .cart-page-name,body.page-checkout .checkout-item-name{line-height:1.55;overflow-wrap:anywhere}
body.page-cart .cart-page-remove{color:#b44336;background:#fff4f1;border:1px solid #f6d8d1}
body.page-checkout .form-input,body.page-checkout select,body.page-checkout textarea,
body.page-login .form-input{min-height:50px;border-radius:14px!important;background:#fff!important}
body.page-checkout .checkout-card-title{font-size:1rem!important;color:var(--finish-ink)!important}
body.page-checkout .checkout-summary-card{position:sticky;top:110px}
body.page-login .auth-page-wrap{padding-block:clamp(1.25rem,5vw,4.5rem)!important}
body.page-login .auth-card{width:min(100%,470px)!important;padding:clamp(1.2rem,4vw,2rem)!important}
body.page-login .auth-logo img{max-width:min(230px,72vw);height:64px!important;object-fit:contain}
body.page-login .auth-tabs{padding:.3rem!important;border-radius:14px!important;background:#f4f7f5!important}
body.page-login .auth-tab{min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:11px!important}

/* Catalog density: parent-first browsing with calm cards and usable filters. */
body.page-home #shopResults>.app-section-head{gap:.8rem!important}
body.page-home #shopResults>.app-section-head>*{min-width:0}
body.page-home .shop-filter-panel{grid-template-columns:repeat(4,minmax(110px,1fr))!important}
body.page-home .shop-filter-field--brand{grid-column:span 2!important}
body.page-home .shop-filter-apply{min-width:112px}
body.page-home .product-name{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.5;min-height:3em}
body.page-home .product-age,body.page-home .product-match{line-height:1.45}
body.page-home .product-price-wrap{gap:.35rem!important;flex-wrap:wrap}

.empty-state{max-width:620px;margin-inline:auto;padding:clamp(2.5rem,8vw,5rem) 1rem!important}
.empty-state-icon{width:78px!important;height:78px!important;font-size:2rem!important;opacity:1!important;background:#fff2dc!important;color:var(--finish-accent)}
.empty-state h3{color:var(--finish-ink)!important;line-height:1.4;text-wrap:balance}.empty-state p{max-width:48ch;margin-inline:auto;line-height:1.8}
.fa-spinner.fa-spin{animation-duration:.85s}

@media(max-width:768px){
  body.page-product .product-detail{border-radius:18px!important}
  body.page-product .product-detail-info{padding:1.15rem!important}
  body.page-product .product-detail-actions{gap:.65rem!important}
  body.page-product .product-detail-actions{display:grid!important;grid-template-columns:1fr!important}
  body.page-product .product-detail-actions>.btn{width:100%!important;min-height:48px}
  body.page-product .product-detail-actions>.wishlist-btn{width:100%!important}
  body.page-cart .cart-page-layout,body.page-checkout .checkout-layout{gap:1rem!important}
  body.page-cart .cart-page-table,body.page-cart .cart-summary-box,
  body.page-checkout .checkout-card,body.page-checkout .checkout-summary-card{border-radius:16px!important;box-shadow:0 9px 28px rgba(23,54,75,.05)!important}
  body.page-checkout .checkout-summary-card{position:static}
  body.page-cart .cart-page-row{padding:.85rem!important}
  body.page-cart .cart-page-table>div:first-child:not(.cart-page-row){display:none!important}
  body.page-cart .cart-page-row>div:nth-child(3),body.page-cart .cart-page-row>div:nth-child(4),body.page-cart .cart-page-row>div:nth-child(5){min-width:0}
  body.page-cart .cart-page-row .qty-selector{width:max-content;max-width:100%}
  body.page-cart .cart-page-layout .btn{min-height:44px}
  body.page-checkout .checkout-item{align-items:flex-start!important}.checkout-item-price{margin-inline-start:auto}
  body.page-home #shopResults>.app-section-head{align-items:center!important;flex-wrap:wrap!important}
  body.page-home #shopResults>.app-section-head>.app-section-title{flex:1 1 190px;overflow-wrap:anywhere}
  body.page-home .shop-filter-summary{min-height:48px}
  body.page-login .auth-page-wrap{padding:1rem .75rem 6rem!important;align-items:flex-start!important}
  body.page-login .auth-card{border-radius:18px!important}
  .empty-state .btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center}
}

@media(max-width:480px){
  body.page-home .child-finder__form{grid-template-columns:1fr!important}
  body.page-home .child-finder__form>*{grid-column:1!important}
  body.page-home .child-finder__form select,body.page-home .child-finder__form input,body.page-home .child-finder__form button{min-height:46px;font-size:16px}
  body.page-home .shop-filter-panel{grid-template-columns:1fr!important}
  body.page-home .shop-filter-field,body.page-home .shop-filter-field--brand,body.page-home .shop-stock-toggle,body.page-home .shop-filter-apply,body.page-home .shop-filter-clear{grid-column:1!important;width:100%!important}
  body.page-home .products-grid{gap:.65rem!important}
  body.page-home .product-info{padding:.72rem .6rem .8rem!important}
  body.page-home .product-name{font-size:.79rem!important}
  body.page-home .product-match{display:none}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Calm storefront finish adapted from Perla Moda; PP Kids colors remain intact. */
body.page-home .hero-slider{height:clamp(360px,34vw,440px)!important;min-height:0!important;max-width:1280px!important;margin:1rem auto 1.5rem!important;border-radius:28px!important;overflow:hidden!important}
body.page-home .hero-slider .slide-content,body.page-home .hero-slider .slide-content .container{height:100%!important}
body.page-home .hero-slider .slide-title{font-size:clamp(2rem,3.2vw,3.5rem)!important;line-height:1.12!important}
body.page-home .hero-slider .slide-desc{font-size:clamp(.9rem,1.15vw,1.04rem)!important;line-height:1.75!important;max-width:36ch!important}
body.page-home .hero-slider .slider-btn{width:42px!important;height:42px!important;background:rgba(255,255,255,.9)!important;color:var(--navy,#17364b)!important;border:1px solid rgba(23,54,75,.12)!important;box-shadow:0 6px 18px rgba(23,54,75,.1)!important}
body.page-home .hero-slider .slider-dots{bottom:1rem!important;gap:.15rem!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}
body.page-home .hero-slider .slider-dot{position:relative!important;width:32px!important;min-width:32px!important;height:32px!important;background:transparent!important}
body.page-home .hero-slider .slider-dot::after{content:"";position:absolute;inset:50% auto auto 50%;width:7px;height:7px;transform:translate(-50%,-50%);border-radius:999px;background:rgba(23,54,75,.48);box-shadow:0 0 0 2px rgba(255,255,255,.72)}
body.page-home .hero-slider .slider-dot.active::after{width:18px;background:var(--coral,#ef765e);box-shadow:0 0 0 2px #fff}
@media(max-width:768px){
 body.page-home .hero-slider{display:block!important;height:300px!important;margin:.75rem .75rem 1rem!important;border-radius:22px!important}
 body.page-home .hero-slider .slide-bg{inset:0!important}
 body.page-home .hero-slider .slide-photo{display:block!important}
 body.page-home .hero-slider .slide-photo img{object-position:center 22%!important}
 body.page-home .hero-slider .slide-overlay,[dir=ltr] body.page-home .hero-slider .slide-overlay{display:block!important;background:linear-gradient(0deg,rgba(12,29,40,.88) 0%,rgba(12,29,40,.12) 65%,transparent 100%)!important}
 body.page-home .hero-slider .slide-inner{align-items:flex-end!important;padding:1.2rem 1.15rem 2.75rem!important}
 body.page-home .hero-slider .slide-text,[dir=ltr] body.page-home .hero-slider .slide-text{position:static!important;inset:auto!important;transform:none!important;display:block!important;width:100%!important;max-width:100%!important;color:#fff!important}
 body.page-home .hero-slider .slide-kicker{display:none!important}
 body.page-home .hero-slider .slide-title{display:block!important;color:#fff!important;font-size:1.55rem!important;line-height:1.18!important;margin:0 0 .35rem!important;max-width:16ch!important}
 body.page-home .hero-slider .slide-desc{color:rgba(255,255,255,.84)!important;font-size:.78rem!important;line-height:1.5!important;margin:0 0 .7rem!important;max-width:34ch!important;overflow:hidden!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical}
 body.page-home .hero-slider .slide-actions{display:flex!important;margin:0!important}
 body.page-home .hero-slider .slide-actions .btn-primary{min-height:40px!important;padding:.55rem .9rem!important;font-size:.78rem!important;border-radius:10px!important}
 body.page-home .hero-slider .slider-btn{display:none!important}
 body.page-home .hero-slider .slider-dots{bottom:.55rem!important}
 body.page-home .container{padding-inline:.75rem!important}
 body.page-home .trust-strip{margin-top:0!important;border-radius:14px!important;overflow:hidden!important}
 body.page-home .home-category-cards{gap:.6rem!important;margin-block:1rem 1.5rem!important}
 body.page-home .home-category-card{min-height:92px!important;padding:.85rem!important;border-radius:16px!important;box-shadow:none!important}
 body.page-home .products-grid{gap:1.25rem .7rem!important}
 body.page-home .product-card{height:auto!important;min-height:0!important;border-radius:16px!important;box-shadow:none!important}
 body.page-home .product-info{padding:.65rem .15rem .1rem!important;min-height:78px!important}
 body.page-home .product-name{font-size:.82rem!important;line-height:1.55!important;font-weight:700!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important;min-height:2.55em!important}
 body.page-home .cat-chips-scroll{height:48px!important;margin:.8rem 0 .65rem!important;padding:2px .25rem!important;gap:.35rem!important;border:0!important;background:transparent!important;overscroll-behavior-inline:contain}
 body.page-home .cat-chip{flex:0 0 auto!important;min-height:40px!important;padding:.55rem .75rem!important;border-radius:12px!important;box-shadow:none!important;font-size:.78rem!important;white-space:nowrap!important}
 body.page-home .cat-chip.active{background:var(--navy,#17364b)!important;color:#fff!important;border-color:var(--navy,#17364b)!important}
 body.page-home .app-section-head:not(.app-section-head-sale):not(.app-section-head-new){display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:.75rem!important;min-height:52px!important;margin:.35rem 0 .65rem!important;padding:.35rem .15rem!important;border:0!important;background:transparent!important;box-shadow:none!important}
 body.page-home .shop-search-form{position:relative!important;display:block!important;margin:.4rem 0 .65rem!important;padding:0!important;border:0!important;background:transparent!important}
 body.page-home .shop-search-inner{width:100%!important;height:48px!important;border-radius:14px!important;box-shadow:none!important;padding-inline:1rem 3.5rem!important}
 body.page-home .shop-search-inner input{height:46px!important;font-size:16px!important;background:transparent!important}
 body.page-home .shop-search-action{position:absolute!important;inset-inline-end:5px!important;top:5px!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;padding:0!important;border-radius:10px!important;display:grid!important;place-items:center!important;background:var(--navy,#17364b)!important;color:#fff!important;box-shadow:none!important}
 body.page-home .shop-search-action span{display:none!important}
 body.page-home .ai-fab{display:none!important}
}
@media(prefers-reduced-motion:reduce){body.page-home .hero-slider *,body.page-home .hero-slider *::before,body.page-home .hero-slider *::after{animation:none!important;transition:none!important}}

/* Compact catalogue controls: keep products visible above the fold. */
body.page-home .cat-chips-bar{margin:1rem 0 .65rem!important;padding:.3rem!important;min-height:54px!important;border-radius:15px!important}body.page-home .cat-chips-scroll{gap:.25rem!important;padding:.1rem!important}body.page-home .cat-chip{min-height:42px!important;padding:.3rem .65rem!important;gap:.35rem!important;border-radius:11px!important}body.page-home .cat-chip-icon{width:28px!important;height:28px!important;min-width:28px!important}body.page-home .cat-chip-count{display:none!important}body.page-home #shopResults>.app-section-head{min-height:48px!important;margin:.35rem 0 .4rem!important;padding:.25rem .15rem!important;justify-content:space-between!important;background:transparent!important;border:0!important;box-shadow:none!important}body.page-home #shopResults>.app-section-head .app-section-title{font-size:clamp(1.35rem,2.2vw,1.8rem)!important;line-height:1.2!important}body.page-home .sort-select{min-height:38px!important;padding:.35rem .7rem!important}body.page-home .shop-search-form{min-height:48px!important;margin:.25rem 0 .4rem!important;padding:3px!important;border-radius:13px!important}body.page-home .shop-search-inner,body.page-home .shop-search-form input[type=search]{height:42px!important;min-height:42px!important}body.page-home .shop-search-action{min-height:40px!important;height:40px!important;padding:.45rem .85rem!important;border-radius:10px!important}body.page-home .shop-filter-shell{display:block!important;margin:0 0 .75rem!important;border:0!important;background:transparent!important}body.page-home .shop-filter-summary{display:flex!important;min-height:40px!important;padding:.45rem .75rem!important;border:1px solid var(--beige-dark,#e5ded4)!important;border-radius:11px!important;background:var(--surface,#fff)!important;font-size:.76rem!important;cursor:pointer!important}body.page-home .shop-filter-shell:not([open]) .shop-filter-panel{display:none!important}body.page-home .shop-filter-shell[open] .shop-filter-panel{display:grid!important;margin-top:.4rem!important;padding:.65rem!important;border-radius:12px!important;gap:.55rem!important}body.page-home .shop-filter-field>span{font-size:.68rem!important;margin-bottom:.2rem!important}body.page-home .shop-filter-field input,body.page-home .shop-filter-field select{min-height:40px!important;height:40px!important}@media(min-width:769px){body.page-home .shop-filter-panel{grid-template-columns:repeat(4,minmax(110px,1fr))!important}body.page-home .shop-filter-shell:not([open]){width:max-content;min-width:160px}}@media(max-width:768px){body.page-home .cat-chips-bar{margin:.65rem 0 .45rem!important;min-height:50px!important}body.page-home .cat-chip{min-height:40px!important;padding:.25rem .55rem!important}body.page-home #shopResults>.app-section-head{margin:.2rem 0 .35rem!important;min-height:44px!important}body.page-home #shopResults>.app-section-head .app-section-title{font-size:1.2rem!important}body.page-home .shop-filter-shell[open] .shop-filter-panel{grid-template-columns:1fr!important}}

/* Kids: friendly, tactile, and parent-readable. */
body.page-home #productsGrid{gap:1.15rem!important}
body.page-home #productsGrid .product-card{display:flex!important;flex-direction:column!important;border:1px solid rgba(30,61,78,.1)!important;border-radius:22px!important;background:#fff!important;box-shadow:0 9px 28px rgba(31,61,78,.055)!important;overflow:hidden!important}
body.page-home #productsGrid .product-img-wrap{aspect-ratio:1/1!important;height:auto!important;background:#f7f4ee!important;border-radius:0!important}
body.page-home #productsGrid .product-info{display:flex!important;flex-direction:column!important;flex:1!important;padding:.9rem 1rem 1rem!important}
body.page-home #productsGrid .product-age{order:-1;align-self:flex-start;border-radius:999px;background:#eef6f5;color:#27665f;padding:.25rem .55rem;font-size:.64rem!important;margin:0 0 .45rem!important}
body.page-home #productsGrid .product-name{font-size:.94rem!important;font-weight:850!important;line-height:1.55!important;min-height:2.95em!important;color:#18364b!important}
body.page-home #productsGrid .product-stars{font-size:.67rem!important;margin:.25rem 0!important}
body.page-home #productsGrid .product-price-wrap{margin-top:auto!important;padding-top:.5rem!important}
body.page-home #productsGrid .product-price{font-size:1.05rem!important;color:#18364b!important}
body.page-home #productsGrid .product-quick-add{width:44px!important;height:44px!important;left:12px!important;bottom:12px!important;border-radius:14px!important;background:#ef8f72!important;color:#fff!important;box-shadow:0 8px 20px rgba(239,143,114,.3)!important}
body.page-home #productsGrid .product-card:hover{transform:translateY(-4px)!important;box-shadow:0 18px 40px rgba(31,61,78,.1)!important}
@media(max-width:600px){body.page-home #productsGrid{gap:.75rem!important}body.page-home #productsGrid .product-card{border-radius:16px!important}body.page-home #productsGrid .product-info{padding:.68rem .72rem .78rem!important}body.page-home #productsGrid .product-name{font-size:.8rem!important}body.page-home #productsGrid .product-age{font-size:.56rem!important;padding:.18rem .4rem!important}body.page-home #productsGrid .product-quick-add{width:38px!important;height:38px!important;border-radius:12px!important}}
