:root { --zm-brown:#713d29; --zm-brown-dark:#402117; --zm-brown-medium:#8c5a43; --zm-brown-light:#b58770; --zm-pink:#ed5b70; --zm-pink-dark:#dc465d; --zm-pink-light:#fdebed; --zm-cream:#fffaf5; --zm-beige:#fcf6ef; --zm-text:#442c22; --zm-muted:#77665e; --zm-border:#eadbd0; --zm-border-light:#f2e8e0; --zm-white:#fff; --zm-radius:18px; --zm-shadow:0 8px 25px rgba(78,43,27,.06); --zm-shadow-hover:0 17px 40px rgba(78,43,27,.13); }

html { scroll-behavior:smooth; }
body { margin:0; }
.zm-page,.zm-page * { box-sizing:border-box; }
.zm-page { width:100%; overflow-x:hidden; background:var(--zm-white); color:var(--zm-text); font-family:"Nunito","Helvetica Neue",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
.zm-page img { display:block; max-width:100%; height:auto; }
.zm-page a { text-decoration:none; }
.zm-page svg { display:block; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.zm-container { width:min(1180px,calc(100% - 48px)); margin-left:auto; margin-right:auto; }

.zm-header { position:relative; z-index:100; background:linear-gradient(90deg,#fffaf6 0%,#fff7f4 100%); border-bottom:1px solid #eedfd5; }
.zm-header-inner { min-height:102px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:34px; }
.zm-logo { display:flex; align-items:center; flex-shrink:0; }
.zm-logo img { width:215px; max-height:72px; object-fit:contain; }

.zm-nav { justify-self:center; display:flex; align-items:center; gap:6px; }
.zm-nav a { min-height:44px; padding:0 17px; display:flex; align-items:center; border-radius:9px; color:var(--zm-brown-dark); font-size:14px; font-weight:800; white-space:nowrap; transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease; }
.zm-nav-main { border:1px solid transparent; }
.zm-nav-rental:hover { color:var(--zm-brown); border-color:rgba(113,61,41,.18); background:rgba(255,255,255,.65); }
.zm-nav-icecream { color:var(--zm-pink); }
.zm-nav-icecream:hover { color:var(--zm-pink-dark); background:var(--zm-pink-light); }
.zm-nav-secondary:hover { color:var(--zm-pink); background:rgba(255,255,255,.65); }

.zm-header-phone { min-width:205px; padding:10px 15px; display:flex; align-items:center; gap:11px; border:1px solid rgba(237,91,112,.38); border-radius:11px; background:rgba(255,255,255,.58); transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.zm-header-phone:hover { background:#fff; border-color:var(--zm-pink); transform:translateY(-2px); box-shadow:0 7px 20px rgba(237,91,112,.12); }
.zm-header-phone-icon { width:34px; height:34px; display:flex; align-items:center; justify-content:center; flex-shrink:0; border-radius:50%; background:var(--zm-pink-light); color:var(--zm-pink); }
.zm-header-phone-icon svg { width:17px; height:17px; fill:currentColor; stroke:none; }
.zm-header-phone small,.zm-header-phone strong { display:block; }
.zm-header-phone small { margin-bottom:2px; color:var(--zm-muted); font-size:10px; }
.zm-header-phone strong { color:var(--zm-pink); font-size:16px; font-weight:900; }

.zm-hero { position:relative; background:linear-gradient(90deg,#fff 0%,#fff 47%,#fffaf7 100%); }
.zm-hero-grid { min-height:500px; display:grid; grid-template-columns:.95fr 1.05fr; align-items:center; }
.zm-hero-content { position:relative; z-index:5; padding:32px 30px 50px 0; }
.zm-eyebrow { display:inline-flex; margin-bottom:17px; padding:7px 12px; border-radius:30px; background:#fff4ec; color:var(--zm-brown-medium); font-size:11px; font-weight:800; letter-spacing:.25px; text-transform:uppercase; }
.zm-hero-content h1 { max-width:590px; margin:0 0 24px; color:var(--zm-brown-dark); font-size:clamp(47px,5vw,70px); font-weight:900; line-height:.99; letter-spacing:-2.4px; }
.zm-hero-content p { max-width:545px; margin:0; color:var(--zm-text); font-size:17px; line-height:1.6; }
.zm-hero-content p strong { color:var(--zm-brown-dark); font-weight:900; }

.zm-hero-visual { position:relative; height:100%; min-height:475px; }
.zm-hero-shape { position:absolute; width:590px; height:420px; top:45px; right:-85px; border-radius:52% 0 0 52%; background:linear-gradient(145deg,rgba(255,226,219,.88),rgba(255,245,239,.38)); }
.zm-hero-dots { position:absolute; right:-15px; top:190px; width:75px; height:120px; opacity:.28; background-image:radial-gradient(circle,var(--zm-pink) 2px,transparent 2px); background-size:13px 13px; }
.zm-hero-machine { position:absolute; z-index:2; right:2%; bottom:18px; width:350px; max-height:470px; object-fit:contain; }
.zm-hero-icecream { position:absolute; z-index:4; left:7%; bottom:-3px; width:265px; object-fit:contain; filter:drop-shadow(0 12px 15px rgba(81,45,31,.08)); }

.zm-main-actions { position:relative; z-index:10; margin-top:42px; padding-bottom:42px; }
.zm-actions-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }

.zm-action-card { position:relative; min-height:310px; padding:30px 25px 22px; display:flex; flex-direction:column; align-items:center; text-align:center; overflow:hidden; border:2px solid var(--zm-border); border-radius:var(--zm-radius); color:var(--zm-text); cursor:pointer; box-shadow:var(--zm-shadow); transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease; }
.zm-action-card:hover { transform:translateY(-5px); }
.zm-action-card:active { transform:translateY(-1px); }
.zm-action-rental { border-color:#ead6c9; background:linear-gradient(145deg,#fff 0%,#fff9f3 55%,#f9eee5 100%); }
.zm-action-rental:hover { border-color:#8b5138; box-shadow:0 18px 40px rgba(101,56,36,.14); }
.zm-action-icecream { border-color:#f4d5da; background:linear-gradient(145deg,#fff 0%,#fff8f9 55%,#fdecef 100%); }
.zm-action-icecream:hover { border-color:var(--zm-pink); box-shadow:0 18px 40px rgba(237,91,112,.15); }
.zm-action-stand { border-color:#e9ded6; background:linear-gradient(145deg,#fff 0%,#fcf8f3 55%,#f5ede6 100%); }
.zm-action-stand:hover { border-color:var(--zm-brown-medium); box-shadow:0 18px 40px rgba(113,61,41,.12); }

.zm-action-icon { width:76px; height:76px; margin-bottom:20px; display:flex; align-items:center; justify-content:center; border-radius:50%; transition:transform .25s ease; }
.zm-action-icon svg { width:37px; height:37px; stroke-width:2; }
.zm-action-rental .zm-action-icon { color:var(--zm-brown); background:#f6e5d8; }
.zm-action-icecream .zm-action-icon { color:var(--zm-pink); background:#fce4e8; }
.zm-action-stand .zm-action-icon { color:var(--zm-brown-medium); background:#f4ebe4; }
.zm-action-card:hover .zm-action-icon { transform:scale(1.06); }

.zm-action-card h2 { margin:0 0 11px; color:var(--zm-brown-dark); font-size:27px; font-weight:900; line-height:1.08; letter-spacing:-.55px; }
.zm-action-card p { min-height:42px; margin:0 0 23px; color:var(--zm-muted); font-size:13px; line-height:1.45; }

.zm-card-cta { width:100%; min-height:52px; margin-top:auto; padding:10px 17px; display:flex; align-items:center; justify-content:space-between; border-radius:10px; color:#fff; font-size:13px; font-weight:800; transition:transform .25s ease,box-shadow .25s ease; }
.zm-card-cta-brown { background:linear-gradient(135deg,var(--zm-brown),#7d452f); }
.zm-card-cta-pink { background:linear-gradient(135deg,var(--zm-pink),var(--zm-pink-dark)); }
.zm-card-cta-stand { background:linear-gradient(135deg,#8c5a43,#a46b51); }
.zm-action-card:hover .zm-card-cta { transform:translateY(-2px); }
.zm-arrow { display:inline-block; margin-left:14px; font-size:25px; font-weight:400; transition:transform .25s ease; }
.zm-action-card:hover .zm-arrow { transform:translateX(6px); }
.zm-action-card:focus-visible { outline:3px solid rgba(237,91,112,.3); outline-offset:4px; }

.zm-current { padding:24px 0 44px; }
.zm-current-box { display:grid; grid-template-columns:1.2fr 1fr; overflow:hidden; border:1px solid var(--zm-border); border-radius:18px; background:#fff; box-shadow:0 7px 24px rgba(78,43,27,.05); }
.zm-current-season { padding:29px 35px; background:linear-gradient(135deg,#fffaf5 0%,#fff6f2 100%); }
.zm-current-tip { padding:29px 31px; display:block; border-left:1px solid var(--zm-border); background:#fff; }
.zm-current-label { margin-bottom:7px; color:var(--zm-pink); font-size:10px; font-weight:900; letter-spacing:.6px; text-transform:uppercase; }
.zm-current h2 { margin:0 0 9px; color:var(--zm-brown-dark); font-size:24px; font-weight:900; line-height:1.15; }
.zm-current h3 { margin:0 0 8px; color:var(--zm-brown-dark); font-size:18px; font-weight:900; line-height:1.2; }
.zm-current p { margin:0; color:var(--zm-muted); font-size:13px; line-height:1.55; }
.zm-current-meta { padding:10px 4px 0; display:flex; align-items:center; justify-content:flex-end; gap:7px; color:var(--zm-muted); font-size:10.5px; line-height:1.4; }
.zm-current-meta a { color:var(--zm-brown-medium); font-weight:700; }
.zm-current-meta a:hover { color:var(--zm-pink); }
.zm-current-meta-separator { color:var(--zm-brown-light); }

.zm-secondary { padding:26px 0; background:#fff; border-top:1px solid var(--zm-border-light); border-bottom:1px solid var(--zm-border-light); }
.zm-secondary-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.zm-secondary-item { min-height:73px; padding:0 23px; display:grid; grid-template-columns:40px 1fr auto; align-items:center; gap:13px; color:var(--zm-text); border-right:1px solid var(--zm-border); transition:background .2s ease; }
.zm-secondary-item:first-child { padding-left:5px; }
.zm-secondary-item:last-child { border-right:0; }
.zm-secondary-item:hover { background:var(--zm-cream); }
.zm-secondary-icon { color:var(--zm-pink); }
.zm-secondary-item:nth-child(2n) .zm-secondary-icon { color:var(--zm-brown-medium); }
.zm-secondary-icon svg { width:29px; height:29px; stroke-width:1.7; }
.zm-secondary-item strong { display:block; margin-bottom:4px; color:var(--zm-brown-dark); font-size:14px; font-weight:800; }
.zm-secondary-item small { display:block; color:var(--zm-muted); font-size:11px; line-height:1.3; }
.zm-secondary-item:hover strong { color:var(--zm-pink); }
.zm-chevron { color:var(--zm-brown-light); font-size:27px; transition:transform .2s ease; }
.zm-secondary-item:hover .zm-chevron { transform:translateX(4px); }

.zm-benefits { padding:36px 0; }
.zm-benefits-box { padding:31px 23px; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid #efddd0; border-radius:17px; background:linear-gradient(135deg,#fffaf5,#fdf7f1); }
.zm-benefit { min-height:78px; padding:0 20px; display:grid; grid-template-columns:52px 1fr; align-items:center; gap:14px; border-right:1px solid #eadbcf; }
.zm-benefit:first-child { padding-left:5px; }
.zm-benefit:last-child { border-right:0; }
.zm-benefit-icon { color:var(--zm-brown-medium); }
.zm-benefit-icon svg { width:38px; height:38px; stroke-width:1.6; }
.zm-benefit strong { display:block; margin-bottom:6px; color:var(--zm-brown-dark); font-size:13px; font-weight:800; line-height:1.25; }
.zm-benefit span { display:block; color:var(--zm-muted); font-size:11px; line-height:1.45; }

.zm-contact-cta { padding:4px 0 48px; }
.zm-contact-box { position:relative; min-height:180px; overflow:hidden; padding:28px 50px 28px 235px; display:grid; grid-template-columns:1fr auto; align-items:center; gap:40px; border-radius:19px; background:linear-gradient(110deg,#fff4ef,#fdecef); }
.zm-contact-image { position:absolute; left:20px; bottom:-22px; width:195px; }
.zm-contact-content h2 { margin:0 0 11px; color:var(--zm-brown-dark); font-size:27px; font-weight:900; line-height:1.08; letter-spacing:-.5px; }
.zm-contact-content p { max-width:360px; margin:0; color:var(--zm-muted); font-size:13px; line-height:1.55; }

.zm-contact-phone { min-width:275px; padding:16px 22px; display:flex; align-items:center; justify-content:center; gap:17px; border:1.5px solid var(--zm-pink); border-radius:13px; background:rgba(255,255,255,.62); transition:background .2s ease,transform .2s ease,box-shadow .2s ease; }
.zm-contact-phone:hover { background:#fff; transform:translateY(-2px); box-shadow:0 8px 22px rgba(237,91,112,.12); }
.zm-contact-phone-icon { color:var(--zm-pink); }
.zm-contact-phone-icon svg { width:34px; height:34px; fill:currentColor; stroke:none; }
.zm-contact-number strong { display:block; color:var(--zm-pink); font-size:30px; font-weight:900; line-height:1.05; }
.zm-contact-number small { display:block; margin-top:6px; color:var(--zm-text); font-size:11px; text-align:center; }

.zm-footer { padding-top:12px; background:#fff; }
.zm-footer-grid { padding:31px 0 39px; display:grid; grid-template-columns:1.6fr 1fr 1.3fr 1fr; gap:43px; }
.zm-footer-brand img { width:205px; margin-bottom:15px; }
.zm-footer-brand p { max-width:280px; margin:0; color:var(--zm-muted); font-size:13px; line-height:1.55; }
.zm-footer-column { display:flex; flex-direction:column; align-items:flex-start; }
.zm-footer-column strong { margin-bottom:14px; color:var(--zm-brown-dark); font-size:13px; font-weight:800; }
.zm-footer-column a,.zm-footer-column span { margin:4px 0; color:var(--zm-text); font-size:12px; line-height:1.45; }
.zm-footer-column a:hover { color:var(--zm-pink); }

.zm-footer-bottom { border-top:1px solid var(--zm-border); background:var(--zm-cream); }
.zm-footer-bottom-inner { min-height:55px; display:flex; align-items:center; justify-content:space-between; color:var(--zm-muted); font-size:11px; }
.zm-footer-bottom-inner div { display:flex; gap:32px; }
.zm-footer-bottom a { color:var(--zm-muted); }
.zm-footer-bottom a:hover { color:var(--zm-pink); }

@media (max-width:1050px) {
.zm-header-inner { grid-template-columns:auto 1fr; }
.zm-header-phone { display:none; }
.zm-nav { justify-self:end; }
}

@media (min-width:701px) and (max-width:900px) {
.zm-container { width:min(calc(100% - 38px),840px); }
.zm-header-inner { min-height:88px; gap:20px; }
.zm-logo img { width:185px; }
.zm-nav { gap:2px; }
.zm-nav a { padding:0 9px; font-size:12px; }

.zm-hero-grid { display:block; min-height:0; }
.zm-hero-content { padding:55px 0 32px; text-align:center; }
.zm-hero-content h1 { max-width:620px; margin:0 auto 25px; font-size:56px; line-height:.98; }
.zm-hero-content p { max-width:620px; margin:0 auto; font-size:16px; line-height:1.55; }
.zm-hero-visual { position:relative; height:455px; min-height:455px; margin-top:10px; }
.zm-hero-machine { right:22%; bottom:12px; width:270px; max-height:410px; }
.zm-hero-icecream { left:22%; bottom:0; width:210px; max-height:300px; }
.zm-hero-shape { width:620px; height:350px; top:72px; right:-80px; }
.zm-hero-dots { top:210px; right:-10px; }

.zm-main-actions { margin-top:40px; }
.zm-actions-grid { grid-template-columns:repeat(2,1fr); gap:20px; }
.zm-action-stand { grid-column:1/-1; width:calc(50% - 10px); justify-self:center; }

.zm-current-box { grid-template-columns:1fr; }
.zm-current-tip { border-left:0; border-top:1px solid var(--zm-border); }

.zm-secondary-grid { grid-template-columns:repeat(2,1fr); }
.zm-secondary-item { border-bottom:1px solid var(--zm-border); }
.zm-secondary-item:nth-child(2) { border-right:0; }

.zm-benefits-box { grid-template-columns:repeat(2,1fr); row-gap:25px; }
.zm-benefit:nth-child(2) { border-right:0; }

.zm-contact-box { padding-left:170px; }
.zm-contact-image { width:145px; }

.zm-footer-grid { grid-template-columns:1.5fr 1fr 1fr; }
}

@media (max-width:700px) {
.zm-container { width:calc(100% - 28px); }

.zm-header-inner { min-height:auto; padding:17px 0 16px; display:flex; flex-direction:column; gap:15px; }
.zm-logo img { width:190px; }
.zm-header-phone { display:none; }
.zm-nav { width:100%; display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.zm-nav a { min-height:43px; padding:0 8px; justify-content:center; border:1px solid #eadbd0; background:rgba(255,255,255,.58); color:var(--zm-brown-dark); font-size:12px; text-align:center; }
.zm-nav-icecream { color:var(--zm-brown-dark); }

.zm-hero-grid { display:block; min-height:0; }
.zm-hero-content { position:relative; padding:42px 0 28px; text-align:center; }
.zm-eyebrow { margin-bottom:18px; font-size:9px; }
.zm-hero-content h1 { max-width:330px; margin:0 auto 25px; font-size:42px; line-height:.98; letter-spacing:-1.6px; }
.zm-hero-content p { max-width:330px; margin:0 auto; font-size:15px; line-height:1.55; }
.zm-hero-visual { position:relative; min-height:355px; height:355px; margin-top:0; }
.zm-hero-machine { position:absolute; z-index:2; right:7%; bottom:5px; width:225px; max-height:330px; }
.zm-hero-icecream { position:absolute; z-index:4; left:7%; bottom:0; width:175px; max-height:245px; }
.zm-hero-shape { width:115%; height:290px; top:58px; right:-26%; }
.zm-hero-dots { top:175px; right:-12px; }

.zm-main-actions { margin-top:30px; padding-bottom:34px; }
.zm-actions-grid { grid-template-columns:1fr; gap:16px; }
.zm-action-stand { grid-column:auto; width:100%; }
.zm-action-card { min-height:0; padding:25px 22px 20px; }
.zm-action-icon { width:68px; height:68px; margin-bottom:16px; }
.zm-action-icon svg { width:33px; height:33px; }
.zm-action-card h2 { font-size:25px; line-height:1.07; }
.zm-action-card p { min-height:0; margin-bottom:20px; }
.zm-card-cta { min-height:50px; }

.zm-current { padding:0 0 32px; }
.zm-current-box { grid-template-columns:1fr; border-radius:16px; }
.zm-current-season { padding:25px 22px; }
.zm-current-tip { padding:24px 22px; border-left:0; border-top:1px solid var(--zm-border); }
.zm-current h2 { font-size:22px; }
.zm-current h3 { font-size:17px; }
.zm-current p { font-size:12.5px; }
.zm-current-meta { padding-top:9px; justify-content:center; flex-wrap:wrap; text-align:center; font-size:10px; }

.zm-secondary-grid { grid-template-columns:1fr; }
.zm-secondary-item { padding:14px 8px; border-right:0; border-bottom:1px solid var(--zm-border); }
.zm-secondary-item:first-child { padding-left:8px; }

.zm-benefits { padding:28px 0; }
.zm-benefits-box { grid-template-columns:1fr; row-gap:0; }
.zm-benefit { padding:18px 5px; border-right:0; border-bottom:1px solid var(--zm-border); }
.zm-benefit:first-child { padding-left:5px; }
.zm-benefit:last-child { border-bottom:0; }

.zm-contact-box { padding:28px 20px; display:flex; flex-direction:column; gap:22px; text-align:center; }
.zm-contact-image { position:static; width:135px; margin-bottom:-14px; }
.zm-contact-content h2 { font-size:25px; }
.zm-contact-phone { width:100%; min-width:0; }

.zm-footer-grid { grid-template-columns:1fr 1fr; gap:27px; }
.zm-footer-brand { grid-column:1/-1; }
.zm-footer-bottom-inner { padding:16px 0; flex-direction:column; gap:12px; text-align:center; }
.zm-footer-bottom-inner div { display:flex; flex-direction:column; gap:8px; }
}

@media (max-width:450px) {
.zm-logo img { width:180px; }

.zm-hero-content h1 { max-width:310px; font-size:38px; }
.zm-hero-content p { max-width:305px; }
.zm-hero-visual { min-height:315px; height:315px; }
.zm-hero-machine { width:200px; max-height:295px; right:6%; }
.zm-hero-icecream { width:155px; max-height:215px; left:5%; }
.zm-hero-shape { height:260px; top:50px; }

.zm-action-card { padding:23px 18px 18px; }
.zm-action-card h2 { font-size:24px; }
.zm-card-cta { padding-left:15px; padding-right:15px; font-size:12px; }

.zm-current-season,.zm-current-tip { padding:22px 18px; }

.zm-footer-grid { grid-template-columns:1fr; }
}
