:root{--bg:#f8f3ec;--card:#fffdf9;--line:#eadfce;--accent:#c34b31;--accent2:#a83b28;--text:#2d2925;--muted:#716a63;--green:#2b8551;--shadow:0 14px 40px rgba(77,50,26,.10);--serif:Georgia,"Times New Roman",serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--text);background:linear-gradient(180deg,#fcfaf6,#f5eee5)}button{font:inherit}.planner-page{min-height:100vh;display:grid;place-items:center;padding:18px}.planner-shell{width:min(880px,100%);height:min(790px,calc(100vh - 36px));min-height:620px;background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column}.planner-header{padding:14px 24px 12px;border-bottom:1px solid var(--line);background:rgba(255,253,249,.96);flex:0 0 auto}.planner-brand{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--text);font-weight:800}.planner-brand__icon{font-size:1.35rem}.beta-badge{display:inline-block;margin-left:6px;padding:3px 7px;border-radius:999px;background:#f4e4dc;color:var(--accent);font-size:.65rem;text-transform:uppercase}.progress-region{margin-top:10px}.progress-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.76rem;font-weight:700;margin-bottom:5px}.progress-track{height:5px;background:#eee4d8;border-radius:999px;overflow:hidden}.progress-bar{height:100%;width:0;background:var(--accent);transition:width .3s}.planner-app{flex:1;min-height:0}.planner-screen{height:100%;display:flex;flex-direction:column;animation:fade .25s ease}.planner-screen__content{flex:1;min-height:0;overflow:auto;padding:24px 34px 18px}.planner-screen.is-leaving-forward{animation:leaveL .16s ease forwards}.planner-screen.is-leaving-back{animation:leaveR .16s ease forwards}@keyframes fade{from{opacity:0;transform:translateY(8px)}}@keyframes leaveL{to{opacity:0;transform:translateX(-18px)}}@keyframes leaveR{to{opacity:0;transform:translateX(18px)}}.eyebrow{margin:0 0 5px;color:var(--accent);font-size:.73rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.planner-title{margin:0;text-align:center;font-family:var(--serif);font-size:clamp(1.7rem,4vw,2.45rem);line-height:1.15}.planner-subtitle{max-width:620px;margin:7px auto 18px;text-align:center;color:var(--muted);font-size:.92rem;line-height:1.5}.validation-message{min-height:18px;margin:12px 0 0;color:var(--accent2);text-align:center;font-size:.82rem;font-weight:700}.validation-message.is-visible{padding:8px;background:#fff2ec;border-radius:9px}.planner-actions{display:flex;justify-content:space-between;gap:12px;padding:12px 24px;border-top:1px solid var(--line);background:#fffdfa;flex:0 0 auto}.button{min-height:44px;padding:10px 18px;border:1px solid transparent;border-radius:9px;cursor:pointer;font-weight:800;transition:.18s}.button:hover{transform:translateY(-1px)}.button--primary{margin-left:auto;color:#fff;background:linear-gradient(180deg,#ce573b,#b73f28)}.button--secondary{color:var(--accent);background:#fff;border-color:#d9b2a6}.button--ghost{color:var(--muted);background:transparent}.planner-screen--welcome{display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}.welcome-hero{position:relative;min-height:0;overflow:hidden}.welcome-hero__image{width:100%;height:100%;object-fit:cover}.welcome-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,250,244,.98) 0%,rgba(255,250,244,.8) 50%,rgba(255,250,244,.12) 100%)}.welcome-brand{position:absolute;top:25px;left:28px;display:flex;align-items:center;gap:8px}.welcome-brand>span{font-size:2rem}.welcome-brand strong{display:block;font:700 1.35rem var(--serif)}.welcome-brand small{font-size:.61rem;font-weight:800;letter-spacing:.12em}.welcome-copy{position:absolute;left:28px;right:22px;top:28%;}.welcome-copy h1{margin:0;font:700 clamp(2.2rem,5vw,4rem)/1.02 var(--serif);letter-spacing:-.04em}.welcome-copy h1 span{color:var(--accent)}.welcome-copy p{max-width:330px;font-size:.95rem;line-height:1.55}.welcome-body{display:flex;flex-direction:column;justify-content:center;padding:28px 30px;background:#fffdfa}.welcome-points{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.welcome-points>div{min-width:0;padding:14px 8px;text-align:center;border:1px solid var(--line);border-radius:12px;background:#fff}.welcome-points span{display:grid;width:34px;height:34px;margin:0 auto 8px;place-items:center;border-radius:50%;background:#fff0ea;color:var(--accent)}.welcome-points strong{display:block;font:700 .9rem var(--serif)}.welcome-points small{display:block;margin-top:5px;color:var(--muted);font-size:.68rem;line-height:1.35}.welcome-start{width:100%;margin:16px 0 0;min-height:50px}.welcome-note,.welcome-later{margin:9px auto 0;border:0;background:none;color:var(--muted);font-size:.73rem;text-align:center}.welcome-later{cursor:pointer}.stack-choices{display:grid;gap:11px;max-width:650px;margin:18px auto 0}.image-choice,.text-choice{position:relative;width:100%;display:flex;align-items:center;gap:15px;padding:10px 16px 10px 10px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:13px;cursor:pointer;box-shadow:0 4px 14px rgba(78,50,25,.04);transition:.18s}.image-choice:hover,.text-choice:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(78,50,25,.08)}.image-choice.is-selected,.text-choice.is-selected,.row-choice.is-selected,.pace-card.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px rgba(195,75,49,.1)}.image-choice img{width:66px;height:58px;object-fit:cover;border-radius:50%}.image-choice__copy{flex:1}.image-choice strong,.text-choice strong{display:block;font:700 1.02rem var(--serif)}.image-choice small,.text-choice small{display:block;margin-top:3px;color:var(--muted);font-size:.78rem}.image-choice>b,.text-choice>b{font-size:1.5rem;font-weight:400}.image-choice em{font-style:normal;font-size:.65rem;color:var(--accent);background:#f8e8e1;border-radius:999px;padding:4px 7px}.is-disabled{opacity:.62;cursor:not-allowed!important}.country-list .image-choice img{border-radius:10px}.destination-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:730px;margin:18px auto 0}.destination-card{position:relative;padding:0 0 9px;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:11px;cursor:pointer}.destination-card img{width:100%;height:96px;display:block;object-fit:cover}.destination-card strong{display:block;margin-top:7px;font:700 .92rem var(--serif)}.destination-card em{position:absolute;top:7px;right:7px;padding:4px 6px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--accent);font-size:.57rem;font-style:normal}.destination-card.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px rgba(195,75,49,.12)}.row-choice-list{display:grid;gap:10px;max-width:620px;margin:18px auto 0}.row-choice{display:grid;grid-template-columns:48px 1fr 22px;align-items:center;gap:10px;width:100%;padding:11px 14px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:11px;cursor:pointer}.calendar-icon{display:grid;width:36px;height:36px;place-items:center;border:2px solid #79ab87;border-radius:6px;color:#277645;font-weight:900}.row-choice.is-selected .calendar-icon{border-color:var(--accent);color:var(--accent);background:#fff0ea}.row-choice strong{display:block;font:700 .92rem var(--serif)}.row-choice small{display:block;color:var(--muted);font-size:.74rem;margin-top:2px}.row-choice i{width:18px;height:18px;border:1px solid #cfc3b7;border-radius:50%}.row-choice.is-selected i{border:5px solid var(--accent)}.compact-stack{max-width:620px}.text-choice>span{display:grid;width:46px;height:46px;place-items:center;border-radius:50%;background:#f8efe7;font-size:1.3rem}.text-choice>div{flex:1}.chip-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;max-width:720px;margin:22px auto 0}.choice-chip{padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;cursor:pointer;font-size:.78rem;font-weight:700}.choice-chip span{margin-right:5px}.choice-chip.is-selected{color:#fff;background:var(--accent);border-color:var(--accent)}.selection-status{margin:18px auto 0;max-width:260px;text-align:center;color:var(--muted);font-size:.78rem}.selection-status>div{height:5px;margin-top:7px;overflow:hidden;background:#eee4d8;border-radius:999px}.selection-status i{display:block;height:100%;background:var(--accent);transition:.2s}.avoid-grid{max-width:680px}.owl-tip{display:flex;align-items:center;gap:10px;max-width:520px;margin:22px auto 0;padding:12px 15px;background:#f8f3ec;border-radius:12px}.owl-tip p{margin:0;color:var(--muted);font-size:.78rem}.pace-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:700px;margin:24px auto 0}.pace-card{padding:22px 14px;background:#fff;border:1px solid var(--line);border-radius:13px;cursor:pointer;text-align:center}.pace-card span{display:block;font-size:1.7rem}.pace-card strong{display:block;margin:9px 0 5px;font:700 1rem var(--serif)}.pace-card small{color:var(--muted);font-size:.73rem}.loading-content{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.loading-owl{font-size:4.4rem;animation:bob 1.2s ease-in-out infinite}@keyframes bob{50%{transform:translateY(-7px)}}.loading-content h1{font:700 1.6rem var(--serif)}.bird-path{color:var(--accent);letter-spacing:8px;animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.35}}.loading-content ul{list-style:none;padding:0;text-align:left;line-height:2}.loading-content li:before{content:'○';margin-right:10px;color:#aaa}.loading-content li.done:before{content:'✓';color:var(--green)}.loading-content li.working:before{content:'◌';color:var(--accent)}.loading-landscape{position:absolute;bottom:-55px;width:100%;height:180px;background:radial-gradient(circle at 20% 100%,#d7e0ce 0 18%,transparent 19%),radial-gradient(circle at 70% 100%,#e5d7c2 0 28%,transparent 29%);opacity:.55}.planner-screen--results .planner-screen__content{padding-bottom:30px}.hero-result{display:grid;grid-template-columns:1fr 1.15fr;max-width:700px;margin:20px auto;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.hero-result__image{position:relative}.hero-result__image img{width:100%;height:100%;min-height:210px;object-fit:cover}.hero-result__image span{position:absolute;top:10px;left:10px;padding:5px 8px;background:#fff7df;border-radius:6px;font-size:.68rem;font-weight:800}.hero-result__copy{position:relative;padding:22px}.hero-result__copy h2{font:700 1.5rem var(--serif);margin:0 0 8px}.hero-result__copy p{color:var(--muted);font-size:.82rem;line-height:1.55}.match-circle{position:absolute;top:15px;right:15px;width:58px;height:58px;display:grid;place-items:center;border:3px solid #37a05c;border-radius:50%;color:#268048;font-weight:900}.match-circle small{font-size:.55rem;margin-top:-14px}.tag-row{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:12px}.tag-row span{padding:4px 7px;border-radius:5px;background:#f2eee8;font-size:.58rem}.comparison-card{display:grid;grid-template-columns:1fr 28px 1fr;align-items:center;gap:10px;max-width:700px;margin:14px auto;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff}.comparison-card>div{display:grid;grid-template-columns:72px 1fr;column-gap:10px}.comparison-card img{grid-row:1/5;width:72px;height:65px;object-fit:cover;border-radius:8px}.comparison-card small{color:var(--accent);font-size:.61rem;font-weight:800}.comparison-card strong{font:700 .88rem var(--serif)}.comparison-card p{margin:2px 0;color:var(--muted);font-size:.65rem}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:700px;margin:14px auto}.result-stats div{padding:12px;text-align:center;background:var(--bg);border-radius:10px}.result-stats strong{display:block;color:var(--accent);font-size:1.2rem}.result-stats small{font-size:.65rem;color:var(--muted)}.result-section{max-width:700px;margin:28px auto}.result-section h2{font:700 1.35rem var(--serif)}.recommendation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.recommendation-card{padding:14px;background:#fff;border:1px solid var(--line);border-radius:11px}.recommendation-card>div{display:flex;justify-content:space-between;color:var(--accent);font-size:.64rem}.recommendation-card h3{margin:8px 0 5px;font:700 1rem var(--serif)}.recommendation-card p{color:var(--muted);font-size:.72rem;line-height:1.45}.recommendation-card>small{font-size:.65rem}.itinerary-list{display:grid;gap:12px}.itinerary-day{padding:15px;background:#fff;border:1px solid var(--line);border-radius:12px}.itinerary-day header{display:flex;justify-content:space-between}.itinerary-day h3{margin:2px 0 10px;font:700 1rem var(--serif)}.timeline-row{display:grid;grid-template-columns:52px 16px 1fr;align-items:center;padding:7px 0}.timeline-row time{font-size:.68rem;color:var(--muted)}.timeline-row i{width:8px;height:8px;background:var(--accent);border-radius:50%}.timeline-row strong{display:block;font-size:.8rem}.timeline-row small{display:block;color:var(--muted);font-size:.65rem}.itinerary-day>p{margin:10px 0 0;padding:9px;background:var(--bg);font-size:.68rem;color:var(--muted);border-radius:8px}.feedback-box{max-width:700px;margin:25px auto;padding:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--bg);border-radius:12px}.feedback-box>div{flex:1;min-width:230px}.feedback-box h2{margin:0;font:700 1.05rem var(--serif)}.feedback-box p{margin:4px 0;color:var(--muted);font-size:.72rem}.result-tools{max-width:700px;margin:0 auto;display:flex;gap:8px}@media(max-width:720px){.planner-page{padding:0}.planner-shell{height:100svh;min-height:600px;border-radius:0;border:0}.planner-header{padding:10px 14px}.planner-screen__content{padding:20px 16px 14px}.planner-screen--welcome{display:flex}.welcome-hero{height:48%;min-height:300px}.welcome-body{height:52%;padding:14px 16px}.welcome-copy{top:30%;left:20px}.welcome-copy h1{font-size:2.45rem}.welcome-points{gap:6px}.welcome-points>div{padding:10px 4px}.welcome-points small{font-size:.6rem}.destination-grid{grid-template-columns:repeat(2,1fr)}.destination-card img{height:82px}.pace-grid{grid-template-columns:1fr}.hero-result{grid-template-columns:1fr}.hero-result__image img{height:170px;min-height:0}.comparison-card{grid-template-columns:1fr}.comparison-card>b{transform:rotate(90deg);text-align:center}.recommendation-grid{grid-template-columns:1fr}.planner-actions{padding:10px 14px}.result-stats{grid-template-columns:1fr 1fr}.result-stats div:last-child{grid-column:1/-1}}@media(max-height:700px) and (min-width:721px){.planner-shell{height:calc(100vh - 20px)}.planner-page{padding:10px}.welcome-copy h1{font-size:2.8rem}.welcome-points>div{padding:10px 6px}.welcome-body{padding:18px}.welcome-start{min-height:44px}.planner-screen__content{padding-top:18px}.destination-card img{height:78px}}@media print{.planner-header,.planner-actions,.result-tools,.feedback-box{display:none!important}.planner-shell{height:auto;box-shadow:none;border:0}.planner-screen__content{overflow:visible}.planner-page{display:block;padding:0}}


/* Beta 1.1.1 usability refinements */
.planner-screen--welcome{display:block;background:#fffdfa;overflow:hidden}
.welcome-stage{position:relative;height:100%;min-height:0;overflow:hidden;background:#fffaf4}
.welcome-stage__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 44%}
.welcome-stage__wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,250,244,.98) 0%,rgba(255,250,244,.93) 43%,rgba(255,250,244,.58) 72%,rgba(255,250,244,.20) 100%)}
.welcome-stage__content{position:relative;z-index:1;width:min(520px,64%);height:100%;display:flex;flex-direction:column;justify-content:center;padding:28px 30px}
.welcome-brand{position:static;margin-bottom:28px}.welcome-copy{position:static}.welcome-copy h1{font-size:clamp(2.65rem,5vw,4.25rem)}.welcome-copy p{max-width:430px;margin:14px 0 20px;font-size:.94rem}
.welcome-points{width:100%;gap:9px}.welcome-points>div{padding:12px 7px}.welcome-points strong{font-size:.83rem}.welcome-points small{font-size:.63rem}
.welcome-start{margin-top:14px;min-height:48px}.welcome-note{margin-top:8px}.welcome-saved{display:flex;justify-content:center;gap:12px}
.graphic-choice{position:relative;width:100%;display:flex;align-items:center;gap:15px;padding:13px 16px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:13px;cursor:pointer;box-shadow:0 4px 14px rgba(78,50,25,.04);transition:.18s}.graphic-choice:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(78,50,25,.08)}.graphic-choice.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px rgba(195,75,49,.1)}.graphic-choice__icon{display:grid;place-items:center;width:66px;height:58px;flex:0 0 66px;border-radius:50%;background:linear-gradient(145deg,#e7f0ef,#f7e8df);font-size:1.8rem}.graphic-choice>b{font-size:1.5rem;font-weight:400}.graphic-choice em{font-style:normal;font-size:.65rem;color:var(--accent);background:#f8e8e1;border-radius:999px;padding:4px 7px}
.interest-grid{gap:12px;max-width:760px}.interest-grid .choice-chip{min-height:46px;padding:12px 17px;font-size:.84rem}.interest-grid .choice-chip span{font-size:1rem}
.avoid-grid{gap:12px;max-width:740px}.avoid-grid .choice-chip{min-height:48px;padding:13px 18px;font-size:.84rem}.avoid-grid .choice-chip span{font-size:1rem}
.hero-result__image span{display:none}
@media(max-width:720px){.welcome-stage__content{width:100%;padding:22px 18px;background:linear-gradient(90deg,rgba(255,250,244,.96),rgba(255,250,244,.78))}.welcome-stage__image{object-position:66% center}.welcome-brand{margin-bottom:18px}.welcome-copy h1{font-size:2.65rem}.welcome-copy p{margin:10px 0 14px}.welcome-points>div{padding:10px 5px}.welcome-start{margin-top:12px}.interest-grid .choice-chip,.avoid-grid .choice-chip{min-height:44px;padding:11px 14px}}
@media(max-height:700px) and (min-width:721px){.welcome-stage__content{padding:18px 28px}.welcome-brand{margin-bottom:14px}.welcome-copy h1{font-size:2.8rem}.welcome-copy p{margin:8px 0 12px}.welcome-points>div{padding:9px 6px}.welcome-start{margin-top:10px}}

/* Beta 1.1.2 visual cleanup */
.welcome-stage{background:linear-gradient(135deg,#fffaf4 0%,#f8efe5 58%,#f1dfd0 100%)}
.welcome-stage__art{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.welcome-sun{position:absolute;right:13%;top:12%;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#ffd7be 0%,#f7bf9f 42%,rgba(247,191,159,0) 70%);opacity:.72}
.welcome-mountain{position:absolute;right:-4%;bottom:10%;width:58%;height:48%;clip-path:polygon(50% 0,100% 100%,0 100%)}
.welcome-mountain--back{background:linear-gradient(155deg,#e9d7ca,#d8bca9);opacity:.65;transform:translateX(-16%)}
.welcome-mountain--front{background:linear-gradient(155deg,#d8b6a1,#b98e77);opacity:.5}
.welcome-city{position:absolute;right:0;bottom:0;width:48%;height:26%;opacity:.18;background:repeating-linear-gradient(90deg,#8d6958 0 18px,transparent 18px 28px),linear-gradient(180deg,transparent 0 40%,#8d6958 40% 100%);clip-path:polygon(0 45%,8% 45%,8% 18%,16% 18%,16% 57%,24% 57%,24% 5%,32% 5%,32% 52%,41% 52%,41% 28%,49% 28%,49% 62%,60% 62%,60% 10%,70% 10%,70% 50%,81% 50%,81% 32%,90% 32%,90% 68%,100% 68%,100% 100%,0 100%)}
.welcome-stage__wash{background:linear-gradient(90deg,rgba(255,250,244,.98) 0%,rgba(255,250,244,.94) 46%,rgba(255,250,244,.58) 74%,rgba(255,250,244,.18) 100%)}
.graphic-choice__icon{overflow:hidden;background:#f5eee7;border:1px solid #eee1d6}
.graphic-choice__icon img{width:100%;height:100%;object-fit:cover;display:block}
.graphic-choice__copy{flex:1;min-width:0;display:block}
.graphic-choice__copy strong{display:block;margin:0 0 4px;font:700 1.02rem var(--serif);line-height:1.2}
.graphic-choice__copy small{display:block;color:var(--muted);font-size:.78rem;line-height:1.4}
.hero-result__image{background:#f2e8df;overflow:hidden}
.hero-result__image img{width:100%;height:100%;object-fit:cover;display:block;image-rendering:auto}
.comparison-card{grid-template-columns:1fr 28px 1fr;padding:14px;gap:12px}
.comparison-card>div{display:block}
.comparison-option{display:grid!important;grid-template-columns:42px 1fr!important;align-items:center;gap:11px;min-width:0;padding:10px 12px;border-radius:11px}
.comparison-option--skip{background:#fff4ef}
.comparison-option--instead{background:#f1f8f3}
.comparison-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;font-weight:900;font-size:1.15rem}
.comparison-option--skip .comparison-icon{background:#f8ddd3;color:var(--accent)}
.comparison-option--instead .comparison-icon{background:#dcefe2;color:var(--green)}
.comparison-option small,.comparison-option strong,.comparison-option p{display:block}
.comparison-option strong{margin-top:2px;font:700 .93rem var(--serif);line-height:1.2}
.comparison-option p{margin:4px 0 0;color:var(--muted);font-size:.68rem;line-height:1.35}
@media(max-width:720px){.welcome-stage__art{opacity:.7}.welcome-mountain{width:90%;right:-25%}.welcome-city{width:70%}.comparison-card{grid-template-columns:1fr}.comparison-card>b{transform:rotate(90deg)} }

/* Day 1 — final welcome screen */
.planner-screen--welcome{display:block;background:#fffdf9;overflow:hidden}
.welcome-final{height:100%;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(310px,.98fr);gap:0;background:#fffdf9}
.welcome-final__content{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:26px 30px 24px}
.welcome-final__brand{display:flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--text)}
.welcome-final__brand-icon{display:grid;width:42px;height:42px;place-items:center;font-size:2rem;line-height:1;background:#fff3e9;border:1px solid #efd7c4;border-radius:13px;box-shadow:0 4px 12px rgba(91,57,31,.07)}
.welcome-final__brand strong{display:block;font:700 1.2rem var(--serif);line-height:1.05}
.welcome-final__brand small{display:block;margin-top:3px;font-size:.59rem;font-weight:800;letter-spacing:.13em;color:var(--accent)}
.welcome-final__eyebrow{margin:0 0 7px;color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.welcome-final h1{margin:0;max-width:500px;font:700 clamp(2.15rem,4.5vw,3.55rem)/1.02 var(--serif);letter-spacing:-.035em;color:#292521}
.welcome-final h1 span{color:var(--accent)}
.welcome-final__intro{max-width:510px;margin:13px 0 18px;color:#4f4943;font-size:.9rem;line-height:1.55}
.welcome-final__benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.welcome-final__benefit{min-width:0;padding:12px 9px 11px;text-align:center;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 5px 15px rgba(77,50,26,.04)}
.welcome-final__benefit-icon{display:grid;width:34px;height:34px;margin:0 auto 7px;place-items:center;border-radius:50%;background:#fff0ea;font-size:1rem}
.welcome-final__benefit strong{display:block;font:700 .82rem/1.15 var(--serif)}
.welcome-final__benefit small{display:block;margin-top:5px;color:var(--muted);font-size:.62rem;line-height:1.32}
.welcome-final__cta{width:100%;min-height:50px;margin:14px 0 0;border-radius:12px;font-size:.95rem;box-shadow:0 7px 18px rgba(183,63,40,.17)}
.welcome-final__privacy{margin:8px 0 0;text-align:center;color:var(--muted);font-size:.66rem}
.welcome-final__saved{display:flex;justify-content:center;gap:16px;margin-top:7px}
.welcome-final__saved button{border:0;background:transparent;color:var(--muted);font-size:.67rem;cursor:pointer}
.welcome-final__visual{min-width:0;padding:18px 18px 18px 0}
.welcome-final__photo{position:relative;width:100%;height:100%;overflow:hidden;border-radius:18px;background:#eadfce;box-shadow:0 10px 28px rgba(77,50,26,.10)}
.welcome-final__photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 48%}
.welcome-final__photo:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);border-radius:inherit;pointer-events:none}
@media(max-width:720px){.welcome-final{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 32%}.welcome-final__content{padding:17px 16px 12px;justify-content:flex-start}.welcome-final__brand{margin-bottom:10px}.welcome-final__eyebrow{margin-bottom:4px}.welcome-final h1{font-size:2.1rem}.welcome-final__intro{margin:8px 0 11px;font-size:.79rem}.welcome-final__benefits{gap:6px}.welcome-final__benefit{padding:8px 4px}.welcome-final__benefit-icon{width:30px;height:30px;margin-bottom:5px}.welcome-final__benefit strong{font-size:.72rem}.welcome-final__benefit small{font-size:.55rem}.welcome-final__cta{min-height:45px;margin-top:10px}.welcome-final__visual{padding:0 16px 14px}.welcome-final__photo{border-radius:14px}.welcome-final__photo img{object-position:center 43%}}
@media(max-height:700px) and (min-width:721px){.welcome-final__content{padding:18px 26px}.welcome-final__brand{margin-bottom:10px}.welcome-final h1{font-size:2.55rem}.welcome-final__intro{margin:8px 0 11px}.welcome-final__benefit{padding:8px 6px}.welcome-final__cta{min-height:44px;margin-top:10px}.welcome-final__visual{padding:12px 12px 12px 0}}

/* Welcome Screen FINAL fix — preserve 3-card desktop/tablet row */
.welcome-final__benefits{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
}
.welcome-final__benefit{
  min-width:0 !important;
  padding:12px 7px 11px !important;
}
.welcome-final__benefit-icon{
  width:40px !important;
  height:40px !important;
  margin:0 auto 8px !important;
  background:#fff4eb !important;
  color:#a84834 !important;
  border:1px solid #efd9c8 !important;
  filter:grayscale(1) sepia(.65) saturate(1.35) hue-rotate(330deg) !important;
}
.welcome-final__benefit h3{
  font-size:13px !important;
  line-height:1.08 !important;
  margin:0 0 6px !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
.welcome-final__benefit p{
  font-size:10px !important;
  line-height:1.35 !important;
  margin:0 !important;
}
.welcome-final__privacy,
.welcome-final__resume{font-size:10px !important}
@media (max-width:560px){
  .welcome-final__grid{grid-template-columns:1fr !important}
  .welcome-final__benefits{grid-template-columns:1fr !important}
}

/* Welcome final micro-fix — 1.1.3-beta.4 */
.welcome-final__benefit h3{
  padding-left:3px !important;
  padding-right:3px !important;
  text-align:center !important;
  max-width:100% !important;
}
.welcome-final__benefit{
  overflow:hidden !important;
}


/* =========================================================
   WELCOME — EMBEDDED WIDTH RESPONSIVENESS
   1.1.3-beta.5
   Responds to the planner container, not the browser viewport.
   ========================================================= */

#tosp-app,
.tosp-app,
.travel-owl-smart-planner{
  container-type:inline-size;
}

/* Normal embedded desktop / sidebar layout */
@container (max-width: 760px){
  .welcome-final__grid{
    grid-template-columns:minmax(0,1fr) minmax(270px,.96fr) !important;
    gap:20px !important;
  }

  .welcome-final__content{
    min-width:0 !important;
  }

  .welcome-final__benefits{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:7px !important;
  }

  .welcome-final__benefit{
    min-width:0 !important;
    padding:12px 5px 11px !important;
  }

  .welcome-final__benefit h3{
    font-size:12.5px !important;
    line-height:1.06 !important;
    padding:0 1px !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }

  .welcome-final__benefit p{
    font-size:9.5px !important;
    line-height:1.34 !important;
  }

  .welcome-final__benefit-icon{
    width:38px !important;
    height:38px !important;
  }

  .welcome-final__title{
    font-size:clamp(30px,5.2cqw,42px) !important;
    line-height:.98 !important;
  }

  .welcome-final__intro{
    font-size:13px !important;
    line-height:1.65 !important;
  }
}

/* At the narrower widths where 3 mini-cards genuinely stop being elegant,
   change the benefit area rather than squeezing words against borders. */
@container (max-width: 650px){
  .welcome-final__grid{
    grid-template-columns:minmax(0,1fr) minmax(250px,.9fr) !important;
    gap:16px !important;
  }

  .welcome-final__benefits{
    grid-template-columns:1fr !important;
    gap:7px !important;
  }

  .welcome-final__benefit{
    display:grid !important;
    grid-template-columns:38px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    column-gap:10px !important;
    text-align:left !important;
    padding:9px 11px !important;
  }

  .welcome-final__benefit-icon{
    grid-row:1 / span 2 !important;
    margin:0 !important;
    align-self:center !important;
  }

  .welcome-final__benefit h3{
    text-align:left !important;
    font-size:12px !important;
    margin:0 0 2px !important;
    padding:0 !important;
  }

  .welcome-final__benefit p{
    text-align:left !important;
    font-size:9.5px !important;
  }
}

/* Phone / genuinely narrow embed: photo moves below the content. */
@container (max-width: 540px){
  .welcome-final__grid{
    grid-template-columns:1fr !important;
  }

  .welcome-final__media{
    min-height:280px !important;
  }

  .welcome-final__benefits{
    grid-template-columns:1fr !important;
  }
}

/* 1.1.3-beta.6 — simple third benefit-card text centering */
.welcome-final__benefit:nth-child(3) h3{
  box-sizing:border-box !important;
  width:100% !important;
  max-width:100% !important;
  padding-left:8px !important;
  padding-right:8px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
