/* ATT Trip Planner — V1.0 — 2026-09-14
   Locked blueprint foundation. Do not redesign without approval. */
*{box-sizing:border-box}html,body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#09284a}button,input,textarea{font:inherit}button{cursor:pointer}
.planner{min-height:100svh;position:relative;overflow:hidden;background:#dcebf5}.hero{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,28,50,.38),rgba(255,255,255,.03)),url("assets/images/planner-hero.jpg") center/cover no-repeat,#9fc4dc}.topbar{height:78px;padding:16px 4vw;position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;color:#fff}.brand{display:flex;gap:10px;align-items:center;color:inherit;text-decoration:none}.brand-mark{width:42px;height:42px;border-radius:12px;background:#ffffff22;display:grid;place-items:center}.brand b,.brand small{display:block}.brand b{font-size:16px}.brand small{font-size:11px;opacity:.8}.trust{font-size:12px;font-weight:700}.layout{position:relative;z-index:2;height:calc(100svh - 150px);min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;padding:22px 5.5vw 22px;overflow:hidden}.hero-copy{color:#fff;max-width:610px}.hero-copy>small{font-weight:800;letter-spacing:.18em}.hero-copy h1{font-size:clamp(50px,5vw,78px);line-height:.95;letter-spacing:-.05em;margin:18px 0}.hero-copy em{font-style:normal;color:#13a8ff}.hero-copy p{font-size:18px;max-width:520px;line-height:1.5}.proof{display:flex;gap:28px;margin-top:32px}.proof span{display:flex;gap:9px;border-left:1px solid #ffffff66;padding-left:18px}.proof b{font-size:12px}.card{width:min(100%,650px);max-height:100%;overflow-y:auto;justify-self:end;padding:24px 30px;background:#fffffff2;border:1px solid #fff;border-radius:26px;box-shadow:0 24px 70px #04213e38;backdrop-filter:blur(15px)}.steps{display:flex;align-items:flex-start;gap:7px;margin-bottom:26px}.steps span{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:9px;color:#6c84a0;min-width:58px;text-align:center}.steps b{width:29px;height:29px;border:1px solid #cbd9e7;border-radius:50%;display:grid;place-items:center}.steps .active{color:#0876ef}.steps .active b{background:#1478f2;color:#fff;border-color:#1478f2}.steps i{height:1px;background:#cbd9e7;flex:1;margin-top:14px}.step{display:none}.step.active{display:block}.step h2{margin:0 0 6px;font-size:25px}.step>p{color:#627b96;font-size:13px;margin:0 0 17px}.input,.other,.phone{width:100%;border:1px solid #d7e4ef;border-radius:11px;background:#fff;padding:12px;color:#09284a;outline:0}.input:focus,.phone:focus-within{border-color:#72aef5;box-shadow:0 0 0 4px #1478f215}.destinations{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:13px 0}.destinations button{height:76px;border:0;border-radius:11px;background:linear-gradient(#0000,#0008),#75a9c7;color:#fff;font-weight:800;text-align:left;padding:11px}.destinations button:nth-child(1){background:linear-gradient(#0000,#0008),url("planner-destination-1.jpg") center/cover}.destinations button:nth-child(2){background:linear-gradient(#0000,#0008),url("planner-destination-2.jpg") center/cover}.destinations button:nth-child(3){background:linear-gradient(#0000,#0008),url("planner-destination-3.jpg") center/cover}.destinations button:nth-child(4){background:linear-gradient(#0000,#0008),url("planner-destination-4.jpg") center/cover}.destinations button:nth-child(5){background:linear-gradient(#0000,#0008),url("planner-destination-5.jpg") center/cover}.destinations button:nth-child(6){background:linear-gradient(#0000,#0008),url("planner-destination-6.jpg") center/cover}.destinations .selected,.choices .selected,.travellers .selected{outline:3px solid #1478f2;outline-offset:1px}.other{display:flex;align-items:center;gap:8px;padding:0 11px;color:#1478f2}.other input{border:0;outline:0;width:100%;padding:12px}.field-label,label{display:block;font-size:12px;font-weight:800;margin-bottom:14px}.field-label input,label input{margin-top:7px}fieldset{border:0;padding:0;margin:18px 0}legend{font-size:12px;margin-bottom:9px}.choices{display:flex;gap:8px;flex-wrap:wrap}.choices button,.travellers button{border:1px solid #d7e4ef;background:#fff;border-radius:10px;padding:10px 14px;color:#4d6983;font-weight:750}.travellers{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.travellers button{min-height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:20px}.travellers b{font-size:12px}.step textarea{width:100%;margin-top:7px;border:1px solid #d7e4ef;border-radius:11px;padding:12px;resize:vertical}.phone{display:flex;padding:0;overflow:hidden;margin-top:7px}.phone b{padding:12px 10px;background:#f3f7fb}.phone input{border:0;outline:0;width:100%;padding:12px}.consent{font-size:11px;font-weight:500;color:#607995;display:flex;gap:7px}.consent input{margin:0;accent-color:#1478f2}.primary{border:0;border-radius:11px;padding:13px 20px;background:linear-gradient(135deg,#1478f2,#0c63d8);color:#fff;font-weight:800;box-shadow:0 10px 22px #1478f238}.next{float:right;margin-top:18px}nav{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.back{border:0;background:transparent;color:#4d6983;font-weight:750}.error{color:#b23d4b;font-size:12px;margin:8px 0;font-weight:700}footer{position:absolute;z-index:3;bottom:0;left:0;right:0;background:#062846ee;color:#fff;min-height:72px;padding:13px 4vw;display:flex;align-items:center;gap:45px;font-size:12px}footer span{display:flex;flex-direction:column}footer small{opacity:.7}footer strong{margin-left:auto;font-size:14px}.success{position:absolute;inset:0;z-index:10;background:#06284688;backdrop-filter:blur(7px);display:grid;place-items:center;padding:20px}.success[hidden]{display:none!important}.success-card{background:#fff;border-radius:26px;padding:36px;max-width:440px;text-align:center;box-shadow:0 30px 90px #0005}.check{width:55px;height:55px;border-radius:50%;background:#20b477;color:#fff;display:grid;place-items:center;margin:auto;font-size:29px}.success-card h2{font-size:29px;line-height:1.05}.success-card p{font-size:13px;line-height:1.5;color:#627b96}.reference{background:#eef7fd;padding:12px;border-radius:11px;margin:18px 0}.reference small,.reference b{display:block}.reference b{margin-top:3px}
@media(max-width:900px){.layout{height:auto;min-height:calc(100svh - 62px);grid-template-columns:1fr;padding:190px 12px 65px;overflow:visible}.hero-copy{display:none}.card{justify-self:center}.trust{display:none}footer span:not(:first-child){display:none}}
@media(min-width:901px){body{overflow:hidden}.planner{height:100svh}.planner-card{scrollbar-width:thin}}
@media(max-width:600px){.hero{background:linear-gradient(#ffffff00,#f4f8fc 45%),url("assets/images/planner-hero.jpg") center top/auto 390px no-repeat,#f4f8fc}.topbar{height:60px;color:#09284a;padding:9px 17px}.brand-mark{background:#eaf3fb}.brand b{font-size:12px}.brand small{font-size:9px}.layout{padding:185px 10px 14px}.card{padding:19px 15px;border-radius:22px}.steps{gap:3px}.steps span{min-width:43px;font-size:8px}.steps b{width:27px;height:27px}.step h2{font-size:21px}.destinations{gap:7px}.destinations button{height:70px}.travellers{gap:7px}footer{position:relative;min-height:50px;padding:11px 17px}footer strong{font-size:10px}}
