/* UnitLand — public product V4. Scoped to .ulp4-* so the shared public shell is untouched. */
.ulp4-main{background:#f3f8f6;padding:0 0 42px;color:#16342f;font-family:Manrope,Roboto,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.55}
.ulp4-main *{box-sizing:border-box}
.ulp4-container{width:min(calc(100% - 48px),1160px);margin:0 auto}
.ulp4-main a{color:inherit}
.ulp4-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ulp4-breadcrumbs{display:flex;align-items:center;gap:9px;min-height:45px;color:#71867f;font-size:11px;flex-wrap:wrap}
.ulp4-breadcrumbs a{text-decoration:none;color:#4e6a61}
.ulp4-breadcrumbs a:hover{color:#079b68}
.ulp4-breadcrumbs span[aria-current]{color:#203e35;font-weight:650;max-width:100%;overflow-wrap:anywhere}
.ulp4-hero{display:grid;grid-template-columns:minmax(300px,350px) minmax(0,1fr) 300px;gap:22px;align-items:start;padding:4px 0 24px}
.ulp4-gallery{min-width:0}
.ulp4-thumb-rail{display:grid;gap:8px;grid-column:1;grid-row:1;align-content:start;max-height:490px;overflow-y:auto;scrollbar-width:thin;padding:2px}
.ulp4-thumb{display:grid;place-items:center;width:67px;height:67px;padding:5px;border:1px solid #dbe9e3;border-radius:9px;background:#fff;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.ulp4-thumb img{display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain}
.ulp4-thumb:hover{border-color:#8ed4b8}
.ulp4-thumb.is-active{border-color:#05a66f;box-shadow:0 0 0 2px #d7f5e9}
.ulp4-gallery{display:grid;grid-template-columns:67px minmax(0,1fr);gap:11px;align-items:start}
.ulp4-main-photo{position:relative;display:grid;grid-template-columns:1fr;grid-column:2;grid-row:1;min-width:0;background:#fff;border:1px solid #e3ece8;border-radius:12px;overflow:hidden;min-height:350px}
.ulp4-main-photo-link{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:350px;aspect-ratio:1/1;padding:18px;text-decoration:none;cursor:zoom-in;background:#fff}
.ulp4-main-photo-link img{display:block;width:100%;height:100%;max-height:430px;object-fit:contain}
.ulp4-main-photo-link.is-placeholder{cursor:default;min-height:350px;aspect-ratio:auto}
.ulp4-main-photo-link.is-placeholder img{max-width:72%;opacity:.75}
.ulp4-zoom{position:absolute;right:12px;bottom:55px;display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:7px;background:rgba(255,255,255,.94);border:1px solid #dfeae5;color:#3f5f55;font-size:10px;font-weight:700;box-shadow:0 3px 12px rgba(20,55,43,.08)}
.ulp4-zoom svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.ulp4-photo-tools{position:absolute;left:12px;right:12px;bottom:11px;display:flex;align-items:center;justify-content:space-between;gap:8px;pointer-events:none}
.ulp4-photo-tools button{pointer-events:auto;width:29px;height:29px;border:1px solid #dce8e3;border-radius:50%;background:#fff;color:#35584c;font-size:20px;line-height:1;cursor:pointer;box-shadow:0 3px 10px rgba(20,55,43,.07)}
.ulp4-photo-tools button:hover{border-color:#04a66f;color:#04a66f}
.ulp4-photo-counter{pointer-events:auto;margin:0 auto;font-size:10px;color:#667f76;background:rgba(255,255,255,.93);border:1px solid #e3ece8;border-radius:5px;padding:4px 7px}
.ulp4-intro{min-width:0;padding:4px 0}
.ulp4-micro{display:flex;flex-wrap:wrap;gap:7px 15px;color:#758c84;font-size:10.5px}
.ulp4-intro h1{font-size:clamp(23px,1.75vw,25px);line-height:1.2;letter-spacing:-.035em;margin:9px 0 9px;color:#13372f;font-weight:800;overflow-wrap:anywhere}
.ulp4-lead{margin:0;max-width:600px;color:#58716a;font-size:13.5px;line-height:1.65}
.ulp4-fitment-note,.ulp4-universal-note{display:flex;align-items:flex-start;gap:9px;background:#eaf8f1;border:1px solid #d4efe2;border-radius:9px;padding:11px 12px;margin-top:18px;color:#157248}
.ulp4-fitment-note>span,.ulp4-universal-note>span{display:grid;place-items:center;flex:none;width:19px;height:19px;border-radius:50%;background:#c8eedb;font-size:12px;font-weight:800;margin-top:1px}
.ulp4-fitment-note strong,.ulp4-universal-note strong{display:block;font-size:11.5px;line-height:1.45}
.ulp4-fitment-note small,.ulp4-universal-note small{display:block;font-size:10.5px;line-height:1.5;color:#65927e;margin-top:3px}
.ulp4-fitment-note a{margin-left:auto;white-space:nowrap;font-size:10px;font-weight:750;color:#078c5b}
.ulp4-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:19px 0 0;padding:13px 0 0;border-top:1px solid #dfeae5;font-size:10.5px}
.ulp4-meta div{display:flex;gap:5px;min-width:0}
.ulp4-meta dt{color:#84968f;flex:none}
.ulp4-meta dd{margin:0;color:#35564b;font-weight:700;overflow-wrap:anywhere}
.ulp4-buy{min-width:0;background:#fff;border:1px solid #e2ece7;border-radius:12px;box-shadow:0 8px 24px rgba(17,67,53,.06);padding:19px 17px 15px}
.ulp4-price-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:38px}
.ulp4-price-line strong{font-size:29px;letter-spacing:-.055em;line-height:1;color:#0d2f27}
.ulp4-price-line del{font-size:12px;color:#98aaa4}
.ulp4-discount{font-size:10px;color:#fff;background:#ed3e4f;border-radius:5px;padding:4px 6px;font-weight:800}
.ulp4-inventory{display:flex;align-items:flex-start;gap:7px;margin:15px 0 13px}
.ulp4-inventory i{width:7px;height:7px;border-radius:50%;background:#08a36b;margin-top:5px;flex:none}
.ulp4-inventory.backorder i{background:#d99816}
.ulp4-inventory.unknown i{background:#9bada6}
.ulp4-inventory strong{display:block;font-size:10.5px;color:#087a51;line-height:1.45}
.ulp4-inventory.backorder strong{color:#8d6815}
.ulp4-inventory.unknown strong{color:#647a72}
.ulp4-inventory small{display:block;color:#95a69f;font-size:9.5px;margin-top:3px}
.ulp4-primary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border-radius:8px;background:linear-gradient(100deg,#057d53,#04ac72);color:#fff!important;text-decoration:none;font-size:11.5px;font-weight:800;box-shadow:0 4px 12px rgba(0,126,80,.14)}
.ulp4-primary:hover{background:#06764f}
.ulp4-primary svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ulp4-buy-points{display:grid;gap:9px;margin:14px 0 12px;padding:12px 0;border-top:1px solid #edf2ef;border-bottom:1px solid #edf2ef;color:#506d62;font-size:9.5px;line-height:1.45}
.ulp4-buy-points div{display:flex;gap:7px;align-items:flex-start}
.ulp4-buy-points span{color:#356955;font-size:14px;line-height:1;margin-top:1px}
.ulp4-buy-points b{font-weight:700;color:#315347}
.ulp4-buy-points a{color:#3c6e5c;text-decoration:underline;text-underline-offset:2px}
.ulp4-seller{display:flex;align-items:center;gap:8px;padding-top:4px}
.ulp4-seller-avatar{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#e2f5ea;color:#08784e;font-size:11px;font-weight:800}
.ulp4-seller small{display:block;color:#97a8a1;font-size:8.5px;line-height:1.2}
.ulp4-seller strong{display:block;color:#315347;font-size:10px;line-height:1.4}
.ulp4-details{border-top:1px solid #dce8e2;margin-top:2px}
.ulp4-tabs{display:flex;align-items:center;gap:23px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid #dce8e2}
.ulp4-tabs::-webkit-scrollbar{display:none}
.ulp4-tab{border:0;border-bottom:3px solid transparent;background:none;padding:16px 3px 12px;color:#536d64;font:inherit;font-size:11px;font-weight:700;white-space:nowrap;cursor:pointer}
.ulp4-tab:hover{color:#079b68}
.ulp4-tab:focus-visible{outline:2px solid #079b68;outline-offset:2px;border-radius:3px}
.ulp4-tab.is-active{color:#08784f;border-bottom-color:#05a66f;font-weight:800}
.ulp4-panel{padding:20px 0 28px}
.ulp4-panel[hidden]{display:none}
.ulp4-description-wrap{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:34px;align-items:start}
.ulp4-description h3,.ulp4-specs-preview h3,.ulp4-wide-panel h3{font-size:18px;line-height:1.3;margin:0 0 14px;color:#163d34;letter-spacing:-.02em}
.ulp4-description{color:#4f6960;font-size:14px;line-height:1.75;min-width:0;overflow-wrap:anywhere}
.ulp4-description p{margin:0 0 12px}
.ulp4-description strong,.ulp4-description b{color:#244b3f}
.ulp4-description ul,.ulp4-description ol{margin:0 0 13px;padding-left:22px}
.ulp4-description li{margin:4px 0}
.ulp4-description a{color:#078b5b;text-decoration:underline;text-underline-offset:2px}
.ulp4-specs-preview{border-left:1px solid #dce8e2;padding-left:24px;min-width:0}
.ulp4-spec-table{margin:0}
.ulp4-spec-table>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,.8fr);gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid #e8efeb}
.ulp4-spec-table dt,.ulp4-spec-table dd{font-size:11px;line-height:1.5;margin:0;overflow-wrap:anywhere}
.ulp4-spec-table dt{color:#678077}
.ulp4-spec-table dd{color:#294e42;font-weight:700}
.ulp4-text-button{border:0;background:none;color:#078b5b;padding:12px 0 0;font:inherit;font-size:11px;font-weight:750;cursor:pointer}
.ulp4-wide-panel{max-width:980px;padding:3px 0 10px}
.ulp4-wide-panel p{color:#5b756b;font-size:13px;line-height:1.65}
.ulp4-spec-table-full{max-width:790px;margin-top:13px}
.ulp4-richtext{color:#4f6960;font-size:14px;line-height:1.8;max-width:820px}
.ulp4-richtext p{margin:0 0 12px}
.ulp4-richtext ul,.ulp4-richtext ol{margin:0 0 12px;padding-left:24px}
.ulp4-richtext li{margin:4px 0}
.ulp4-richtext strong{color:#284d40}
.ulp4-fitment-table{margin-top:15px;border:1px solid #e1ebe6;border-radius:9px;overflow:hidden;max-width:900px}
.ulp4-fitment-row{display:grid;grid-template-columns:1fr 1.3fr .8fr 1fr;gap:10px;padding:9px 12px;border-bottom:1px solid #edf2ef;font-size:11px;color:#4b675d}
.ulp4-fitment-row:last-child{border-bottom:0}
.ulp4-fitment-head{background:#f5faf7;color:#7b9189;font-size:9.5px;text-transform:uppercase;letter-spacing:.04em;font-weight:700}
.ulp4-related{padding-top:20px;margin-top:2px;border-top:1px solid #dce8e2}
.ulp4-section-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:13px}
.ulp4-section-head h2{font-size:20px;line-height:1.2;margin:0 0 4px;letter-spacing:-.025em}
.ulp4-section-head p{margin:0;color:#81958d;font-size:10.5px}
.ulp4-section-head>a{font-size:10.5px;font-weight:750;color:#078b5b;white-space:nowrap}
.ulp4-related-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.ulp4-related-card{min-width:0;background:#fff;border:1px solid #e0eae5;border-radius:10px;padding:10px;display:flex;flex-direction:column;min-height:218px;transition:transform .18s,border-color .18s,box-shadow .18s}
.ulp4-related-card:hover{transform:translateY(-2px);border-color:#b9dfcd;box-shadow:0 8px 18px rgba(17,67,53,.06)}
.ulp4-related-image{display:flex;align-items:center;justify-content:center;height:102px;padding:4px;text-decoration:none}
.ulp4-related-image img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.ulp4-related-card h3{font-size:10.5px;line-height:1.45;margin:5px 0 8px;font-weight:700;flex:1;overflow-wrap:anywhere}
.ulp4-related-card h3 a{text-decoration:none;color:#23483c}
.ulp4-related-card h3 a:hover{color:#078b5b}
.ulp4-related-bottom{display:flex;align-items:center;justify-content:space-between;gap:4px;flex-wrap:wrap}
.ulp4-related-bottom strong{font-size:12px;white-space:nowrap;color:#173b31}
.ulp4-related-bottom span{font-size:9px;color:#8a9e96;white-space:nowrap}
.ulp4-empty{background:#fff;border:1px solid #e1ebe6;border-radius:12px;padding:35px;margin:30px 0;text-align:center}
.ulp4-mobile-buy{display:none}
.ulp4-main img{max-width:100%}

@media(max-width:1250px){
  .ulp4-container{width:min(calc(100% - 38px),1160px)}
  .ulp4-hero{grid-template-columns:minmax(275px,315px) minmax(0,1fr) 285px;gap:18px}
  .ulp4-main-photo{min-height:320px}
  .ulp4-main-photo-link{min-height:320px}
  .ulp4-thumb{width:58px;height:58px}
  .ulp4-gallery{grid-template-columns:58px minmax(0,1fr)}
  .ulp4-price-line strong{font-size:26px}
  .ulp4-related-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1050px){
  .ulp4-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
  .ulp4-gallery{grid-column:1;grid-row:1/3}
  .ulp4-buy{grid-column:2;grid-row:2}
  .ulp4-intro{grid-column:2;grid-row:1}
  .ulp4-main-photo{min-height:420px}
  .ulp4-main-photo-link{min-height:420px}
  .ulp4-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .ulp4-main{padding-bottom:30px}
  .ulp4-container{width:min(calc(100% - 28px),650px)}
  .ulp4-hero{grid-template-columns:minmax(0,1fr);gap:13px;padding-top:1px}
  .ulp4-gallery,.ulp4-intro,.ulp4-buy{grid-column:1;grid-row:auto}
  .ulp4-main-photo{grid-column:1;grid-row:1;min-height:0}
  .ulp4-main-photo-link{min-height:0;height:min(82vw,330px);aspect-ratio:auto;padding:12px}
  .ulp4-main-photo-link.is-placeholder{aspect-ratio:auto;min-height:310px}
  .ulp4-gallery{display:grid;grid-template-columns:1fr;gap:8px}
  .ulp4-thumb-rail{grid-column:1;grid-row:2;display:flex;flex-direction:row;gap:7px;overflow-x:auto;max-height:none;padding:1px;order:2}
  .ulp4-main-photo{order:1}
  .ulp4-thumb{width:56px;height:56px;flex:none}
  .ulp4-zoom{bottom:46px;right:8px;padding:6px 7px;font-size:9px}
  .ulp4-photo-tools{left:8px;right:8px;bottom:7px}
  .ulp4-intro{padding:5px 0 0}
  .ulp4-intro h1{font-size:24px}
  .ulp4-buy{padding:16px 14px 13px}
  .ulp4-description-wrap{display:block}
  .ulp4-specs-preview{margin-top:22px;border-left:0;padding:0}
  .ulp4-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ulp4-related-card{min-height:225px;padding:10px}
  .ulp4-related-image{height:112px}
  .ulp4-tabs{gap:19px}
  .ulp4-tab{font-size:11px;padding-top:14px}
  .ulp4-panel{padding-top:17px}
  .ulp4-fitment-row{grid-template-columns:1fr 1.2fr .7fr;gap:7px}
  .ulp4-fitment-row span:nth-child(4){display:none}
}
@media(max-width:820px){body.page-product-v4{padding-bottom:0!important}}
@media(max-width:720px){
  .ulp4-mobile-buy{display:flex;position:fixed;z-index:35;left:0;right:0;bottom:0;align-items:center;justify-content:space-between;gap:12px;background:#fff;border-top:1px solid #dce8e2;box-shadow:0 -5px 22px rgba(9,43,32,.12);padding:9px max(14px,env(safe-area-inset-left)) calc(9px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-right))}
  .ulp4-mobile-buy small{display:block;color:#81958d;font-size:9px;line-height:1.2;margin-bottom:2px}
  .ulp4-mobile-buy strong{font-size:19px;line-height:1.1}
  .ulp4-mobile-buy a{display:flex;align-items:center;justify-content:center;min-height:39px;padding:0 20px;border-radius:8px;background:#04a66f;color:#fff!important;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}
  body.page-product-v4{padding-bottom:76px!important}
}
html.ulp4-pswp-open,html.ulp4-pswp-open body{overflow:hidden!important}
html.ulp4-pswp-open body{position:fixed;left:0;right:0;width:100%}
@media(max-width:390px){
  .ulp4-container{width:calc(100% - 22px)}
  .ulp4-intro h1{font-size:22px}
  .ulp4-price-line strong{font-size:25px}
  .ulp4-related-card{padding:8px;min-height:208px}
  .ulp4-related-image{height:94px}
  .ulp4-related-card h3{font-size:10px}
  .ulp4-tabs{gap:16px}
}
@media(prefers-reduced-motion:reduce){
  .ulp4-main *,.ulp4-main *:before,.ulp4-main *:after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Production gallery: photo determines rail height, independent of image count. */
@media(min-width:1051px){.ulp4-hero{grid-template-columns:minmax(0,44fr) minmax(0,30fr) minmax(260px,26fr)}}
.ulp4-gallery{grid-template-columns:74px minmax(0,1fr);gap:12px;align-items:start;min-width:0}
.ulp4-thumb-column{grid-column:1;grid-row:1;display:grid;grid-template-rows:30px minmax(0,1fr) 30px;gap:5px;height:var(--ulp4-photo-height,360px);min-height:0;min-width:0}
.ulp4-thumb-rail{grid-column:auto;grid-row:auto;display:flex;flex-direction:column;gap:8px;height:100%;max-height:100%;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;padding:3px;scroll-padding:3px;overscroll-behavior:contain;touch-action:pan-y;box-sizing:border-box}
.ulp4-thumb{width:100%;height:64px;min-height:64px;flex:0 0 64px;box-sizing:border-box}
.ulp4-rail-scroll{display:grid;place-items:center;width:100%;height:30px;padding:0;border:1px solid #dbe9e3;border-radius:7px;background:#fff;color:#087d56;font:700 18px Manrope,"Segoe UI",sans-serif;cursor:pointer;align-self:center}
.ulp4-rail-scroll:disabled{opacity:.4;cursor:default}
.ulp4-main-photo{display:block;grid-column:2;grid-row:1;min-height:0;height:auto}
.ulp4-main-photo-link{position:relative;display:block;width:100%;height:auto;min-height:0;aspect-ratio:1/1;padding:0}
.ulp4-main-photo-link img{position:absolute;inset:16px;width:calc(100% - 32px);height:calc(100% - 32px);max-height:none;object-fit:contain}
.ulp4-main-photo-link.is-placeholder{height:350px;min-height:0;aspect-ratio:auto}
.ulp4-cart{margin-top:18px}
@media(max-width:720px){
 .ulp4-gallery{grid-template-columns:minmax(0,1fr);gap:9px}
 .ulp4-main-photo{grid-column:1;grid-row:1;order:0}
 .ulp4-main-photo-link{height:min(82vw,380px);aspect-ratio:auto;min-height:0}
 .ulp4-thumb-column{grid-column:1;grid-row:2;grid-template-columns:30px minmax(0,1fr) 30px;grid-template-rows:minmax(0,1fr);height:66px;gap:5px}
 .ulp4-thumb-rail{display:flex;flex-direction:row;height:66px;max-height:66px;overflow-x:auto;overflow-y:hidden;touch-action:pan-x}
 .ulp4-thumb{width:56px;height:56px;min-height:56px;flex:0 0 56px}
 .ulp4-rail-scroll{width:30px;height:30px;transform:rotate(-90deg)}
}

@media(max-width:720px){.ulp4-thumb-column .ulp4-thumb-rail{grid-column:2;grid-row:1;order:0;height:66px;max-height:66px}.ulp4-thumb-column #ulp4-thumbs-prev{grid-column:1;grid-row:1}.ulp4-thumb-column #ulp4-thumbs-next{grid-column:3;grid-row:1}}
