
/* ONESTA EUROPE v0.4 overrides */
:root{--onesta-blue:#2563ff;--onesta-navy:#07183d;--onesta-muted:#65728a;--onesta-soft:#f4f7fc}
html{scroll-behavior:smooth}body,button,input,textarea,select{font-family:"Sora",system-ui,-apple-system,"Segoe UI",sans-serif}
.brand img{width:136px;height:auto;display:block}.footer-brand img{width:145px;height:auto;filter:none}.onesta-medallion img{width:82px}

/* section micro labels */
.section-heading.centered .eyebrow{font-size:10px;font-weight:500;letter-spacing:.34em;text-align:center;color:var(--onesta-blue);margin-bottom:12px}.section-heading.centered.compact .eyebrow{font-weight:500}.origin-copy>.eyebrow,.contact-copy>.eyebrow,.products-heading>.eyebrow{font-size:10px;font-weight:500;letter-spacing:.30em;color:var(--onesta-blue)}

/* richer buttons */
.btn{position:relative;isolation:isolate;overflow:hidden;transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s ease,border-color .24s ease,background .24s ease}.btn::before{content:"";position:absolute;inset:-2px;z-index:-1;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.28) 45%,transparent 70%);transform:translateX(-130%);transition:transform .65s ease}.btn:hover::before{transform:translateX(130%)}.btn:hover{transform:translateY(-3px)}.btn-primary:hover{box-shadow:0 16px 32px rgba(37,99,255,.28)}.btn:active{transform:translateY(0) scale(.97)}.btn .ripple{position:absolute;border-radius:999px;transform:scale(0);background:rgba(255,255,255,.38);animation:ripple .62s ease-out;pointer-events:none}@keyframes ripple{to{transform:scale(5);opacity:0}}.btn-primary>span:last-child{display:inline-block;transition:transform .24s ease}.btn-primary:hover>span:last-child{transform:translateX(5px)}

