/*
Theme Name: PetSitter Modern
Theme URI: https://example.com/
Author: OpenAI
Description: Tema marketplace responsive per pet sitter, servizi e prodotti per animali. Ottimizzato per desktop e con interfaccia mobile stile app.
Version: 3.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: petsitter-modern
*/
:root{--ps-orange:#ffb21f;--ps-pink:#ff4f7f;--ps-teal:#16b8ae;--ps-purple:#7957e8;--ps-blue:#258de8;--ps-green:#51c56c;--ps-dark:#161616;--ps-muted:#6b7280;--ps-bg:#fffdf9;--ps-card:#fff;--ps-line:#ececec;--ps-shadow:0 10px 30px rgba(20,30,45,.09);--ps-radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ps-bg);color:var(--ps-dark);font-family:Inter,ui-rounded,"SF Pro Rounded",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.ps-container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{background:rgba(255,255,255,.97);position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(25,35,45,.07);box-shadow:0 5px 24px rgba(31,45,61,.06);backdrop-filter:blur(16px)}
.ps-header-top{min-height:84px;display:flex;align-items:center;gap:25px}.site-logo{display:flex;align-items:center;flex:0 0 auto}.site-logo img{display:block;width:180px;height:auto;max-height:62px;object-fit:contain}.ps-header-search{height:48px;flex:1;max-width:560px;display:flex;align-items:center;border:1px solid #e6e9ed;background:#f8fafb;border-radius:16px;padding:4px 5px 4px 15px;transition:.2s}.ps-header-search:focus-within{background:#fff;border-color:var(--ps-teal);box-shadow:0 0 0 4px rgba(22,184,174,.10)}.ps-search-icon{font-size:25px;color:#66717a;line-height:1}.ps-header-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;padding:0 11px;font:inherit;font-size:13px;color:#222}.ps-header-search button{height:38px;border:0;border-radius:12px;padding:0 18px;background:var(--ps-teal);color:#fff;font-weight:850;cursor:pointer}.ps-header-tools{margin-left:auto;display:flex;align-items:center;gap:6px}.ps-tool-button{width:58px;min-height:54px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#4e5962;transition:.2s}.ps-tool-button:hover{background:#f2fbfa;color:var(--ps-teal)}.ps-tool-button span{font-size:22px;line-height:22px;font-weight:800}.ps-tool-button small{font-size:9px;margin-top:4px}.ps-login-link{font-weight:800;padding:12px 14px}.ps-register-button{white-space:nowrap}.ps-account-menu{position:relative;margin-left:5px}.ps-account-trigger{height:56px;display:flex;align-items:center;gap:10px;border:1px solid #e8eaed;background:#fff;border-radius:16px;padding:6px 10px 6px 7px;cursor:pointer;transition:.2s}.ps-account-trigger:hover{border-color:#cfd7da;box-shadow:0 8px 22px rgba(20,30,45,.09)}.ps-account-trigger img{width:42px;height:42px;border-radius:13px;object-fit:cover}.ps-account-copy{display:flex;flex-direction:column;text-align:left;line-height:1.2;max-width:125px}.ps-account-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ps-account-copy small{font-size:10px;color:#7a8289;margin-top:3px}.ps-account-dropdown{position:absolute;right:0;top:calc(100% + 10px);width:230px;background:#fff;border:1px solid #e9ecef;border-radius:17px;padding:9px;box-shadow:0 20px 50px rgba(20,30,45,.16);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.18s;z-index:120}.ps-account-menu:hover .ps-account-dropdown,.ps-account-menu:focus-within .ps-account-dropdown,.ps-account-menu.is-open .ps-account-dropdown{opacity:1;visibility:visible;transform:none}.ps-account-dropdown a{display:flex;align-items:center;padding:11px 12px;border-radius:11px;font-size:13px;font-weight:700}.ps-account-dropdown a:hover{background:#f1faf9;color:#078b84}.ps-dropdown-separator{height:1px;background:#eceff1;display:block;margin:6px}.ps-account-dropdown .ps-logout-link{color:#d33}.ps-header-nav-row{border-top:1px solid #f0f2f4;background:#fff}.ps-nav-inner{height:58px;display:flex;align-items:center;gap:15px}.main-nav{height:100%;display:flex;align-items:center;gap:2px;font-size:13px;font-weight:780;flex:1}.main-nav>a,.ps-nav-parent{height:42px;padding:0 13px;border-radius:12px;display:flex;align-items:center;gap:7px;white-space:nowrap;transition:.18s}.main-nav>a:hover,.ps-nav-parent:hover,.main-nav>a[aria-current="page"]{background:#effaf9;color:#058c85}.main-nav>a span,.ps-nav-parent span{font-size:16px}.ps-nav-parent b{font-size:11px;margin-left:1px}.ps-nav-dropdown{height:100%;display:flex;align-items:center;position:relative}.ps-nav-dropdown-panel{position:absolute;left:0;top:calc(100% - 3px);width:330px;padding:10px;background:#fff;border:1px solid #e9ecef;border-radius:18px;box-shadow:0 24px 55px rgba(20,30,45,.16);opacity:0;visibility:hidden;transform:translateY(-7px);transition:.18s;z-index:130}.ps-nav-dropdown:hover .ps-nav-dropdown-panel,.ps-nav-dropdown:focus-within .ps-nav-dropdown-panel{opacity:1;visibility:visible;transform:none}.ps-nav-dropdown-panel>a{display:flex;gap:13px;padding:12px;border-radius:13px;align-items:center}.ps-nav-dropdown-panel>a:hover{background:#f3fbfa}.ps-nav-dropdown-panel i{font-style:normal;width:38px;height:38px;border-radius:12px;background:#e8f8f6;color:#078d85;display:grid;place-items:center;font-size:18px}.ps-nav-dropdown-panel span{display:flex;flex-direction:column}.ps-nav-dropdown-panel strong{font-size:13px}.ps-nav-dropdown-panel small{font-size:10px;color:#7b8389;margin-top:2px}.ps-publish-desktop{display:flex;align-items:center;gap:7px;white-space:nowrap;border-radius:13px;padding:11px 17px;background:linear-gradient(135deg,var(--ps-pink),#ff7065);color:#fff;font-weight:850;font-size:13px;box-shadow:0 8px 19px rgba(255,79,127,.22);transition:.2s}.ps-publish-desktop:hover{transform:translateY(-1px);box-shadow:0 11px 24px rgba(255,79,127,.28)}.ps-publish-desktop span{font-size:19px}.mobile-menu-btn{display:none;border:0;background:#f2faf9;color:var(--ps-teal);font-size:24px;width:45px;height:45px;border-radius:13px}.ps-btn{border:0;border-radius:12px;padding:13px 21px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s}.ps-btn:hover{transform:translateY(-1px)}.ps-btn-primary{background:linear-gradient(135deg,var(--ps-pink),#ff6b60);color:#fff;box-shadow:0 8px 20px rgba(255,79,127,.25)}.ps-btn-orange{background:linear-gradient(135deg,#ffc02c,#ffa51b);color:#fff}.ps-btn-outline{background:#fff;border:1px solid #d8d8d8}
.ps-hero{padding:25px 0 0;background:#fff}.hero-grid{display:grid;grid-template-columns:46% 54%;align-items:center;min-height:355px}.hero-copy{padding:15px 0 20px 42px;position:relative;z-index:2}.hero-copy h1{font-size:52px;line-height:1.03;margin:0 0 18px;font-weight:900;letter-spacing:-2px}.hero-copy h1 .pink{color:var(--ps-pink)}.hero-copy h1 .teal{color:var(--ps-teal)}.hero-copy p{font-size:16px;max-width:475px;color:#333;margin-bottom:22px}.hero-actions{display:flex;gap:12px}.hero-art{align-self:stretch;overflow:hidden;min-height:355px}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:0 0 24px 24px}.search-panel{background:#fff;margin:-10px auto 15px;position:relative;z-index:4;border-radius:22px;padding:12px;box-shadow:var(--ps-shadow);border:1px solid #f0f0f0;display:grid;grid-template-columns:1fr 1fr 1fr 140px;gap:10px}.search-field{background:#fff;border:1px solid #e8e8e8;border-radius:15px;padding:8px 15px;display:flex;align-items:center;gap:12px;min-height:60px}.search-field .ico{font-size:23px}.search-field label{font-size:10px;color:#777;display:block}.search-field input,.search-field select{border:0;outline:0;background:transparent;width:100%;font-weight:650;font-size:14px}.category-row{display:grid;grid-template-columns:repeat(7,1fr);gap:15px;padding:12px 30px 26px;background:#fff}.category-item{text-align:center;font-size:13px}.category-icon{width:52px;height:52px;border-radius:50%;margin:0 auto 8px;display:grid;place-items:center;font-size:25px;background:#f5f1ff;color:var(--ps-purple)}.category-item:nth-child(2) .category-icon{background:#fff1e9;color:#ff7d1a}.category-item:nth-child(3) .category-icon{background:#ffe9ef;color:var(--ps-pink)}.category-item:nth-child(4) .category-icon{background:#e7faf5;color:var(--ps-teal)}.category-item:nth-child(5) .category-icon{background:#fff5d7;color:var(--ps-orange)}.category-item:nth-child(6) .category-icon{background:#e7f3ff;color:var(--ps-blue)}.category-item:nth-child(7) .category-icon{background:#ffe7ef;color:var(--ps-pink)}.section{padding:20px 0}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-head h2{font-size:24px;margin:0}.section-head a{color:var(--ps-teal);font-weight:800;font-size:14px}.listing-grid{display:grid;grid-template-columns:repeat(4,1fr) 200px;gap:15px}.listing-grid.no-promo{grid-template-columns:repeat(4,1fr)}.listing-card{background:#fff;border:1px solid #ededed;border-radius:16px;overflow:hidden;box-shadow:0 5px 14px rgba(0,0,0,.04);position:relative}.listing-card-image{height:155px;position:relative;background:#eee;overflow:hidden}.listing-card-image img{width:100%;height:100%;object-fit:cover;transition:.25s}.listing-card:hover .listing-card-image img{transform:scale(1.03)}.listing-badge{position:absolute;left:10px;top:10px;color:#fff;font-size:10px;font-weight:850;padding:5px 9px;border-radius:8px;text-transform:uppercase;background:var(--ps-teal)}.badge-service{background:#f88925}.badge-product{background:var(--ps-purple)}.favorite-btn{position:absolute;right:10px;top:9px;background:#fff;border:0;border-radius:50%;width:34px;height:34px;font-size:18px;cursor:pointer}.listing-card-body{padding:13px}.listing-title{font-size:15px;font-weight:850;margin:0 0 4px}.listing-place,.listing-meta{font-size:12px;color:#555}.listing-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:12px}.rating{font-size:12px}.rating b{color:#f5a800}.price{font-weight:900}.register-promo{border-radius:18px;padding:20px;background:linear-gradient(155deg,#fff7e8,#fff0ee);min-height:100%;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden}.register-promo h3{font-size:23px;line-height:1.05;margin:5px 0 10px}.register-promo p{font-size:13px}.register-promo img{margin-top:auto;align-self:center;width:150px}.promo-grid{display:grid;grid-template-columns:1.1fr 1.05fr .8fr;gap:16px;padding-bottom:35px}.promo-card{min-height:150px;border-radius:20px;padding:20px;display:grid;grid-template-columns:1fr 45%;overflow:hidden;align-items:center}.promo-card.teal{background:#bceeea}.promo-card.yellow{background:#ffe5a0}.promo-card.pink{background:#ffe4eb;grid-template-columns:1fr}.promo-card img{width:100%;height:130px;object-fit:cover;border-radius:14px}.promo-card h3{margin:0 0 8px;font-size:20px}.promo-card p{font-size:13px;margin:0 0 15px}.trust-list{list-style:none;padding:0;margin:0;font-size:14px}.trust-list li{margin:8px 0}.site-footer{background:#171717;color:#fff;padding:45px 0 95px;margin-top:30px}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:30px}.footer-logo{filter:brightness(0) invert(1);width:210px}.footer-title{font-weight:850;margin-bottom:12px}.footer-links{display:grid;gap:8px;font-size:14px;color:#ddd}.mobile-bottom-nav{display:none}.ps-form-wrap{width:min(760px,calc(100% - 30px));margin:35px auto;background:#fff;padding:28px;border-radius:20px;box-shadow:var(--ps-shadow)}.ps-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ps-field{display:grid;gap:6px}.ps-field.full{grid-column:1/-1}.ps-field label{font-weight:750}.ps-field input,.ps-field select,.ps-field textarea{width:100%;border:1px solid #dedede;border-radius:12px;padding:13px;font:inherit}.ps-notice{padding:13px 15px;border-radius:12px;background:#eafaf4;color:#176a50;margin-bottom:15px}.ps-account-card{display:flex;gap:20px;align-items:center;background:#f8fffe;border-radius:16px;padding:18px}.ps-page-title{text-align:center;font-size:38px;margin:35px 0 10px}

@media (min-width:901px) and (max-width:1180px){.ps-container{width:min(100% - 28px,1120px)}.ps-header-top{gap:14px}.site-logo img{width:155px}.ps-header-search{max-width:390px}.ps-tool-button{width:45px}.ps-tool-button small{display:none}.ps-account-copy{display:none}.main-nav>a,.ps-nav-parent{padding:0 9px;font-size:12px}.main-nav>a span,.ps-nav-parent span{display:none}.ps-publish-desktop{padding:10px 13px}}
@media(max-width:900px){body{padding-bottom:78px}.site-header{min-height:68px}.ps-container{width:min(100% - 24px,700px)}.ps-header-top{min-height:68px;gap:12px}.site-logo img{width:145px}.ps-header-search,.ps-header-tools,.ps-header-nav-row{display:none}.mobile-menu-btn{display:block;margin-left:auto}.hero-grid{display:block;min-height:auto}.hero-copy{padding:22px 10px 8px}.hero-copy h1{font-size:39px;letter-spacing:-1.3px}.hero-copy p{font-size:14px}.hero-art{height:235px;min-height:0}.hero-art img{border-radius:24px}.search-panel{grid-template-columns:1fr;margin:10px 0 8px}.search-field{min-height:53px}.category-row{grid-template-columns:repeat(4,1fr);padding:15px 4px;gap:16px 5px}.category-item:nth-child(n+5){display:none}.category-icon{width:47px;height:47px}.listing-grid,.listing-grid.no-promo{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;gap:10px}.listing-card{min-width:205px;scroll-snap-align:start}.listing-card-image{height:145px}.register-promo{display:none}.promo-grid{grid-template-columns:1fr}.promo-card.pink{display:none}.footer-grid{grid-template-columns:1fr 1fr}.mobile-bottom-nav{position:fixed;z-index:100;bottom:0;left:0;right:0;height:72px;background:#fff;border-top:1px solid #e8e8e8;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -5px 20px rgba(0,0,0,.07)}.mobile-nav-item{text-align:center;font-size:10px;color:#333}.mobile-nav-item span{display:block;font-size:22px;line-height:28px}.mobile-nav-item.publish span{background:var(--ps-teal);color:#fff;width:48px;height:48px;line-height:44px;border-radius:50%;margin:-26px auto 2px;border:4px solid #fff}.section-head h2{font-size:21px}.ps-form-grid{grid-template-columns:1fr}.ps-field.full{grid-column:auto}.ps-form-wrap{padding:20px}.ps-page-title{font-size:30px}.mobile-app-hero{background:linear-gradient(160deg,#19bdb5,#54d5cd);border-radius:0 0 28px 28px;color:white;margin:0 -12px 18px;padding:18px 18px 20px;position:relative;overflow:hidden}.mobile-app-hero img{position:absolute;right:-20px;top:-10px;width:155px;height:150px;object-fit:cover;border-radius:0 0 0 40px}.mobile-app-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px;position:relative;z-index:2}.mobile-app-action{background:#fff;color:#222;border-radius:15px;padding:13px;font-weight:800;min-height:65px;display:flex;align-items:center;gap:9px}.desktop-hero{display:none}}@media(min-width:901px){.mobile-only{display:none!important}}

body.ps-dark{background:#10151a;color:#f7f7f7}body.ps-dark .site-header,body.ps-dark .listing-card,body.ps-dark .ps-panel,body.ps-dark .ps-dashboard-menu,body.ps-dark .ps-dashboard-main{background:#172028;color:#fff}body.ps-dark a{color:inherit}.ps-dark-toggle{position:fixed;right:18px;bottom:88px;z-index:9999;width:48px;height:48px;border:0;border-radius:50%;box-shadow:0 5px 20px rgba(0,0,0,.2);cursor:pointer}

/* Elementor insertion areas */
.psm-elementor-slot{width:100%;clear:both}.psm-elementor-slot:empty{display:none}.psm-elementor-slot .elementor{width:100%}.elementor-page .site-main,.elementor-template-full-width .site-main{max-width:none;padding:0}.psm-slot-admin-note{padding:12px;border:1px dashed #bbb;border-radius:10px;background:#fff}


/* Mobile app-style drawer v2.9 */
.mobile-menu-btn{display:none;border:0;background:#eefafa;width:50px;height:50px;border-radius:17px;padding:13px;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;box-shadow:0 8px 20px rgba(22,184,174,.12)}
.mobile-menu-btn span{display:block;width:23px;height:3px;border-radius:99px;background:var(--ps-teal);transition:.2s}
.ps-mobile-drawer{display:none}
@media(max-width:900px){
  .mobile-menu-btn{display:flex;position:relative;z-index:1003}
  .ps-mobile-drawer{display:block;position:fixed;inset:0;z-index:1002;pointer-events:none}
  .ps-mobile-drawer.is-open{pointer-events:auto}
  .ps-mobile-drawer-backdrop{position:absolute;inset:0;background:rgba(18,26,34,.45);backdrop-filter:blur(4px);opacity:0;transition:opacity .28s}
  .ps-mobile-drawer-panel{position:absolute;top:0;right:0;width:min(92vw,420px);height:100%;background:#fff;border-radius:28px 0 0 28px;box-shadow:-20px 0 60px rgba(14,28,40,.22);transform:translateX(105%);transition:transform .3s ease;overflow-y:auto;padding:18px 18px calc(32px + env(safe-area-inset-bottom))}
  .ps-mobile-drawer.is-open .ps-mobile-drawer-backdrop{opacity:1}
  .ps-mobile-drawer.is-open .ps-mobile-drawer-panel{transform:none}
  .ps-mobile-drawer-head{display:flex;align-items:center;gap:12px;padding:6px 2px 16px;border-bottom:1px solid #edf0f2}
  .ps-mobile-user-card{display:flex;align-items:center;gap:12px;min-width:0;flex:1}
  .ps-mobile-user-card img,.ps-mobile-guest-avatar{width:58px;height:58px;border-radius:18px;object-fit:cover;background:#ecfbfa;display:grid;place-items:center;font-size:27px}
  .ps-mobile-user-card div{display:flex;flex-direction:column;min-width:0}
  .ps-mobile-user-card strong{font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ps-mobile-user-card small{font-size:12px;color:#7a838c;margin-top:3px}
  .ps-mobile-menu-close{width:42px;height:42px;border:0;border-radius:14px;background:#f3f5f6;color:#24313a;font-size:29px;line-height:1;cursor:pointer}
  .ps-mobile-auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}
  .ps-mobile-auth-actions a{height:46px;border:1px solid #dfe5e8;border-radius:14px;display:grid;place-items:center;font-weight:850}
  .ps-mobile-auth-actions .primary{background:var(--ps-teal);border-color:var(--ps-teal);color:#fff}
  .ps-mobile-menu-grid{display:grid;gap:8px;margin:16px 0}
  .ps-mobile-menu-grid>a{display:flex;align-items:center;gap:13px;padding:12px;border-radius:16px;transition:.18s}
  .ps-mobile-menu-grid>a:active,.ps-mobile-menu-grid>a:hover{background:#f0fbfa}
  .ps-mobile-menu-grid i{width:48px;height:48px;border-radius:15px;background:#edfafa;color:#108f88;display:grid;place-items:center;font-style:normal;font-size:23px;flex:0 0 auto}
  .ps-mobile-menu-grid span{display:flex;flex-direction:column;line-height:1.2}
  .ps-mobile-menu-grid strong{font-size:16px}
  .ps-mobile-menu-grid small{font-size:11px;color:#7c858d;margin-top:4px}
  .ps-mobile-publish{height:56px;border-radius:17px;background:linear-gradient(135deg,#ff4f7f,#ff7a5f);color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;font-size:17px;font-weight:900;box-shadow:0 12px 24px rgba(255,79,127,.23);margin:18px 0}
  .ps-mobile-publish span{font-size:27px;line-height:1}
  .ps-mobile-menu-footer{display:flex;flex-wrap:wrap;gap:8px 16px;padding:16px 5px 0;border-top:1px solid #edf0f2}
  .ps-mobile-menu-footer a{font-size:13px;font-weight:750;color:#5d6871}
  body.ps-mobile-menu-open{overflow:hidden}
}

/* Mobile drawer viewport fix v3.0 */
@media (max-width:900px){
  .site-header{ -webkit-backdrop-filter:none!important; backdrop-filter:none!important; }
  .ps-mobile-drawer{
    position:fixed!important; inset:0!important; width:100vw!important; height:100dvh!important;
    min-height:100vh!important; max-height:none!important; z-index:2147483000!important;
    isolation:isolate!important; overflow:visible!important;
  }
  .ps-mobile-drawer-backdrop{position:fixed!important;inset:0!important;z-index:1!important;}
  .ps-mobile-drawer-panel{
    position:fixed!important; top:0!important; right:0!important; bottom:0!important;
    width:min(92vw,420px)!important; height:100dvh!important; min-height:100vh!important;
    max-height:100dvh!important; z-index:2!important; overflow-y:auto!important;
    overscroll-behavior:contain; -webkit-overflow-scrolling:touch;
    padding-top:calc(18px + env(safe-area-inset-top))!important;
  }
  body.admin-bar .ps-mobile-drawer-panel{top:0!important;height:100dvh!important;max-height:100dvh!important;}
}
