.planner-section{width:100%;padding:var(--section-y).75rem;background-color:var(--base-500);color:var(--base-100);position:relative}.planner-header{text-align:center;flex-direction:column;align-items:center;gap:.75rem;margin-bottom:3.5rem;display:flex}.planner-label{color:var(--base-100);opacity:.7}.planner-title{color:var(--base-100);font-size:clamp(2.5rem,5vw,4.5rem)}.planner-card-wrapper{width:100%;max-width:1100px;margin:0 auto}.planner-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141414d9;border:1px solid #ffffff1f;border-radius:.75rem;padding:3rem 3.5rem;position:relative;box-shadow:0 24px 70px #0009}.planner-steps-bar{border-bottom:1px solid #ffffff1a;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;margin-bottom:3rem;padding-bottom:2rem;display:grid;position:relative}.planner-step-indicator{opacity:.45;background:#ffffff05;border:1px solid #ffffff0d;border-radius:.35rem;align-items:center;gap:.75rem;min-width:0;padding:.65rem 1rem;transition:all .3s cubic-bezier(.33,1,.68,1);display:flex}.planner-step-indicator.active{opacity:1;color:#fff;background:#ffffff14;border-color:#ffffff4d;box-shadow:0 4px 15px #0003}.planner-step-indicator.completed{opacity:.85;color:var(--base-100);background:#2e6b3e26;border-color:#2e6b3e59}.planner-step-num{font-family:var(--font-dm-mono),monospace;color:var(--base-300);font-size:.8rem;font-weight:600}.planner-step-indicator.active .planner-step-num{color:#fff}.step-label-text{font-size:.85rem;font-family:var(--font-dm-mono),monospace;text-transform:uppercase;letter-spacing:.05em;overflow-wrap:break-word;min-width:0}.planner-step-content{flex-direction:column;min-height:380px;display:flex}.step-heading{color:var(--base-100);margin-bottom:.5rem;font-size:2.2rem;line-height:1.1}.step-subheading{color:var(--base-200);opacity:.7;margin-bottom:2.5rem;font-size:1.2rem}.planner-grid{gap:1.25rem;width:100%;margin-bottom:2.5rem;display:grid}.grid-destinations,.grid-experiences{grid-template-columns:repeat(2,1fr)}.planner-option-card{cursor:pointer;text-align:left;background:#ffffff08;border:1px solid #ffffff1a;border-radius:.5rem;align-items:center;gap:1.25rem;width:100%;padding:1.35rem 1.5rem;transition:all .3s cubic-bezier(.33,1,.68,1);display:flex}.planner-option-card:hover{background:#ffffff12;border-color:#ffffff59;transform:translateY(-2px)}.planner-option-card.selected{border-color:var(--base-300);background:#2e6b3e2e;box-shadow:0 8px 24px #2e6b3e33}.option-icon-wrapper{width:44px;height:44px;color:var(--base-100);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;transition:all .3s;display:flex}.planner-option-card.selected .option-icon-wrapper{background:var(--base-300);border-color:var(--base-300);color:#fff}.option-info{flex-direction:column;flex:1;gap:.2rem;display:flex}.option-name{font-family:var(--font-bellefair),serif;color:var(--base-100);font-size:1.3rem;line-height:1.2}.option-label{color:var(--base-200);opacity:.65;letter-spacing:.03em;font-size:.8rem}.option-desc{color:var(--base-200);opacity:.75;font-size:.95rem;line-height:1.35}.option-checkbox{width:28px;height:28px;color:var(--base-200);background:#ffffff0f;border:1px solid #ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;transition:all .3s;display:flex}.planner-option-card.selected .option-checkbox{background:var(--base-300);border-color:var(--base-300);color:#fff}.planner-form-group{flex-direction:column;gap:.65rem;margin-bottom:1.75rem;display:flex}.planner-form-row{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.input-label{color:var(--base-100);opacity:.85;letter-spacing:.05em;font-size:.85rem}.planner-input{width:100%;color:var(--base-100);background:#ffffff0a;border:1px solid #ffffff26;border-radius:.5rem;outline:none;padding:.95rem 1.25rem;font-family:inherit;font-size:1rem;transition:border-color .25s,background-color .25s}.planner-input:focus-visible{outline:2px solid var(--focus-ring-inverse);outline-offset:3px;border-radius:inherit}.planner-input option{color:#fff;background:#1a1a1a}.planner-input:focus{border-color:var(--base-100);background:#ffffff14}.duration-options{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.pill-btn{color:var(--base-200);cursor:pointer;text-align:center;background:#ffffff0a;border:1px solid #ffffff26;border-radius:.5rem;padding:.85rem 1.25rem;transition:all .25s}.pill-btn:hover{color:var(--base-100);border-color:#fff6}.pill-btn.active{border-color:var(--base-300);color:#fff;background:#2e6b3e33}.planner-submit-btn{background:var(--base-300);color:#fff;width:100%;font-family:var(--font-dm-mono),monospace;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.75rem;margin-top:1rem;padding:1.15rem;font-size:.95rem;font-weight:500;transition:all .3s;display:inline-flex}.planner-submit-btn:hover{background:#255832;transform:translateY(-1px)}.planner-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.planner-submit-error{color:#e0897d;background:#b43c321f;border:1px solid #b43c3259;border-radius:.5rem;margin-top:1rem;padding:.75rem 1rem}.planner-honeypot{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.planner-actions{border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-top:2.5rem;padding-top:1.75rem;display:flex}.planner-btn-primary{background:var(--base-100);color:var(--base-500);font-family:var(--font-dm-mono),monospace;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;border:none;border-radius:.5rem;align-items:center;gap:.65rem;margin-left:auto;padding:.85rem 2.25rem;font-size:.85rem;font-weight:600;transition:all .25s;display:inline-flex}.planner-btn-primary:disabled{opacity:.35;cursor:not-allowed}.planner-btn-primary:not(:disabled):hover{background:#fff;transform:translate(2px);box-shadow:0 4px 20px #fff3}.planner-btn-secondary{color:var(--base-200);cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:.5rem;align-items:center;gap:.5rem;padding:.85rem 1.75rem;transition:all .25s;display:inline-flex}.planner-btn-secondary:hover{color:var(--base-100);border-color:#ffffff80}.planner-success-card{text-align:center;flex-direction:column;align-items:center;padding:4rem 3rem;display:flex}.success-title{color:var(--base-100);margin:1rem 0 .75rem;font-size:2.5rem}.success-subtitle{color:var(--base-200);opacity:.85;max-width:580px;margin:0 auto 2.5rem;line-height:1.4}.success-summary{background:#ffffff08;border:1px solid #ffffff1f;border-radius:.5rem;grid-template-columns:repeat(3,1fr);gap:1.5rem;width:100%;margin-bottom:2.5rem;padding:1.75rem;display:grid}.summary-item{text-align:center;flex-direction:column;gap:.4rem;display:flex}@media (max-width:900px){.planner-card{padding:2rem 1.5rem}.planner-steps-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.grid-destinations,.grid-experiences{grid-template-columns:1fr}.duration-options{grid-template-columns:repeat(2,1fr)}.planner-form-row{grid-template-columns:1fr}}@media (max-width:600px){.planner-steps-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.step-label-text{font-size:.75rem}}
.plan-hero{background-color:var(--base-300);width:100%;height:100svh;color:var(--base-100);position:relative}.plan-hero .container{align-items:flex-end;width:100%;height:100%;display:flex}.plan-hero-header{width:90%;color:var(--base-100);text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.plan-hero-header h1{text-align:center;color:var(--base-100)}.plan-hero-header .subheader{color:var(--base-100);transform:translate(-6rem)}.plan-hero-footer{width:100%;color:var(--base-100);justify-content:space-between;margin:0 auto;padding:.75rem;display:flex}.plan-sticky{background-color:var(--base-200);width:100%;height:100svh;padding:.75rem;position:relative}.plan-sticky .container{background-color:var(--base-400);border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}div.pin-spacer:has(>.plan-sticky){background-color:var(--base-400)}.plan-sticky-header{text-align:center;white-space:nowrap;color:var(--base-100);will-change:transform,opacity;position:absolute;top:20%;left:50%;transform:translate(-50%,-50%)}.plan-card-container{perspective:1000px;will-change:width;width:80%;display:flex;position:relative;transform:translateY(30px)}.plan-card{aspect-ratio:5/7;transform-style:preserve-3d;transform-origin:top;flex:1;position:relative}#plan-card-1{border-radius:12px 0 0 12px}#plan-card-3{border-radius:0 12px 12px 0}.plan-card-front,.plan-card-back{border-radius:inherit;backface-visibility:hidden;width:100%;height:100%;position:absolute;overflow:hidden}.plan-card-back{text-align:center;justify-content:center;align-items:center;padding:2rem;display:flex;transform:rotateY(180deg)}#plan-card-1 .plan-card-back{background-color:var(--base-500);color:var(--base-100)}#plan-card-2 .plan-card-back{background-color:var(--base-300);color:var(--base-100)}#plan-card-3 .plan-card-back{background-color:var(--base-200);color:var(--base-500)}.plan-card-index{font-family:var(--font-dm-mono),monospace;text-transform:uppercase;opacity:.5;font-size:.8rem;position:absolute;top:1.5rem;left:1.5rem}.plan-card-info{flex-direction:column;gap:6rem;display:flex}.plan-card-info .mono{opacity:.6}.plan-card-block{flex-direction:column;gap:.25rem;display:flex}@media (max-width:1000px){.plan-hero-header .subheader{transform:translate(0)}.plan-sticky{height:auto;padding:0;overflow:visible}.plan-sticky .container{border-radius:0;gap:2rem;height:auto;padding:8rem .75rem}.plan-sticky-header{will-change:auto;position:relative;top:auto;left:auto;transform:none}.plan-card-container{perspective:none;will-change:auto;flex-direction:column;gap:1rem;width:100%;transform:none}.plan-card{aspect-ratio:1;transform-style:flat;transform-origin:50%;border-radius:12px;flex:none}#plan-card-1,#plan-card-2,#plan-card-3{border-radius:12px}.plan-card-front{display:none}.plan-card-back{padding:1.5rem;transform:none}.plan-card-info{gap:2rem}}
