:root{--tb-navy:#062d61;--tb-orange:#ff7100;--tb-blue:#1478e8;--tb-line:#dce5ef;--tb-muted:#697a91}
.tb-page{font-family:Poppins,sans-serif;color:#102a52;background:#f5f8fc;min-height:100vh}
.tb-hero{padding:44px 0 105px;color:#fff;background:linear-gradient(115deg,rgba(3,38,81,.97),rgba(5,74,142,.88)),url('/images/mtalii/destinations/diani-hero-v2.jpg') center/cover}
.tb-back{display:inline-flex;gap:8px;color:#d5e4f4!important;font-size:13px;margin-bottom:50px}
.tb-kicker{display:block;color:#ff8a25;font-size:11px;font-weight:800;letter-spacing:.18em;margin-bottom:10px}
.tb-hero h1{font-size:48px;color:#fff;margin:0 0 13px;letter-spacing:-.04em}
.tb-hero p{color:#d4e2f1;font-size:16px;max-width:650px}
.tb-shell{margin-top:-58px;padding-bottom:80px;display:grid;grid-template-columns:265px 1fr;gap:24px;align-items:start}
.tb-shell aside,.tb-form{background:#fff;border:1px solid var(--tb-line);border-radius:18px;box-shadow:0 15px 44px rgba(8,40,80,.1)}
.tb-shell aside{padding:18px}
.tb-step{display:flex;gap:12px;padding:16px 10px;opacity:.52}
.tb-step+.tb-step{border-top:1px solid #e8eef5}
.tb-step b{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e8eef5;color:#6b7c93}
.tb-step.active{opacity:1}
.tb-step.active b{background:var(--tb-navy);color:#fff}
.tb-step span{display:flex;flex-direction:column}
.tb-step strong{font-size:13px}
.tb-step small{font-size:10px;color:var(--tb-muted);margin-top:3px}
.tb-form{padding:34px}
.tb-form header h2{font-size:30px;margin:0 0 6px}
.tb-form header p,.tb-form fieldset>p{color:var(--tb-muted);font-size:13px}
.tb-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:27px 0 32px}
.tb-fields label.wide{grid-column:1/-1}
.tb-fields label>span{font-size:11px;color:#62728a;font-weight:700;display:block;margin-bottom:7px}
.tb-fields label>div{height:49px;display:flex;align-items:center;border:1px solid #cfdbe8;border-radius:10px;padding:0 13px}
.tb-fields i{color:var(--tb-blue);font-size:18px}
.tb-fields input,.tb-fields select{border:0;outline:0;width:100%;height:100%;padding-left:10px;background:#fff;color:#142d51}
.tb-form fieldset{border:0;padding:0;margin:0}
.tb-form legend{font-size:18px;font-weight:800}
.tb-services{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:17px}
.tb-services label{margin:0;cursor:pointer}
.tb-services input{position:absolute;opacity:0}
.tb-services label>span{height:112px;border:1px solid var(--tb-line);border-radius:13px;padding:15px;display:grid;grid-template-columns:auto 1fr auto;column-gap:10px;position:relative}
.tb-services i{grid-row:1/3;font-size:24px;color:var(--tb-blue)}
.tb-services b{font-size:13px}
.tb-services small{font-size:10px;color:var(--tb-muted)}
.tb-services em{display:none;color:var(--tb-orange);font-style:normal}
.tb-services input:checked+span{border:2px solid var(--tb-orange);background:#fff8f2}
.tb-services input:checked+span em{display:block}
.tb-summary{margin:31px -34px -34px;padding:22px 34px;border-radius:0 0 18px 18px;background:#f2f6fa;display:flex;align-items:center;justify-content:space-between;gap:20px}
.tb-summary div{display:flex;flex-direction:column}
.tb-summary small{color:var(--tb-orange);font-weight:800;font-size:9px;letter-spacing:.15em}
.tb-summary strong{font-size:14px;margin:4px 0}
.tb-summary span{font-size:10px;color:var(--tb-muted)}
.tb-summary button{border:0;border-radius:10px;background:var(--tb-orange);color:#fff;padding:15px 20px;font-weight:700}
@media(max-width:900px){.tb-shell{grid-template-columns:1fr;margin-inline:15px}
.tb-shell aside{display:flex;overflow:auto}
.tb-step{min-width:200px}
.tb-services{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:575px){.tb-hero{padding-inline:18px}
.tb-hero h1{font-size:36px}
.tb-shell{margin-top:-45px}
.tb-form{padding:22px}
.tb-fields,.tb-services{grid-template-columns:1fr}
.tb-summary{margin:25px -22px -22px;padding:20px 22px;align-items:stretch;flex-direction:column}
.tb-summary button{width:100%}
}

/* M-Talii multi-service planning flow */
.tb-main{display:grid;gap:24px}.tb-shell aside{position:sticky;top:18px}.tb-cart-link{display:flex;align-items:center;gap:12px;margin-top:12px;padding:14px 12px;border-radius:12px;background:#eef6ff;color:var(--tb-navy)!important}.tb-cart-link>i{font-size:22px;color:var(--tb-blue)}.tb-cart-link span{display:flex;flex-direction:column}.tb-cart-link strong{font-size:13px}.tb-cart-link small{font-size:10px;color:var(--tb-muted);margin-top:3px}.tb-options{padding:30px;background:#fff;border:1px solid var(--tb-line);border-radius:18px;box-shadow:0 15px 44px rgba(8,40,80,.1)}.tb-options>header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px}.tb-options h2{font-size:27px;margin:0 0 5px}.tb-options header p{margin:0;color:var(--tb-muted);font-size:12px}.tb-options header>a{display:inline-flex;align-items:center;gap:8px;border:1px solid #bdd5ef;border-radius:10px;padding:11px 15px;color:var(--tb-navy);font-size:12px;font-weight:700;white-space:nowrap}.tb-option-list{display:grid;gap:10px}.tb-option-list article{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:15px;padding:17px;border:1px solid var(--tb-line);border-radius:14px}.tb-option-list article>i{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#eaf4ff;color:var(--tb-blue);font-size:23px}.tb-option-list h3{font-size:15px;margin:0 0 3px}.tb-option-list p{font-size:11px;color:var(--tb-muted);margin:0 0 4px}.tb-option-list small{font-size:10px;color:#8492a6}.tb-option-list article>a{display:inline-flex;align-items:center;gap:7px;border-radius:10px;background:var(--tb-navy);color:#fff;padding:11px 14px;font-size:11px;font-weight:700}.tb-fields label>div:focus-within{border-color:var(--tb-blue);box-shadow:0 0 0 3px rgba(20,120,232,.12)}.tb-services input:focus+span{box-shadow:0 0 0 3px rgba(20,120,232,.18)}
@media(max-width:900px){.tb-shell{width:auto}.tb-shell aside{position:static}.tb-cart-link{min-width:190px;margin:0}}
@media(max-width:575px){.tb-options{padding:22px}.tb-options>header{align-items:flex-start;flex-direction:column}.tb-option-list article{grid-template-columns:42px 1fr}.tb-option-list article>a{grid-column:1/-1;justify-content:center}.tb-option-list article>i{width:42px;height:42px}}
