.estof-cart{--sea:#087f92;--ink:#10384c;box-sizing:border-box;max-width:1120px;margin:24px auto 48px;padding:28px;background:linear-gradient(145deg,#e8f9fa,#f6fbff 65%,#fff4e5);border:1px solid #cce7ec;border-radius:24px;box-shadow:0 16px 48px #10384c12;color:var(--ink)}
.estof-cart:before{content:"Le tue esperienze ESTOF";display:block;padding:25px 28px;margin:-28px -28px 26px;background:linear-gradient(115deg,#10384c,#087f92);border-radius:23px 23px 0 0;color:#fff;font-size:clamp(22px,3vw,32px);font-weight:800;line-height:1.3;letter-spacing:-.4px}
.estof-cart .estof-cart-table{width:100%;border:0!important;border-collapse:separate;border-spacing:0 12px;background:transparent;font-size:15px;table-layout:auto}
.estof-cart .estof-cart-table thead th{background:transparent;color:#456879;border:0!important;padding:8px 16px;font-size:13px;letter-spacing:.04em}
.estof-cart .estof-cart-table tbody td{background:#fff;border:0!important;padding:20px 16px;vertical-align:middle;line-height:1.65;color:#244a5b}
.estof-cart .estof-cart-table tbody td:first-child{border-radius:14px 0 0 14px;font-weight:750;font-size:17px;color:#10384c;width:38%;border-left:4px solid #12a3ac!important;overflow-wrap:anywhere}
.estof-cart .estof-cart-table tbody td:last-child{border-radius:0 14px 14px 0}
.estof-cart .estof-cart-table tbody td:nth-child(4){font-weight:800;color:#087886;white-space:nowrap;font-size:18px}
.estof-cart .estof-cart-table input{box-sizing:border-box;width:72px!important;min-height:44px;border:1px solid #bedce4!important;border-radius:9px!important;background:#f4fbfc!important;color:#10384c!important;padding:8px!important;font-size:16px}
.estof-cart .estof-age-fields{gap:9px}.estof-cart .estof-age-fields label{font-size:13px;color:#345b6c}
.estof-cart .estof-cart-table button[data-estof-remove]{width:38px;height:38px;min-width:38px;padding:0!important;border-radius:50%!important;background:#fff0ea!important;color:#a33720!important;line-height:1;font-size:26px}
.estof-cart .estof-cart-table tfoot th{background:#10384c!important;color:#fff!important;border:0!important;padding:22px 16px;font-size:20px;line-height:1.5}
.estof-cart .estof-cart-table tfoot th:first-child{border-radius:14px 0 0 14px}.estof-cart .estof-cart-table tfoot th:last-child{border-radius:0 14px 14px 0}.estof-cart .estof-cart-table tfoot th:nth-child(2){color:#ffd099!important;white-space:nowrap}
.estof-cart .estof-cart-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin:20px 0 0}
.estof-cart .estof-cart-actions a{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 22px!important;border:1px solid #bfd7df!important;border-radius:12px!important;background:#fff!important;color:#10384c!important;font-size:16px;font-weight:750;line-height:1.4;text-decoration:none!important;text-align:center;box-shadow:none;transition:box-shadow .15s}
.estof-cart .estof-cart-actions a[data-estof-checkout-link]{background:linear-gradient(110deg,#ffad45,#ffd079)!important;color:#183748!important;border-color:#ffb450!important;box-shadow:0 6px 18px #ec972b26}
.estof-cart .estof-cart-actions a:hover{box-shadow:0 4px 16px #10384c26}.estof-cart :is(a,button,input):focus-visible{outline:3px solid #087f92!important;outline-offset:3px}
.estof-cart .estof-notice{background:#fff;border:1px dashed #8fcad5;border-radius:14px;padding:30px;color:#345b6c;text-align:center;font-size:18px}
@media(max-width:760px){.estof-cart{padding:16px;border-radius:18px;margin:16px auto 32px}.estof-cart:before{margin:-16px -16px 18px;padding:22px 20px;border-radius:17px 17px 0 0}.estof-cart .estof-cart-table,.estof-cart .estof-cart-table tbody,.estof-cart .estof-cart-table tfoot{display:block;width:100%}.estof-cart .estof-cart-table thead{display:none}.estof-cart .estof-cart-table tbody tr{display:block;position:relative;margin-bottom:16px;background:#fff;border-radius:14px;padding:12px;box-shadow:0 5px 16px #10384c08}.estof-cart .estof-cart-table tbody td{display:block!important;padding:10px 8px;border-radius:0!important;width:auto!important}.estof-cart .estof-cart-table tbody td:first-child{padding-right:42px;border-left:0!important;border-bottom:2px solid #d8f1f2!important}.estof-cart .estof-cart-table tbody td:nth-child(2):before{content:"Partecipanti";display:block;font-weight:700;margin-bottom:8px;color:#087886}.estof-cart .estof-cart-table tbody td:nth-child(3):before{content:"Tariffe";display:block;font-weight:700;color:#087886}.estof-cart .estof-cart-table tbody td:nth-child(4){border-top:1px solid #e3eef1!important}.estof-cart .estof-cart-table tbody td:nth-child(4):before{content:"Totale escursione";font-size:14px;font-weight:600;margin-right:14px;color:#456879}.estof-cart .estof-cart-table tbody td:last-child{position:absolute;top:14px;right:12px;padding:0}.estof-cart .estof-age-fields{max-width:360px}.estof-cart .estof-cart-table tfoot tr{display:flex;align-items:center;justify-content:space-between;background:#10384c;border-radius:14px;padding:8px}.estof-cart .estof-cart-table tfoot th{display:block;border-radius:0!important;padding:14px 10px;font-size:20px}.estof-cart .estof-cart-table tfoot th:last-child{display:none}.estof-cart .estof-cart-actions{flex-direction:column-reverse;align-items:stretch}.estof-cart .estof-cart-actions a{width:100%}}

/* Shared ESTOF action palette: WhatsApp selectors deliberately excluded. */
body .estof-brand-action,body .estof-picker .estof-picker-confirm,body .estof-checkout .estof-place-order,body .estof-add-cart{background:linear-gradient(110deg,#ffad45,#ffd079)!important;color:#183748!important;border:1px solid #ffb450!important;border-radius:12px!important;padding:13px 22px!important;min-height:48px;font-size:16px;font-weight:750;line-height:1.4;text-decoration:none!important;text-align:center;box-shadow:0 6px 18px #ec972b26;box-sizing:border-box;white-space:normal}
body .estof-brand-action:hover,body .estof-picker .estof-picker-confirm:hover,body .estof-checkout .estof-place-order:hover{filter:brightness(.97)}
body .estof-brand-action:focus-visible,body .estof-picker :is(input,button):focus-visible,body .estof-checkout :is(input,button):focus-visible{outline:3px solid #087f92!important;outline-offset:3px}
body .estof-picker-overlay{background:#082b42b8;box-sizing:border-box;padding:18px;overflow-y:auto}
body .estof-picker{box-sizing:border-box;max-height:calc(100dvh - 36px);overflow-y:auto;border:1px solid #b5dfe6;border-radius:24px;background:linear-gradient(145deg,#e8f9fa,#f6fbff 65%,#fff4e5);color:#10384c;padding:28px;box-shadow:0 20px 70px #03203355}
body .estof-picker h3{color:#10384c;font-size:24px;line-height:1.35;margin:0 34px 16px 0}
body .estof-picker-price{opacity:1;color:#346475;background:#fff;padding:14px;border-radius:12px;line-height:1.6}
body .estof-picker label{color:#244a5b;font-size:14px}
body .estof-picker input:not([type="radio"]){box-sizing:border-box;min-width:0;min-height:46px;border:1px solid #bedce4;border-radius:9px;background:#fff;color:#10384c;font-size:16px;padding:10px}
body .estof-picker .estof-picker-x{color:#10384c!important;background:#fff!important;border-radius:50%;padding:0;width:36px;height:36px;top:15px;right:15px}
.estof-checkout,.estof-order-result{box-sizing:border-box;max-width:1120px;margin:24px auto 48px;padding:28px!important;background:linear-gradient(145deg,#e8f9fa,#f6fbff 65%,#fff4e5);border:1px solid #cce7ec!important;border-radius:24px!important;box-shadow:0 16px 48px #10384c12;color:#10384c;overflow-wrap:anywhere}
.estof-checkout>h2:first-child,.estof-order-result>h2:first-child{padding:25px 28px;margin:-28px -28px 26px;background:linear-gradient(115deg,#10384c,#087f92);border-radius:23px 23px 0 0;color:#fff;font-size:clamp(22px,3vw,32px);line-height:1.3}
.estof-checkout>h2{font-size:23px;color:#10384c;margin:28px 0 16px}
.estof-checkout-grid{padding:20px;background:#fff;border-radius:14px}
.estof-checkout input:not([type="radio"]):not([type="checkbox"]){box-sizing:border-box;width:100%;min-width:0;min-height:46px;border:1px solid #bedce4;border-radius:9px;background:#f4fbfc;color:#10384c;font-size:16px}
.estof-checkout .estof-payments label{background:#fff;border:1px solid #bedce4;border-radius:12px;padding:16px;color:#244a5b}.estof-checkout .estof-payments label:has(input:checked){border-color:#087f92;background:#e1f7f8}.estof-checkout input[type="radio"],.estof-checkout input[type="checkbox"]{accent-color:#087f92}
.estof-order-result>p{background:#fff;padding:17px 20px;border-radius:12px;line-height:1.7;margin:12px 0;color:#244a5b}.estof-order-result>p:nth-of-type(2){background:#10384c;color:#ffd099;font-size:22px;font-weight:750}.estof-order-result .estof-bank{border:1px solid #badfe5;border-left:4px solid #087f92;border-radius:14px;background:#fff;padding:20px}.estof-order-result .estof-bank h3{color:#087f92}
@media(max-width:760px){.estof-checkout,.estof-order-result{padding:16px!important;border-radius:18px!important}.estof-checkout>h2:first-child,.estof-order-result>h2:first-child{margin:-16px -16px 18px;padding:22px 20px;border-radius:17px 17px 0 0}.estof-checkout-grid{grid-template-columns:1fr;padding:16px}.estof-checkout .estof-place-order{width:100%}.estof-picker-fields{grid-template-columns:1fr!important}body .estof-picker{padding:20px}}

.estof-checkout .estof-cart-table{width:100%;border:0!important;border-collapse:separate;border-spacing:0 12px;background:transparent;font-size:15px;table-layout:auto}
.estof-checkout .estof-cart-table thead th{background:transparent;color:#456879;border:0!important;padding:8px 16px;font-size:13px;letter-spacing:.04em}
.estof-checkout .estof-cart-table tbody td{background:#fff;border:0!important;padding:20px 16px;vertical-align:middle;line-height:1.65;color:#244a5b}
.estof-checkout .estof-cart-table tbody td:first-child{border-radius:14px 0 0 14px;font-weight:750;font-size:17px;color:#10384c;width:38%;border-left:4px solid #12a3ac!important;overflow-wrap:anywhere}
.estof-checkout .estof-cart-table tbody td:last-child{border-radius:0 14px 14px 0}
.estof-checkout .estof-cart-table tbody td:nth-child(4){font-weight:800;color:#087886;white-space:nowrap;font-size:18px}
.estof-checkout .estof-cart-table input{box-sizing:border-box;width:72px!important;min-height:44px;border:1px solid #bedce4!important;border-radius:9px!important;background:#f4fbfc!important;color:#10384c!important;padding:8px!important;font-size:16px}
.estof-checkout .estof-cart-table button[data-estof-remove]{width:38px;height:38px;min-width:38px;padding:0!important;border-radius:50%!important;background:#fff0ea!important;color:#a33720!important;line-height:1;font-size:26px}
.estof-checkout .estof-cart-table tfoot th{background:#10384c!important;color:#fff!important;border:0!important;padding:22px 16px;font-size:20px;line-height:1.5}
.estof-checkout .estof-cart-table tfoot th:first-child{border-radius:14px 0 0 14px}.estof-checkout .estof-cart-table tfoot th:last-child{border-radius:0 14px 14px 0}.estof-checkout .estof-cart-table tfoot th:nth-child(2){color:#ffd099!important;white-space:nowrap}
@media(max-width:650px){.estof-checkout [data-estof-checkout-cart]{overflow-x:auto}.estof-checkout .estof-cart-table{min-width:540px}.estof-checkout .estof-cart-table td:nth-child(3),.estof-checkout .estof-cart-table th:nth-child(3){display:table-cell}}

@media(max-width:760px){.estof-checkout{padding:16px;border-radius:18px;margin:16px auto 32px}.estof-checkout:before{margin:-16px -16px 18px;padding:22px 20px;border-radius:17px 17px 0 0}.estof-checkout .estof-cart-table,.estof-checkout .estof-cart-table tbody,.estof-checkout .estof-cart-table tfoot{display:block;width:100%}.estof-checkout .estof-cart-table thead{display:none}.estof-checkout .estof-cart-table tbody tr{display:block;position:relative;margin-bottom:16px;background:#fff;border-radius:14px;padding:12px;box-shadow:0 5px 16px #10384c08}.estof-checkout .estof-cart-table tbody td{display:block!important;padding:10px 8px;border-radius:0!important;width:auto!important}.estof-checkout .estof-cart-table tbody td:first-child{padding-right:42px;border-left:0!important;border-bottom:2px solid #d8f1f2!important}.estof-checkout .estof-cart-table tbody td:nth-child(2):before{content:"Partecipanti";display:block;font-weight:700;margin-bottom:8px;color:#087886}.estof-checkout .estof-cart-table tbody td:nth-child(3):before{content:"Tariffe";display:block;font-weight:700;color:#087886}.estof-checkout .estof-cart-table tbody td:nth-child(4){border-top:1px solid #e3eef1!important}.estof-checkout .estof-cart-table tbody td:nth-child(4):before{content:"Totale escursione";font-size:14px;font-weight:600;margin-right:14px;color:#456879}.estof-checkout .estof-cart-table tbody td:last-child{position:absolute;top:14px;right:12px;padding:0}.estof-checkout .estof-age-fields{max-width:360px}.estof-checkout .estof-cart-table tfoot tr{display:flex;align-items:center;justify-content:space-between;background:#10384c;border-radius:14px;padding:8px}.estof-checkout .estof-cart-table tfoot th{display:block;border-radius:0!important;padding:14px 10px;font-size:20px}.estof-checkout .estof-cart-table tfoot th:last-child{display:none}.estof-checkout .estof-cart-actions{flex-direction:column-reverse;align-items:stretch}.estof-checkout .estof-cart-actions a{width:100%}}
@media(max-width:760px){.estof-checkout .estof-cart-table{min-width:0}.estof-checkout [data-estof-checkout-cart]{overflow:visible}}
