:root{--ink:#142850;--ink-soft:#1d3661;--paper:#faf9f5;--paper-dim:#efebdf;--moss:#c9a227;--moss-bright:#dcb94a;--moss-deep:#1d3661;--text-on-ink:#fff;--text-on-ink-dim:#a9b4c8;--text-dim:#5b6b84;--line-on-ink:hsla(0,0%,100%,.14);--line:rgba(20,40,80,.12)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--ink);color:var(--text-on-ink);font-family:Inter,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:Space Grotesk,sans-serif;font-weight:500;margin:0;letter-spacing:-.01em}.mono{font-family:JetBrains Mono,monospace}p{margin:0}a{color:inherit}button{font-family:inherit;cursor:pointer}.wrap{padding:0 28px}.wrap,nav{max-width:1040px;margin:0 auto}nav{display:flex;justify-content:space-between;align-items:center;padding:26px 28px}.logo{font-family:Space Grotesk,sans-serif;font-size:22px;font-weight:600;letter-spacing:.01em}.logo span{color:var(--moss-bright)}.nav-cta{background:transparent;border:1px solid var(--line-on-ink);color:var(--text-on-ink);padding:10px 20px;border-radius:100px;font-size:14px}.nav-cta:hover{border-color:var(--moss);background:hsla(92,27%,57%,.1)}.hero{padding:64px 0 80px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:56px;gap:56px;align-items:center}@media(max-width:860px){.hero-grid{grid-template-columns:1fr;gap:36px}}.hero-content{max-width:none}.hero-eyebrow{color:var(--moss-bright);font-size:14px;margin-bottom:18px;display:flex;align-items:center;gap:10px}.hero-eyebrow .dash{width:24px;height:1px;background:var(--moss-bright)}.hero h1{font-size:clamp(36px,5.4vw,60px);line-height:1.05;max-width:15ch;margin-bottom:26px}.hero-sub{font-size:18px;color:var(--text-on-ink-dim);max-width:46ch;margin-bottom:38px}.btn-primary{background:var(--moss);color:var(--ink);border:none;padding:15px 30px;border-radius:100px;font-size:15px;font-weight:600}.btn-primary:hover{background:var(--moss-bright)}.hero-cinematic{min-height:92vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 28px;gap:40px}.hero-cinematic-line{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:clamp(28px,4.6vw,52px);line-height:1.25;max-width:32ch;color:var(--text-on-ink)}.hero-cinematic .btn-primary{font-size:16px;padding:17px 34px}.scroll-hint{font-size:13px;color:var(--text-on-ink-dim);letter-spacing:.04em}.story-section{padding:100px 28px;max-width:680px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:34px}.story-text{font-family:Space Grotesk,sans-serif;font-weight:500;font-size:clamp(20px,2.6vw,26px);line-height:1.55;color:var(--text-on-ink)}.story-cta{font-size:17px;color:var(--text-on-ink-dim);max-width:34ch}.final-cta-section{padding:60px 28px 100px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:28px}.section-title{font-size:clamp(24px,3.2vw,32px);text-align:center;margin-bottom:44px;color:var(--text-on-ink)}.how-section{padding:70px 28px}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:2px;gap:2px;background:var(--line-on-ink);border-radius:14px;overflow:hidden;max-width:1040px;margin:0 auto}@media(max-width:760px){.how-grid{grid-template-columns:1fr}}.how-card{background:var(--ink-soft);padding:32px 26px}.how-num{font-family:JetBrains Mono,monospace;color:var(--moss-bright);font-size:13px;margin-bottom:14px}.how-card h3{font-size:18px;margin-bottom:10px;font-weight:500}.how-card p{font-size:14px;color:var(--text-on-ink-dim)}.stats-bar{background:var(--paper);color:var(--ink);padding:56px 0}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;text-align:center}@media(max-width:640px){.stats-grid{grid-template-columns:1fr;gap:32px}}.stat-num{font-family:Space Grotesk,sans-serif;font-size:clamp(34px,5vw,50px);font-weight:600;color:var(--moss-deep)}.stat-label{font-size:13px;color:var(--text-dim);letter-spacing:.02em;margin-top:6px}.styles-section{padding:70px 28px;max-width:760px;text-align:center}.styles-lead{font-family:Space Grotesk,sans-serif;font-weight:500;font-size:clamp(19px,2.4vw,24px);line-height:1.5;color:var(--text-on-ink);margin-bottom:30px}.styles-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.style-pill{background:var(--ink-soft);border:1px solid var(--line-on-ink);border-radius:100px;padding:10px 20px;font-size:14px;color:var(--text-on-ink-dim)}.benefits-section{padding:20px 28px 80px}.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:22px;gap:22px}@media(max-width:760px){.benefits-grid{grid-template-columns:1fr}}.benefit-card{text-align:center;padding:8px 12px}.benefit-icon{font-size:30px;margin-bottom:16px}.benefit-card h4{font-size:17px;margin-bottom:10px;font-weight:500}.benefit-card p{font-size:14px;color:var(--text-on-ink-dim);line-height:1.55}.faq-section{padding:20px 28px 90px;max-width:760px}.faq-list{display:flex;flex-direction:column;gap:2px}.faq-item{background:var(--ink-soft);border-radius:10px;padding:18px 22px}.faq-item summary{cursor:pointer;font-size:15px;font-weight:500;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";float:right;color:var(--moss-bright);font-size:18px}.faq-item[open] summary:after{content:"−"}.faq-item p{font-size:14px;margin-top:14px;line-height:1.6}.faq-item p,.hero-hint{color:var(--text-on-ink-dim)}.hero-hint{font-size:13px;margin-left:16px}.ticket-preview{background:var(--paper);color:var(--ink);border-radius:14px;display:flex;overflow:hidden;box-shadow:0 30px 60px -25px rgba(0,0,0,.5);width:100%}.ticket-preview .stub-main{flex:1 1;padding:26px 28px}.ticket-preview .stub-side{width:120px;border-left:1.5px dashed rgba(20,40,80,.2);padding:26px 16px;display:flex;flex-direction:column;justify-content:space-between;background:var(--paper-dim)}.ticket-route{font-family:Space Grotesk,sans-serif;font-size:22px;margin-bottom:18px}.ticket-row{display:flex;justify-content:space-between;margin-bottom:16px}.ticket-label{font-size:11px;letter-spacing:.04em;color:rgba(20,40,80,.55);margin-bottom:4px}.ticket-value{font-family:JetBrains Mono,monospace;font-size:15px;font-weight:500}@media(max-width:520px){.ticket-preview{flex-direction:column}.ticket-preview .stub-side{width:100%;border-left:none;border-top:1.5px dashed rgba(20,40,80,.2);flex-direction:row;justify-content:space-between}}#planner{background:var(--paper);color:var(--ink);border-radius:24px;overflow:hidden}.planner-inner{padding:44px 40px 40px}@media(max-width:640px){.planner-inner{padding:32px 22px 30px}}.planner-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;gap:20px}.planner-head h2{font-size:26px;color:var(--ink)}.step-count{font-family:JetBrains Mono,monospace;font-size:13px;color:rgba(20,40,80,.5);white-space:nowrap;padding-top:6px}.progress-track{height:3px;background:rgba(20,40,80,.1);border-radius:2px;margin:22px 0 34px;overflow:hidden}.progress-fill{height:100%;background:var(--moss-deep);border-radius:2px;transition:width .35s ease}.field{margin-bottom:22px}.field-label{font-size:15px;font-weight:600;margin-bottom:6px;color:var(--ink)}.field-help{font-size:13px;color:rgba(20,40,80,.55);margin-bottom:12px}input[type=date],input[type=email],input[type=tel],input[type=text],select{width:100%;padding:13px 15px;border-radius:10px;border:1.5px solid rgba(20,40,80,.16);background:#fff;font-family:Inter,sans-serif;font-size:15px;color:var(--ink)}input:focus,select:focus{outline:none;border-color:var(--moss-deep)}.chip-group{display:flex;flex-wrap:wrap;gap:10px}.chip{padding:11px 18px;border-radius:100px;border:1.5px solid rgba(20,40,80,.16);background:#fff;font-size:14px;color:var(--ink)}.chip.active,.chip:hover{border-color:var(--moss-deep)}.chip.active{background:var(--moss-deep);color:#fff}.tag-input-wrap{display:flex;gap:8px}.tag-input-wrap input{flex:1 1}.add-btn{background:var(--ink);color:var(--paper);border:none;border-radius:10px;padding:0 20px;font-size:20px}.tags-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tag-pill{background:var(--ink);color:var(--paper);padding:8px 14px;border-radius:100px;font-size:13px;display:flex;align-items:center;gap:8px}.tag-pill button{background:none;border:none;color:var(--paper);opacity:.6;font-size:14px;padding:0}.field-error{font-size:13px;color:#b4432f;margin-top:6px}.planner-nav{display:flex;justify-content:space-between;align-items:center;margin-top:36px}.btn-ghost{background:none;color:rgba(20,40,80,.55);padding:10px 4px}.btn-dark,.btn-ghost{border:none;font-size:14px}.btn-dark{background:var(--ink);color:var(--paper);padding:14px 30px;border-radius:100px;font-weight:600}.btn-dark:disabled{opacity:.35}.radio-cards{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@media(max-width:520px){.radio-cards{grid-template-columns:1fr}}.radio-card{border:1.5px solid rgba(20,40,80,.16);border-radius:12px;padding:16px 18px;background:#fff;text-align:left}.radio-card .rc-emoji{font-size:20px;margin-bottom:8px}.radio-card .rc-title{font-weight:600;font-size:14px;margin-bottom:3px}.radio-card .rc-sub{font-size:12.5px;color:rgba(20,40,80,.55)}.radio-card.active{border-color:var(--moss-deep);background:rgba(29,54,97,.06)}.yesno-row{display:flex;gap:10px}.loading-box{text-align:center;padding:60px 20px}.loading-ring{width:44px;height:44px;border-radius:50%;border:3px solid rgba(20,40,80,.12);border-top:3px solid var(--moss-deep);margin:0 auto 22px;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.confirm-box{text-align:center;padding:50px 20px 30px}.confirm-icon{width:56px;height:56px;border-radius:50%;background:var(--moss);color:var(--ink);display:flex;align-items:center;justify-content:center;margin:0 auto 22px;font-size:26px}.error-box{background:rgba(180,67,47,.08);border:1px solid rgba(180,67,47,.25);color:#8a3323;border-radius:10px;padding:16px 18px;font-size:14px;margin-top:20px}.discount-note{background:rgba(29,54,97,.06);border:1px solid rgba(29,54,97,.15);color:var(--ink);border-radius:10px;padding:14px 16px;font-size:13.5px;margin-top:20px;line-height:1.5}footer{padding:50px 0 40px;text-align:center;color:var(--text-on-ink-dim);font-size:13px}.admin-body{background:var(--paper);color:var(--ink);min-height:100vh}.topbar{background:var(--ink);color:var(--paper);padding:18px 28px;display:flex;justify-content:space-between;align-items:center}.layout{display:grid;grid-template-columns:300px 1fr;min-height:calc(100vh - 58px)}@media(max-width:860px){.layout{grid-template-columns:1fr}}.sidebar{border-right:1px solid var(--line);padding:20px 16px;background:var(--paper-dim)}.req-item{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px;margin-bottom:10px;cursor:pointer}.req-item.active{border-color:var(--moss-deep);background:rgba(29,54,97,.06)}.req-item .req-dest{font-weight:600;font-size:14px;margin-bottom:4px}.req-item .req-meta{font-size:12px;color:var(--text-dim)}.req-status{display:inline-block;font-size:10.5px;padding:3px 8px;border-radius:100px;margin-top:8px;font-family:JetBrains Mono,monospace}.st-pending_review{background:#f4e3c2;color:#8a6116}.st-approved{background:hsla(92,27%,57%,.25);color:var(--moss-deep)}.main{padding:30px 36px;max-width:840px}.section-block{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 24px;margin-bottom:16px}.section-block textarea{width:100%;min-height:110px;border:1px solid var(--line);border-radius:8px;padding:12px;font-size:13.5px;color:var(--ink)}.expense-table{width:100%;border-collapse:collapse;font-size:13.5px}.expense-table th{text-align:left;color:var(--text-dim);font-weight:500;font-size:12px}.expense-table td,.expense-table th{padding:6px 4px;border-bottom:1px solid var(--line)}.expense-table input{width:100%;border:1px solid var(--line);border-radius:6px;padding:7px 9px;font-size:13px}.final-actions{display:flex;gap:12px;margin-top:8px;flex-wrap:wrap}.btn-approve{background:var(--moss-deep);color:#fff;border:none;padding:13px 26px;border-radius:100px;font-size:14px;font-weight:600}.btn-copy{background:#fff;border:1px solid var(--line);color:var(--ink);padding:13px 22px;border-radius:100px;font-size:14px}.warn-note{background:rgba(180,67,47,.07);border:1px solid rgba(180,67,47,.2);color:#8a3323;border-radius:10px;padding:12px 16px;font-size:12.5px;margin-bottom:20px}.login-box{max-width:340px;margin:80px auto;background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;text-align:center}