/* Hero: one SVG coordinate system */
.hero{overflow:clip}.hero-grid{min-height:690px;align-items:center}.hero-visual{position:relative;min-height:630px;height:630px;overflow:visible}.hero-map-composite{position:absolute;width:116%;height:auto;left:-7%;top:-2%;overflow:visible}.hero-map-image{opacity:.53}.route-glow{fill:none;stroke:rgba(37,99,255,.12);stroke-width:20;stroke-linecap:round}.route-line{fill:none;stroke:var(--onesta-blue);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:1450;stroke-dashoffset:1450;animation:drawRoute 1.9s .25s cubic-bezier(.2,.8,.2,1) forwards}.route-marker,.route-label{opacity:0;animation:markerIn .45s 1.65s ease-out forwards}.marker-europe,.label-europe{animation-delay:1.9s}.marker-halo{fill:rgba(37,99,255,.13);animation:haloPulse 2.4s 2.2s ease-out infinite}.pin-shape{fill:var(--onesta-blue)}.pin-hole{fill:#fff}.route-label rect{fill:var(--onesta-blue);filter:drop-shadow(0 9px 15px rgba(37,99,255,.18))}.route-label text{fill:#fff;font-size:18px;font-weight:750;font-family:"Sora",sans-serif}.route-label text.small{font-size:13px;font-weight:600}.hero-avocado{position:absolute!important;z-index:6!important;width:60%!important;max-width:none!important;right:-7%!important;bottom:-3%!important;top:auto!important;left:auto!important;filter:drop-shadow(0 24px 35px rgba(19,42,80,.12));animation:none!important}
@keyframes drawRoute{to{stroke-dashoffset:0}}@keyframes markerIn{from{opacity:0;transform:scale(.72);transform-box:fill-box;transform-origin:center}to{opacity:1;transform:scale(1);transform-box:fill-box;transform-origin:center}}@keyframes haloPulse{0%{r:24;opacity:.5}80%,100%{r:48;opacity:0}}

/* TALSA */
.talsa-link{display:inline-flex;width:max-content;border-radius:12px;padding:5px 6px 5px 0;transition:transform .2s ease,filter .2s ease}.talsa-link:hover{transform:translateY(-2px);filter:drop-shadow(0 8px 12px rgba(132,194,0,.18))}.talsa-logo{display:block}
.origin-crate{right:-1%;bottom:10%;width:25%;transform:translate(8%,8%)}

/* Technology - extended cards */
.technology{overflow:hidden}.tech-orbit{height:610px;max-width:1260px;margin:0 auto}.orbit-card{width:390px;min-height:116px;padding:20px 24px 20px 20px!important;display:flex!important;gap:16px!important;align-items:center!important;border-radius:18px}.orbit-card::before{width:4px!important;top:15px!important;bottom:15px!important}.orbit-card-icon{width:34px!important;height:34px!important;flex:0 0 34px!important}.orbit-card>div{flex:1}.orbit-card span{font-size:9px!important;font-weight:500!important;letter-spacing:.24em!important;color:#71809a!important}.orbit-card h3{font-size:17px!important;margin:5px 0 6px!important}.orbit-card p{font-size:11px!important;line-height:1.55!important}.card-a{left:0!important;top:122px!important}.card-b{right:0!important;top:122px!important}.card-c{left:0!important;bottom:62px!important}.card-d{right:0!important;bottom:62px!important}.orbit-lines{width:430px!important;height:430px!important}.softripe-core{width:148px!important;height:148px!important}.softripe-core img{max-width:104px!important}

/* certs larger */
.certifications{padding-top:86px;padding-bottom:90px}.cert-grid{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:24px 28px!important;margin-top:38px!important}.cert-link{min-height:106px!important;padding:16px!important;border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;transition:transform .22s ease,box-shadow .22s ease}.cert-link:hover{transform:translateY(-5px) scale(1.025);box-shadow:0 16px 36px rgba(17,35,90,.09)}.cert-link img{width:100%;height:72px!important;max-width:150px!important;object-fit:contain}

/* product calendar */
.products-grid{gap:18px!important}.product-card{overflow:hidden}.product-body{padding:16px!important}.availability-title,.varieties-title{font-weight:500!important;letter-spacing:.18em!important}.months{gap:3px!important;margin-bottom:13px}.month-cell{cursor:default}.month-bar{height:6px!important;background:#dfe6f2!important}.month-cell.active .month-bar{background:var(--onesta-blue)!important;box-shadow:0 2px 7px rgba(37,99,255,.18)}.month-cell.active .month-letter{color:var(--onesta-blue)!important}.pill{cursor:pointer!important;border:1px solid #dde5f1!important;transition:all .22s ease!important}.pill.active{background:var(--onesta-blue)!important;color:#fff!important;border-color:var(--onesta-blue)!important;box-shadow:0 7px 16px rgba(37,99,255,.18)}.pill:hover:not(.active){border-color:#9db8ff!important;color:var(--onesta-blue)!important;transform:translateY(-1px)}

/* contact section */
.contact{background:linear-gradient(180deg,#fff 0%,#f7f9fd 100%)}.contact-layout{gap:70px;align-items:center}.contact-copy{max-width:560px}.contact-lead{font-size:16px;line-height:1.65}.contact-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.contact-cta{min-width:0!important}.btn-whatsapp{background:#fff;color:#0d6a43;border:1px solid #cceadb;box-shadow:0 9px 24px rgba(13,106,67,.08)}.btn-whatsapp:hover{border-color:#25d366;box-shadow:0 14px 30px rgba(37,211,102,.16)}.wa-dot{color:#25d366;font-size:19px}.map-card-real{height:340px!important;border-radius:24px!important;background:#eef3f8!important;position:relative!important;box-shadow:0 20px 55px rgba(17,35,90,.10)!important}.map-card-real iframe{width:100%;height:100%;border:0;display:block;filter:saturate(.88) contrast(.96)}.map-overlay{position:absolute;left:18px;bottom:18px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.8);border-radius:13px;padding:10px 13px;box-shadow:0 9px 28px rgba(17,35,90,.13);display:grid;gap:2px}.map-overlay strong{position:static!important;font-size:11px!important;color:var(--onesta-navy)!important}.map-overlay span{position:static!important;font-size:9px!important;color:#77859a!important}

/* compact contact modal */
.modal{padding:16px!important;align-items:center!important}.modal-card{width:min(92vw,470px)!important;padding:26px 30px 24px!important;border-radius:22px!important;max-height:calc(100vh - 32px)!important;overflow:auto!important;scrollbar-width:none}.modal-card::-webkit-scrollbar{display:none}.modal-card h2{font-size:27px!important;margin-bottom:5px!important}.modal-card>p{font-size:11px!important;line-height:1.5!important;margin-bottom:16px!important}.modal-card form{gap:11px!important}.modal-card label{font-size:9px!important;gap:5px!important}.modal-card input{height:40px!important;padding:0 12px!important}.modal-card textarea{min-height:78px!important;padding:10px 12px!important;resize:none}.privacy-note{margin-top:0!important;font-size:8px!important;line-height:1.35!important}.submit-btn{height:44px!important}.form-status{margin:0!important}

@media(max-width:1100px){.hero-grid{min-height:620px}.hero-visual{height:560px;min-height:560px}.hero-map-composite{width:112%;left:-6%;top:2%}.hero-avocado{width:58%!important;right:-5%!important}.orbit-card{width:340px}.cert-grid{grid-template-columns:repeat(5,1fr)!important}}
@media(max-width:820px){.brand img{width:122px}.hero-grid{min-height:0}.hero-visual{height:430px!important;min-height:430px!important;margin-top:4px}.hero-map-composite{width:108%;left:-4%;top:-8%}.hero-avocado{width:56%!important;right:-2%!important;bottom:-1%!important}.tech-orbit{height:auto!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px!important;padding-top:260px!important}.orbit-lines{position:absolute!important;top:0!important;left:50%!important;transform:translateX(-50%)!important;width:300px!important;height:300px!important}.softripe-core{top:76px!important;width:120px!important;height:120px!important}.orbit-card{position:relative!important;inset:auto!important;width:auto!important;min-height:112px!important}.cert-grid{grid-template-columns:repeat(4,1fr)!important}.contact-layout{grid-template-columns:1fr!important}.map-card-real{height:300px!important}.products-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:560px){.brand img{width:108px}.hero-visual{height:310px!important;min-height:310px!important;margin-top:10px}.hero-map-composite{width:118%;left:-9%;top:-10%}.route-label text{font-size:22px}.hero-avocado{width:58%!important;right:-10%!important;bottom:-5%!important}.section-heading.centered .eyebrow{font-size:8px;letter-spacing:.29em}.tech-orbit{grid-template-columns:1fr!important;padding-top:250px!important}.orbit-card{min-height:104px!important}.cert-grid{grid-template-columns:repeat(3,1fr)!important;gap:16px!important}.cert-link{min-height:88px!important}.cert-link img{height:58px!important}.products-grid{grid-template-columns:1fr!important}.contact-actions{align-items:stretch}.contact-actions .btn{width:100%;justify-content:center}.map-card-real{height:260px!important}.modal{padding:10px!important}.modal-card{padding:22px 20px 18px!important;max-height:calc(100vh - 20px)!important}.modal-card h2{font-size:24px!important}.modal-card input{height:38px!important}.modal-card textarea{min-height:70px!important}}
@media(prefers-reduced-motion:reduce){.route-line,.route-marker,.route-label,.marker-halo{animation:none!important;stroke-dashoffset:0!important;opacity:1!important}.btn,.btn::before{transition:none!important}}

.modal:not([hidden]){display:flex}.modal-card{transform:translateY(14px) scale(.985);opacity:0;transition:transform .18s ease,opacity .18s ease}.modal.is-open .modal-card{transform:none;opacity:1}.modal-backdrop{opacity:0;transition:opacity .18s ease}.modal.is-open .modal-backdrop{opacity:1}

/* v05 requested updates — edge-to-edge hero map */
.hero{min-height:calc(100vh - var(--header));}
.hero-grid{width:100%;max-width:none;min-height:calc(100vh - var(--header));grid-template-columns:minmax(340px,.78fr) minmax(0,1.22fr);gap:0;padding-left:max(24px,calc((100vw - var(--container))/2));margin:0;}
.hero-copy{padding-right:32px;}
.hero-visual{height:calc(100vh - var(--header));min-height:620px;overflow:hidden;}
.hero-map-composite{position:absolute;width:116%;max-width:none;height:116%;left:-8%;top:-8%;z-index:1;overflow:visible;}
.hero-map-image{opacity:.72;}
.hero-avocado{z-index:2;}
.route-glow{fill:none;stroke:#fff;stroke-width:10;opacity:.82;filter:drop-shadow(0 0 8px rgba(255,255,255,.8));}
.route-line{fill:none;stroke:var(--blue);stroke-width:4;stroke-linecap:round;stroke-dasharray:12 13;}
.route-marker .marker-halo{fill:rgba(40,100,240,.14);}
.route-marker .pin-shape{fill:var(--blue);}
.route-marker .pin-hole{fill:#fff;}
.route-label rect{fill:var(--blue);}
.route-label text{fill:#fff;font:800 19px/1 Inter,ui-sans-serif,sans-serif;letter-spacing:.04em;}
.route-label text.small{font-size:12px;font-weight:700;opacity:.9;}
.contact-actions{display:block;}
.contact-actions .contact-cta{width:max-content;}

@media(max-width:820px){
 .hero-grid{padding-left:20px;padding-right:0;grid-template-columns:1fr;}
 .hero-copy{padding-right:20px;}
 .hero-visual{height:430px;min-height:430px;width:100%;}
 .hero-map-composite{width:118%;height:118%;left:-9%;top:-9%;}
}
@media(max-width:560px){
 .hero-grid{padding-left:16px;}
 .hero-copy{padding-right:16px;}
 .hero-visual{height:320px!important;min-height:320px!important;}
 .hero-map-composite{width:130%;height:130%;left:-15%;top:-15%;}
 .contact-actions .contact-cta{width:100%;}
}

/* v06 polish: language switch, centered nav, better product distribution, CTA icons */
.nav-wrap{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}
.desktop-nav{justify-self:center;display:flex;justify-content:center;flex-wrap:wrap;gap:28px}
.nav-actions{justify-self:end;display:flex;align-items:center;gap:14px}
.lang-switch{min-width:72px;height:40px;padding:0 12px;border:1px solid #dbe4f0;border-radius:999px;background:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 8px 18px rgba(17,35,90,.06)}
.lang-switch .lang-flag{font-size:16px;line-height:1}
.lang-switch .lang-code{font-size:12px;font-weight:800;color:var(--navy);letter-spacing:.06em}

.btn-with-icon{gap:14px;padding-right:12px}
.btn-label{display:inline-flex;align-items:center}
.btn-arrow-icon{width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:inset 0 1px 0 rgba(255,255,255,.14)}
.btn-arrow-icon svg{width:16px;height:16px;color:currentColor}
.btn-ghost .btn-arrow-icon{background:#edf3ff;border-color:#d6e2fb}

.products-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;justify-content:center}
.product-card{height:100%}
.product-body h3{min-height:50px}


.modal-card .form-status{min-height:18px}

@media(max-width:1180px){
  .products-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:820px){
  .nav-wrap{display:flex!important}
  .lang-switch{min-width:auto;padding:0 10px;height:36px}
  .products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .lang-switch .lang-code{font-size:11px}
  .btn-with-icon{padding-right:10px}
  .btn-arrow-icon{width:30px;height:30px}
  .products-grid{grid-template-columns:1fr!important}
}

/* v07 polish */
.footer-brand img{filter:brightness(0) invert(1)!important}
.site-footer .brand img{filter:brightness(0) invert(1)!important}

.lang-switch{padding:0 14px!important;gap:10px!important}
.lang-switch .lang-flag{width:20px!important;height:20px!important;display:block;flex:0 0 20px;border-radius:999px}
.lang-switch .lang-code{min-width:22px;text-align:center}

.modal:not([hidden]){display:flex!important;justify-content:center!important;align-items:center!important}
.modal-card{margin:auto!important}

.btn-with-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:14px!important}
.btn-arrow-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:0!important;padding:0!important}
.btn-arrow-icon svg{display:block!important;width:15px!important;height:15px!important;flex:0 0 15px;transform:translate(0,0)!important}
.submit-btn,.contact-cta,.hero-actions .btn-primary{justify-content:center!important}

.softripe-core{left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;padding:20px!important}
.softripe-core img{display:block!important;width:100%!important;max-width:106px!important;height:auto!important;object-fit:contain!important;object-position:center center!important;margin:0 auto!important}

@media(min-width:821px){
  .modal-card{width:min(92vw,540px)!important}
}

/* v08 requested refinements */
.badge{text-transform:uppercase!important}
.lang-switch .lang-flag{width:24px!important;height:24px!important;flex-basis:24px!important}
.lang-switch{min-width:106px!important}

.hero-map-composite{overflow:visible}
.route-pin{overflow:visible;transform-box:fill-box;transform-origin:center center}
.route-pin-origin{filter:drop-shadow(0 10px 20px rgba(37,99,255,.16))}
.route-pin-europe{filter:drop-shadow(0 10px 20px rgba(37,99,255,.16))}
.route-label.label-origin{transform:translate(470px, 648px)!important}
.route-label.label-europe{transform:translate(1215px, 282px)!important}

.certifications .section-heading p{max-width:520px;margin-left:auto;margin-right:auto}

.site-footer{padding:46px 0 18px!important}
.site-footer .container{width:min(calc(100% - 80px),var(--container))!important}
.footer-grid{grid-template-columns:1.35fr 1fr 1fr 1fr!important;gap:38px!important;align-items:start!important}
.footer-brand p{max-width:280px!important}
.site-footer a{line-height:1.5}
.footer-bottom{margin-top:28px!important}

@media(max-width:820px){
  .site-footer .container{width:min(calc(100% - 40px),var(--container))!important}
  .footer-grid{grid-template-columns:1fr 1fr!important;gap:28px!important}
}
@media(max-width:560px){
  .site-footer .container{width:min(calc(100% - 32px),var(--container))!important}
  .lang-switch{min-width:96px!important}
  .lang-switch .lang-flag{width:22px!important;height:22px!important;flex-basis:22px!important}
  .footer-grid{grid-template-columns:1fr!important}
}

/* v09 Formspree-ready contact form */
.form-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.submit-btn:disabled{opacity:.68;cursor:wait;transform:none!important}
.form-status{min-height:18px!important;text-align:center!important;font-size:10px!important;line-height:1.4!important;color:#53627c!important}


/* v10 mobile refinement based on provided Figma mobile references */
.lang-switch{background:#f6f8fc!important;border-color:transparent!important;box-shadow:none!important;padding:0 12px!important}
.lang-switch .lang-flag{width:22px!important;height:22px!important;border:none!important;box-shadow:none!important}

.contact-layout{grid-template-columns:minmax(0,.86fr) minmax(0,1fr);grid-template-areas:"copy map" "cta map";align-items:start}
.contact-copy{grid-area:copy}
.map-card-real{grid-area:map}
.contact-actions{grid-area:cta;margin-top:8px}
.contact-actions .contact-cta{width:100%;max-width:410px}

@media(max-width:820px){
  .site-header{height:72px!important}
  .nav-wrap{height:72px!important}
  .brand img{width:124px!important}
  .menu-btn{display:grid!important;place-items:center;width:42px;height:42px;border-radius:999px;background:#edf3ff;color:var(--blue)}
  .desktop-contact{display:none!important}
  .lang-switch{height:36px!important;padding:0 10px!important}
  .lang-switch .lang-flag{width:20px!important;height:20px!important}

  .hero{min-height:auto!important}
  .hero-grid{grid-template-columns:1fr!important;gap:10px!important;min-height:auto!important;padding:24px 20px 0!important}
  .hero-copy{padding:18px 0 0!important}
  .hero-copy .badge{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border-radius:999px;background:#eff4ff;border:1px solid #cfe0ff;font-size:11px;letter-spacing:.14em}
  .hero-copy h1{font-size:56px!important;line-height:.96!important;max-width:560px;margin:18px 0 18px!important}
  .hero-copy p{font-size:18px!important;line-height:1.65!important;max-width:620px}
  .hero-actions{flex-direction:column;align-items:stretch;gap:12px!important;margin-top:28px!important;max-width:420px}
  .hero-actions .btn{width:100%;justify-content:center;min-height:56px!important}
  .hero-visual{height:400px!important;min-height:400px!important;margin-top:2px!important}
  .hero-map-composite{width:110%!important;height:110%!important;left:-4%!important;top:-3%!important}
  .hero-avocado{width:48%!important;right:2%!important;bottom:-2%!important}

  .section{padding:72px 0!important}
  .section-heading h2,.products-heading h2,.contact-copy h2{font-size:40px!important;line-height:1.05!important}
  .section-heading.centered.compact p,.section-heading.centered p{max-width:620px;margin-inline:auto}

  .ecosystem-pair{grid-template-columns:1fr!important;gap:20px!important;background:transparent!important;box-shadow:none!important}
  .ecosystem-panel{min-height:0!important;border-radius:24px!important;box-shadow:0 18px 42px rgba(17,35,90,.12)}
  .ecosystem-panel:first-child,.ecosystem-panel:last-child{border-radius:24px!important}
  .panel-content{padding:28px 24px 28px!important;max-width:none!important}
  .panel-content h3{font-size:34px!important;line-height:1.06!important}
  .panel-content p{font-size:15px!important;line-height:1.55!important}
  .panel-content ul{font-size:14px!important;gap:10px!important}
  .onesta-medallion{position:relative!important;left:auto!important;top:auto!important;transform:none!important;margin:4px auto;width:72px!important;height:72px!important}

  .origin-layout{grid-template-columns:1fr!important;gap:30px!important;min-height:auto!important}
  .origin-photo-wrap{width:min(86%,420px)!important;margin:0 auto!important;order:1}
  .origin-copy{order:2}
  .origin-photo{height:auto!important;aspect-ratio:1/1.08}
  .stat-top{left:-18px!important;top:-18px!important}
  .stat-bottom{right:-18px!important;bottom:-18px!important}
  .floating-stat{padding:12px 16px!important;border-radius:18px!important}
  .floating-stat strong{font-size:28px!important}
  .floating-stat span{font-size:11px!important;line-height:1.25!important;letter-spacing:.11em!important}
  .talsa-logo{width:146px!important;margin:6px 0 18px!important}
  .origin-copy h2{font-size:46px!important;line-height:1.08!important}
  .origin-intro{font-size:17px!important;line-height:1.65!important;max-width:none!important}
  .origin-feature{align-items:flex-start;gap:14px!important;margin:16px 0!important}
  .origin-feature img{width:34px!important;height:34px!important}
  .origin-feature h3{font-size:18px!important;margin-bottom:4px!important}
  .origin-feature p{font-size:15px!important;line-height:1.55!important}
  .origin-crate{display:none!important}

  .technology .section-heading h2{font-size:44px!important}
  .tech-orbit{display:flex!important;flex-direction:column!important;gap:16px!important;height:auto!important;padding-top:0!important;max-width:680px;margin:0 auto}
  .orbit-lines{display:none!important}
  .softripe-core{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:182px!important;height:182px!important;margin:14px auto 8px!important;border:14px solid #edf3ff!important;box-shadow:none!important}
  .softripe-core img{max-width:132px!important}
  .orbit-card{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%!important;min-height:0!important;padding:24px 22px!important;border-radius:18px!important;box-shadow:0 10px 24px rgba(17,35,90,.08)!important;gap:14px!important}
  .orbit-card-icon{width:22px!important;height:22px!important;flex:0 0 22px!important;margin-top:2px}
  .orbit-card span{font-family:"DM Mono",monospace;font-size:11px!important;letter-spacing:.16em!important}
  .orbit-card h3{font-size:30px!important;line-height:1.14!important;margin:3px 0 8px!important;letter-spacing:-.03em}
  .orbit-card p{font-size:15px!important;line-height:1.55!important}
  .card-a{order:1}.card-c{order:2}.card-d{order:3}.card-b{order:4}

  .certifications{padding-top:76px!important;padding-bottom:76px!important}
  .certifications .section-heading h2{font-size:48px!important;max-width:560px;margin-inline:auto}
  .certifications .section-heading p{font-size:18px!important;line-height:1.55!important;max-width:560px;margin:18px auto 0!important}
  .cert-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;max-width:680px;margin:34px auto 0!important}
  .cert-link{min-height:94px!important;padding:14px!important}
  .cert-link img{height:56px!important;max-width:120px!important}

  .products-heading h2{font-size:44px!important;max-width:520px}
  .products-grid{grid-template-columns:1fr!important;gap:24px!important;max-width:680px;margin-inline:auto}
  .product-card>img{height:220px!important}
  .product-country{font-size:11px!important;padding:6px 12px!important;left:16px!important;top:16px!important}
  .product-body{padding:18px 18px 20px!important}
  .product-body h3{font-size:28px!important;min-height:0!important;margin-bottom:10px!important}
  .availability-title,.varieties-title{font-family:"DM Mono",monospace;font-size:10px!important;margin-top:14px!important;margin-bottom:9px!important}
  .months{gap:5px!important}
  .month-bar{height:7px!important}
  .month-letter{font-size:9px!important}
  .pill{font-size:11px!important;padding:7px 12px!important}

  .traceability .section-heading h2{font-size:42px!important;max-width:640px;margin-inline:auto}
  .timeline{display:flex!important;flex-direction:column!important;gap:18px!important;max-width:520px;margin:18px auto 0!important}
  .timeline:before{display:none!important}
  .timeline-step{position:relative!important;background:#fff;border-radius:20px;box-shadow:0 10px 28px rgba(17,35,90,.08);padding:32px 26px 24px!important;text-align:center!important}
  .timeline-step span{position:absolute;top:-19px;left:50%;transform:translateX(-50%);display:grid!important;place-items:center;width:38px;height:38px;margin:0!important;border-radius:999px;background:#fff;border:1.5px solid var(--blue);box-shadow:0 4px 8px rgba(37,99,255,.10);font-family:"DM Mono",monospace;font-size:12px!important;line-height:1;color:var(--blue)!important}
  .timeline-step:not(:last-child)::after{content:"";position:absolute;left:50%;bottom:-18px;transform:translateX(-50%);width:1.5px;height:18px;background:repeating-linear-gradient(to bottom,var(--blue) 0 4px,transparent 4px 8px)}
  .trace-icon{display:none!important}
  .timeline-step h3{font-size:28px!important;line-height:1.1!important;margin:0 0 10px!important}
  .timeline-step p{background:transparent!important;box-shadow:none!important;padding:0!important;min-height:0!important;font-size:15px!important;line-height:1.6!important;color:#6b7899!important}

  .contact-layout{grid-template-columns:1fr!important;grid-template-areas:"copy" "map" "cta";gap:24px!important;max-width:680px;margin-inline:auto}
  .contact-copy{max-width:none!important}
  .contact-copy h2{font-size:58px!important;margin-top:6px!important}
  .contact-lead{font-size:18px!important;line-height:1.6!important;max-width:none!important}
  .contact-links{gap:16px!important;margin:24px 0 0!important}
  .contact-links a{font-size:16px!important;gap:14px!important}
  .contact-links img{width:44px!important;height:44px!important}
  .contact-links small{font-family:"DM Mono",monospace;font-size:10px!important;letter-spacing:.16em!important;margin-bottom:4px!important}
  .map-card-real{height:330px!important;border-radius:22px!important}
  .map-overlay{left:16px!important;bottom:16px!important}
  .contact-actions{margin-top:0!important}
  .contact-actions .contact-cta{max-width:none!important;justify-content:center;min-height:58px!important}

  .footer-grid{grid-template-columns:1fr 1fr!important;gap:22px!important}
}

@media(max-width:560px){
  .site-header{height:64px!important}
  .nav-wrap{height:64px!important}
  .brand img{width:108px!important}
  .lang-switch{height:32px!important;padding:0 9px!important;gap:8px!important}
  .lang-switch .lang-flag{width:18px!important;height:18px!important}
  .lang-switch .lang-code{font-size:11px!important}
  .menu-btn{width:38px;height:38px;font-size:20px}

  .hero-grid{padding:18px 20px 0!important}
  .hero-copy .badge{min-height:28px;padding:0 12px;font-size:11px;letter-spacing:.08em}
  .hero-copy h1{font-size:28px!important;line-height:1.08!important;letter-spacing:-.04em!important;margin:18px 0 16px!important}
  .hero-copy p{font-size:15px!important;line-height:1.6!important}
  .hero-actions{max-width:none!important}
  .hero-actions .btn{min-height:52px!important;font-size:16px!important}
  .hero-visual{height:250px!important;min-height:250px!important}
  .hero-map-composite{width:126%!important;height:126%!important;left:-14%!important;top:-13%!important}
  .hero-avocado{width:56%!important;right:-4%!important;bottom:-6%!important}
  .route-label text{font-size:18px!important}.route-label text.small{font-size:10px!important}

  .section{padding:56px 0!important}
  .container,.narrow-wide,.products-container,.tech-wrap{width:min(100% - 40px,var(--container))!important}
  .section-heading.centered .eyebrow,.origin-copy>.eyebrow,.contact-copy>.eyebrow,.products-heading>.eyebrow{font-size:12px!important;letter-spacing:.18em!important}
  .section-heading h2,.products-heading h2,.contact-copy h2,.origin-copy h2,.technology .section-heading h2,.traceability .section-heading h2,.certifications .section-heading h2{font-size:28px!important;line-height:1.18!important;letter-spacing:-.04em!important}
  .section-heading p,.origin-intro,.contact-lead,.timeline-step p,.orbit-card p,.certifications .section-heading p{font-size:14px!important;line-height:1.57!important}

  .ecosystem-pair{gap:18px!important}
  .panel-content{padding:24px 20px 22px!important}
  .panel-content .mini-label{font-size:11px!important;letter-spacing:.18em!important}
  .panel-content h3{font-size:24px!important;margin:7px 0 12px!important}
  .panel-content p{font-size:14px!important}
  .panel-content ul{font-size:14px!important}
  .onesta-medallion{width:64px!important;height:64px!important;padding:11px!important}

  .origin-layout{gap:26px!important}
  .origin-photo-wrap{width:min(100%,310px)!important}
  .floating-stat{padding:10px 14px!important;gap:10px!important}
  .floating-stat img{width:22px!important;height:22px!important}
  .floating-stat strong{font-size:16px!important}
  .floating-stat span{font-size:10px!important;line-height:1.25!important}
  .stat-top{left:-14px!important;top:-14px!important}
  .stat-bottom{right:-8px!important;bottom:-12px!important}
  .talsa-logo{width:118px!important;margin:2px 0 14px!important}
  .origin-feature img{width:28px!important;height:28px!important}
  .origin-feature h3{font-size:15px!important}
  .origin-feature p{font-size:14px!important}

  .tech-orbit{gap:14px!important}
  .softripe-core{width:148px!important;height:148px!important;margin:8px auto 4px!important;border-width:12px!important}
  .softripe-core img{max-width:108px!important}
  .orbit-card{padding:20px 18px!important;border-left:4px solid var(--blue)!important}
  .orbit-card h3{font-size:16px!important;line-height:1.32!important;margin-bottom:6px!important}
  .orbit-card span{font-size:10px!important;letter-spacing:.1em!important}
  .orbit-card p{font-size:13px!important;line-height:1.45!important}

  .cert-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin-top:28px!important}
  .cert-link{min-height:78px!important;padding:12px!important;border-radius:14px!important}
  .cert-link img{height:46px!important;max-width:96px!important}

  .products-grid{gap:20px!important}
  .product-card>img{height:190px!important}
  .product-body{padding:16px!important}
  .product-body h3{font-size:18px!important;line-height:1.25!important}
  .availability-title,.varieties-title{font-size:10px!important}
  .pills{gap:7px!important}
  .pill{font-size:10px!important;padding:6px 10px!important}

  .timeline{gap:20px!important;max-width:none!important}
  .timeline-step{padding:28px 20px 18px!important;border-radius:16px!important}
  .timeline-step span{width:40px;height:40px;top:-20px;font-size:12px!important}
  .timeline-step h3{font-size:16px!important;margin-bottom:8px!important}

  .contact-copy h2{font-size:24px!important}
  .contact-links a{font-size:15px!important}
  .contact-links img{width:40px!important;height:40px!important}
  .map-card-real{height:240px!important}
  .contact-actions .contact-cta{min-height:52px!important}
  .contact-actions .contact-cta .btn-label{font-size:15px!important}

  .footer-grid{grid-template-columns:1fr!important;gap:18px!important}
}


/* v11 crops: 4 crops, 2 per row */
.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;max-width:980px;margin-inline:auto}
.product-card>img{height:230px!important}
.product-body{padding:18px 20px 20px!important}
.product-body h3{font-size:22px!important;min-height:0!important}
.product-country{font-size:10px!important;padding:6px 10px!important}
@media(max-width:820px){
  .products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
  .product-card>img{height:190px!important}
}
@media(max-width:560px){
  .products-grid{grid-template-columns:1fr!important;gap:18px!important}
  .product-card>img{height:200px!important}
}


/* v12: mobile header/menu + hero map labels */
.route-label text{
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-weight:500!important;
  letter-spacing:.02em!important;
}
.route-label text.small{display:none!important}

@media(max-width:820px){
  /* Mobile header must contain only logo + language + hamburger. */
  .desktop-nav,.desktop-contact{display:none!important}
  .nav-wrap{display:flex!important;flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important;gap:10px!important;overflow:visible!important}
  .brand{flex:0 0 auto!important}
  .nav-actions{margin-left:auto!important;display:flex!important;align-items:center!important;gap:8px!important;flex:0 0 auto!important}
  .lang-switch{min-width:76px!important;max-width:82px!important}
  .menu-btn{display:grid!important;place-items:center!important;flex:0 0 38px!important}

  /* Prevent the opened menu from spilling past the viewport. */
  .mobile-menu{
    box-sizing:border-box!important;
    position:absolute!important;
    top:var(--header)!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:100vw!important;
    overflow-x:hidden!important;
    padding:20px!important;
    z-index:95!important;
  }
  .mobile-menu a,
  .mobile-menu .btn{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  .mobile-menu a{padding:9px 0!important}
  .mobile-menu .btn{margin-top:10px!important}

  /* The mobile reference intentionally has no world map / route. */
  .hero-map-composite{display:none!important}
  .hero-visual{
    height:180px!important;
    min-height:180px!important;
    margin-top:0!important;
    overflow:hidden!important;
  }
  .hero-avocado{
    width:58%!important;
    max-width:300px!important;
    right:-2%!important;
    bottom:-8%!important;
    left:auto!important;
    top:auto!important;
  }
}

@media(max-width:560px){
  .nav-wrap{padding-inline:0!important}
  .brand img{width:104px!important}
  .lang-switch{min-width:72px!important;max-width:76px!important;height:34px!important}
  .menu-btn{width:36px!important;height:36px!important;flex-basis:36px!important}
  .mobile-menu{padding:18px 20px 20px!important}
  .hero-visual{height:150px!important;min-height:150px!important}
  .hero-avocado{width:62%!important;right:-5%!important;bottom:-12%!important}
}
