/* Home opening: the header, hero and moving strip occupy one viewport. */
body[data-page="home"]{--site-chrome:152px;--strip-height:41px;--brand-size:clamp(96px,20svh,184px)}
body[data-page="home"] .home-page .hero{height:calc(100svh - var(--site-chrome) - var(--strip-height));min-height:0;max-height:none;padding:calc(var(--brand-size)/2 + 56px) var(--brand-axis) 20px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:3vw;align-items:center;background:linear-gradient(108deg,#fffdf5 0 57%,#f8c65d 57%);overflow:hidden}
body[data-page="home"] .home-page .hero-copy{min-height:0;min-width:0;align-self:center;z-index:6}
body[data-page="home"] .home-page .hero h1{font-size:clamp(36px,min(6.1vw,9svh),92px);line-height:.95}
body[data-page="home"] .home-page .hero-copy>p{font-size:clamp(14px,2svh,18px);line-height:1.5;margin:18px 0 22px;max-width:540px;width:100%}
body[data-page="home"] .home-page .hero-visual{position:relative;inset:auto;width:100%;height:100%;min-height:0;max-height:480px;margin:0;overflow:visible}
body[data-page="home"] .home-page .trust-row{margin-top:24px;gap:8px;flex-wrap:wrap}
body[data-page="home"] .home-page .hero-cta .button{padding:13px 20px;min-height:46px;white-space:nowrap}
body[data-page="home"] .home-page .fresh-marquee{height:var(--strip-height);min-height:var(--strip-height);max-height:var(--strip-height);margin:0;position:relative;z-index:7}
body[data-page="home"] .floating-whatsapp,body[data-page="home"] .scroll-top{bottom:calc(var(--strip-height) + max(14px,env(safe-area-inset-bottom)))}
.product-image{display:block} /* Legacy cards must also contain their images. */
.catalog-page{background:#fffdf5;min-width:0}
.catalog-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.75fr);gap:6vw;align-items:end;padding:140px max(24px,calc((100vw - 1260px)/2)) 48px;background:radial-gradient(ellipse at 100% 0,#f8c65d40,transparent 65%),#fffdf5;border-bottom:1px solid #e5e4d8}
.catalog-hero h1{font:700 clamp(42px,4.8vw,72px)/1.02 var(--sans);letter-spacing:-.055em;color:#0c3527}
.catalog-hero h1 em{font-family:var(--serif);font-weight:500;color:#b96027}
.catalog-hero>div>p{font-size:16px;line-height:1.65;color:#617068;max-width:560px;margin:22px 0 0}
.catalog-guide{background:#eef1e4;border:1px solid #dce2d0;border-radius:20px;padding:25px;position:relative}
.catalog-guide-icon{display:block;color:#b96027;font-size:25px;margin-bottom:10px}.catalog-guide>b{font-size:17px;color:#12372a}.catalog-guide p{font-size:13px;color:#5d6d62;margin:12px 0 18px;line-height:1.65}.catalog-guide a{display:flex;justify-content:space-between;font-size:13px;font-weight:700;color:#164c39;border-top:1px solid #d4deca;padding-top:14px}
.catalog-products{max-width:1308px;margin:auto;padding:48px 24px 80px;scroll-margin-top:24px}
.catalog-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}.catalog-toolbar .section-kicker{margin-bottom:10px}.catalog-toolbar h2{font:600 clamp(30px,3vw,43px)/1.1 var(--sans);letter-spacing:-.045em;color:#0c3527}.catalog-count{font-size:12px;color:#67776c;white-space:nowrap;padding-bottom:5px}
.catalog-filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:28px}.catalog-filters a{display:flex;align-items:center;min-height:44px;padding:10px 19px;border:1px solid #dce1d4;border-radius:999px;background:#fff;color:#52665a;font-size:13px;font-weight:600}.catalog-filters a:hover{border-color:#164c39}.catalog-filters a[aria-current]{background:#164c39;border-color:#164c39;color:white}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.catalog-card{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid #e0e4d9;border-radius:20px;overflow:hidden;box-shadow:0 6px 20px #12372a05;transition:box-shadow .2s,border-color .2s}
.catalog-card:hover{border-color:#a6baa6;box-shadow:0 14px 32px #12372a12}
.catalog-card-image{display:block;position:relative;flex:0 0 auto;width:100%;height:260px;overflow:hidden;background:#f4f0e5;border-bottom:1px solid #e9eadf}
.catalog-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.catalog-card:hover .catalog-card-image img{transform:scale(1.035)}
.catalog-weight{position:absolute;top:15px;right:15px;padding:7px 12px;border:1px solid #e4e6da;border-radius:999px;background:#fffef5;color:#164c39;font-size:12px;font-weight:700;box-shadow:0 3px 12px #12372a0a}
.catalog-card-content{padding:22px;display:flex;flex-direction:column;flex:1;min-width:0}
.catalog-kind{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;color:#b96027;margin-bottom:8px}
.catalog-card h3{font:700 25px/1.15 var(--sans);letter-spacing:-.035em;color:#12372a;margin:0 0 10px}.catalog-card h3 a:hover{color:#a75524}
.catalog-card-content>p{margin:0;color:#65746b;font-size:14px;line-height:1.55;min-height:44px}
.catalog-card-price{margin-top:auto;padding:20px 0 16px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}.catalog-card-price strong{font-size:14px;color:#164c39;font-weight:600}.catalog-card-price span{font-size:12px;color:#718075}
.catalog-add-form{display:grid;grid-template-columns:66px minmax(0,1fr);gap:12px;align-items:end;padding-top:15px;border-top:1px solid #e7eadd}
.catalog-add-form label{display:grid;gap:6px;font-size:11px;font-weight:600;color:#5e7164}
.catalog-add-form input{display:block;width:100%;min-width:0;height:48px;margin:0;padding:8px;border:1px solid #cfd9cc;background:#fff;text-align:center;color:#12372a;font-size:16px}
.catalog-add-form button{width:100%;min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;gap:9px;padding:11px 12px;border:1px solid #164c39;border-radius:10px;background:#164c39;color:#fff;font-size:14px;font-weight:700;line-height:1.3;cursor:pointer;white-space:normal}
.catalog-add-form button:hover{background:#0c3527}.catalog-add-form button:disabled,.buy-form button:disabled{background:#e3e7dc;border-color:#d0d7c8;color:#637365;cursor:not-allowed}
.catalog-add-form svg{width:21px;height:21px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.catalog-detail-link{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#5b7060;min-height:36px;margin-top:9px}
.catalog-page .catalog-help{max-width:none}.catalog-page .catalog-help h2{line-height:1.1}
.toast{max-width:min(420px,calc(100vw - 32px));right:16px}
.cart-item{grid-template-columns:84px minmax(0,1fr) 72px 110px auto;gap:16px}.cart-item img{width:84px;height:84px;border-radius:12px}.cart-item>input{width:100%;min-width:0}.cart-remove{border:0;background:#f5eee6;color:#934b2c;border-radius:8px;min-height:40px;padding:8px 10px;font-size:12px;cursor:pointer}
.buy-form{flex-wrap:wrap}.buy-form .button{min-height:48px}
.footer-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.footer-socials a{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:9px 13px;border:1px solid #ffffff30;border-radius:999px;color:#fff;font-size:12px}.footer-socials svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.footer-socials a:hover{background:#ffffff12}
.location-hero{padding:145px max(24px,calc((100vw - 1220px)/2)) 60px;background:linear-gradient(130deg,#fffdf5,#f1f3e7)}.location-hero h1{font:700 clamp(36px,4.5vw,66px)/1.08 var(--sans);letter-spacing:-.04em;color:#12372a;overflow-wrap:anywhere}.location-hero h1 em{font-family:var(--serif);font-weight:500;color:#b96027}.location-hero>p{max-width:750px;color:#617068;font-size:17px;line-height:1.7;margin:25px 0}.location-actions{display:flex;flex-wrap:wrap;gap:12px}.location-actions .button{border-radius:999px;min-height:48px}.location-info{max-width:1268px;margin:0 auto;padding:60px 24px;display:grid;grid-template-columns:1fr 1.2fr;gap:32px}.location-info article{border:1px solid #e0e5d7;border-radius:20px;padding:28px;background:white}.location-info h2{font:600 30px/1.1 var(--sans);letter-spacing:-.035em;color:#12372a;margin-bottom:22px}.location-info p{font-size:15px;color:#647367;line-height:1.7}.location-info dl{margin:0}.location-info dl>div{display:flex;gap:20px;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e5e9df}.location-info dt{font-size:13px;color:#718073}.location-info dd{margin:0;font-weight:600;font-size:14px;text-align:right}.location-info .location-source{font-size:11px;margin-top:22px}.location-source a{text-decoration:underline}.location-directory{max-width:1268px;padding:0 24px 80px;margin:auto}.location-directory>h2{font-size:36px;margin-bottom:25px}.location-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.location-links>a{position:relative;display:grid;gap:5px;padding:20px 38px 20px 20px;background:white;border:1px solid #e0e5d7;border-radius:13px;min-width:0}.location-links>a:hover{border-color:#164c39;background:#f3f5ed}.location-links b{font-size:15px;color:#164c39;overflow-wrap:anywhere}.location-links span{font-size:11px;color:#708073}.location-links i{position:absolute;right:16px;top:20px;color:#a96030;font-style:normal}.location-search-label{display:grid;gap:6px;color:#637568;font-size:11px;min-width:220px}.location-search{border:1px solid #cdd8c8;padding:12px;background:white;min-height:44px}.location-links>[hidden]{display:none}.catalog-region{max-width:1260px;margin:28px auto 0;padding:16px 22px;background:#edf2e6;border:1px solid #d9e2ce;border-radius:12px;font-size:13px;color:#47644f}.catalog-region a{text-decoration:underline}
@media(max-width:800px){.location-hero{padding:120px 20px 40px}.location-info{grid-template-columns:1fr;padding:35px 20px;gap:18px}.location-links{grid-template-columns:repeat(2,minmax(0,1fr))}.location-directory{padding:0 20px 60px}.location-directory .catalog-toolbar{flex-wrap:wrap}.location-search-label{width:100%}.location-actions .button{width:100%;font-size:12px;padding:13px}.location-hero>p{font-size:15px}.catalog-region{margin:20px 16px 0}}
@media(max-width:480px){.location-links{grid-template-columns:1fr}.location-hero h1{font-size:36px}.location-info article{padding:23px}}
@media(max-width:1180px){body[data-page="home"]{--site-chrome:140px}.catalog-hero{padding-top:125px}.catalog-grid{gap:18px}.catalog-card-content{padding:18px}.catalog-card-image{height:230px}.cart-layout{gap:35px}}
@media(max-width:950px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-hero{gap:30px;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr)}.catalog-guide{padding:20px}.catalog-hero h1{font-size:44px}.cart-item{grid-template-columns:64px minmax(0,1fr) 64px 96px auto;gap:12px}}
@media(max-width:1180px){.floating-whatsapp{width:54px;padding:0;left:16px}.floating-whatsapp span{display:none}}
@media(max-height:740px){body[data-page="home"] .home-page .trust-row{display:none}body[data-page="home"] .home-page .hero-copy>p{font-size:14px;margin:12px 0 16px}body[data-page="home"] .home-page .hero-cta .button{min-height:42px;padding:10px 16px}}
@media(max-width:680px){
  body[data-page="home"]{--site-chrome:124px;--brand-size:clamp(82px,16svh,138px)}
  body[data-page="home"] .home-page .hero{padding:calc(var(--brand-size)/2 + 56px) 20px 10px;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) min(22svh,210px);gap:8px;background:linear-gradient(158deg,#fffdf5 0 68%,#f8c65d 68%)}
  body[data-page="home"] .home-page .hero h1{font-size:clamp(30px,5.6svh,48px);line-height:.96}
  body[data-page="home"] .home-page .hero-copy>p{font-size:13px;line-height:1.45;margin:12px 0 15px}
  body[data-page="home"] .home-page .hero-cta{display:flex;justify-content:flex-start;gap:10px}
  body[data-page="home"] .home-page .hero-cta .button{padding:11px 17px;font-size:12px;min-height:43px}
  body[data-page="home"] .home-page .hero-visual{height:100%;max-height:none;position:relative;inset:auto;overflow:visible}
  body[data-page="home"] .home-page .hero-main-img{width:56%!important;height:100%!important;left:20%;top:0;object-fit:cover!important}
  body[data-page="home"] .home-page .hero-side-img{width:25%!important;height:49%!important;right:3%;bottom:0}
  body[data-page="home"] .home-page .orange-blob{inset:10px 3% -18px 10%}
  body[data-page="home"] .home-page .price-bubble{width:72px;height:72px;right:2%;top:3%}body[data-page="home"] .home-page .price-bubble strong{font-size:19px}
  body[data-page="home"] .home-page .fresh-badge{width:50px;height:50px;left:3%;bottom:6%;font-size:7px}body[data-page="home"] .home-page .fresh-badge b{font-size:11px}
  body[data-page="home"] .home-page .trust-row{margin-top:16px;gap:5px}body[data-page="home"] .home-page .trust-row span{font-size:9px;padding:5px 7px}
  body[data-page="home"] .home-page .hero:after{bottom:0;font-size:100px}
  .catalog-hero{grid-template-columns:minmax(0,1fr);padding:110px 20px 28px;gap:25px}.catalog-hero h1{font-size:clamp(36px,9.5vw,48px)}.catalog-hero>div>p{font-size:14px;margin-top:15px}.catalog-guide{padding:18px}.catalog-guide-icon{display:none}.catalog-guide>b{font-size:15px}.catalog-guide p{margin:8px 0 12px}
  .catalog-products{padding:30px 16px 55px}.catalog-toolbar{align-items:start;gap:12px}.catalog-toolbar h2{font-size:29px}.catalog-count{padding-top:25px;font-size:10px}.catalog-filters{gap:7px;margin-bottom:22px}.catalog-filters a{font-size:12px;padding:9px 14px}
  .catalog-grid{grid-template-columns:minmax(0,1fr);gap:20px}.catalog-card-image{height:auto;aspect-ratio:1.4/1}.catalog-card-content{padding:20px}.catalog-card h3{font-size:25px}.catalog-card-content>p{min-height:0}.catalog-card-price{padding-top:17px}.catalog-add-form{grid-template-columns:70px minmax(0,1fr)}
  .cart-item{grid-template-columns:64px minmax(0,1fr) 64px;gap:12px}.cart-item img{width:64px;height:64px}.cart-item h3{font-size:21px}.cart-item>strong{grid-column:2;grid-row:2;text-align:left;font-size:14px}.cart-remove{grid-column:3;grid-row:2}.cart-list{min-width:0}.order-summary{padding:24px}
}
@media(max-width:680px) and (max-height:620px){body[data-page="home"] .home-page .hero-copy>p{font-size:12px;margin:8px 0 10px}body[data-page="home"] .home-page .hero-cta .button{min-height:40px;padding:9px 15px}body[data-page="home"] .brand-delivery{padding:6px 10px}}
@media(min-width:681px) and (max-height:520px){body[data-page="home"]{--brand-size:76px}body[data-page="home"] .site-header{height:64px}body[data-page="home"] .home-page .hero{padding-top:86px;padding-bottom:10px}body[data-page="home"] .home-page .hero h1{font-size:34px}body[data-page="home"] .home-page .hero-copy>p,body[data-page="home"] .fresh-contact{display:none}body[data-page="home"] .home-page .hero-cta{margin-top:15px}body[data-page="home"] .brand-delivery{top:calc(100% + var(--brand-size)/2 + 10px);padding:6px 10px;font-size:8px}}
