*{box-sizing:border-box}body{margin:0;background:#f7f8fb;color:#213353;font-family:Arial,sans-serif}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:white;border-bottom:1px solid #e7ebf2}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:#2a4170;letter-spacing:2px;font-size:18px;font-weight:600}.brand img{width:48px;height:58px;object-fit:contain}.brand small{display:block;letter-spacing:2px;font-size:8px;margin-top:6px}.header-note{font-size:12px;color:#778299}main{max-width:1200px;margin:54px auto;display:grid;grid-template-columns:40% 60%;min-height:620px;border:1px solid #e1e6ef;border-radius:22px;overflow:hidden;background:white;box-shadow:0 16px 60px #243d6508}aside{background:#2a4170;color:white;padding:52px 40px;position:relative;overflow:hidden}aside:after{content:'';width:330px;height:330px;border:1px solid #ffffff12;border-radius:50%;position:absolute;right:-210px;bottom:-100px}.eyebrow{font-size:10px;letter-spacing:2px;color:#ccd7ed}h1{font-family:Georgia,serif;font-weight:400;font-size:43px;line-height:1.15;margin:25px 0}aside p{font-size:14px;line-height:1.8;color:#d8dfed}.journey{margin-top:42px;display:grid;gap:22px;font-size:11px;color:#aabbd9}.journey span{margin-left:16px;font-size:13px;color:white}.aside-foot{margin-top:55px;font-size:12px;line-height:1.8;color:#c5d1e6}section{padding:48px 52px;display:flex;flex-direction:column;min-width:0}.step{font-size:11px;color:#71809a;letter-spacing:1px;display:flex;justify-content:space-between}.track{height:4px;background:#edf0f5;border-radius:5px;margin:14px 0 42px}.track i{display:block;height:4px;background:#2a4170;border-radius:5px}h2{font-family:Georgia,serif;font-size:31px;font-weight:400;line-height:1.2;margin:0 0 16px}.hint{font-size:14px;line-height:1.7;color:#778297;margin:0 0 26px}input,select,textarea{width:100%;border:1px solid #d7deea;border-radius:9px;padding:16px;font:16px Arial;color:#243c65;background:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:#2a4170;box-shadow:0 0 0 3px #2a417012}textarea{height:130px;resize:vertical}.choices{display:grid;gap:10px}.choice{background:white;border:1px solid #dce2ed;color:#2a4170;text-align:left;padding:18px;border-radius:9px;font-size:15px;cursor:pointer}.choice.active{border-color:#2a4170;background:#f0f4fb;box-shadow:inset 3px 0 #2a4170}.nav{display:flex;gap:12px;justify-content:space-between;margin-top:auto;padding-top:32px}button{font:14px Arial;cursor:pointer;border-radius:8px;padding:15px 24px;border:1px solid #dbe1eb;background:white;color:#2a4170}button.primary{background:#2a4170;color:white;border-color:#2a4170}button:hover{filter:brightness(.96)}button:disabled{opacity:.45;cursor:not-allowed}.welcome-tag{background:#eef2f8;padding:8px 12px;border-radius:20px;font-size:11px;display:inline-block;margin-bottom:24px}.welcome-list{font-size:14px;line-height:1.8;padding-left:20px;color:#65728a}.notice{font-size:12px;line-height:1.6;padding:15px;background:#f3f5f9;border-radius:8px;margin-top:20px;color:#62708a}.consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;margin-top:20px}.consent input{width:18px;height:18px;flex-shrink:0}footer{max-width:1200px;margin:0 auto 30px;display:flex;justify-content:space-between;font-size:10px;color:#7b879b}.review{max-height:320px;overflow:auto}.answer{padding:12px 0;border-bottom:1px solid #edf0f5;font-size:13px}.answer strong{display:block;font-size:11px;color:#76839a;margin-bottom:6px}.answer button{padding:4px 8px;float:right;font-size:11px}#error{color:#a33a3a;font-size:12px;min-height:18px;margin-top:10px}@media(max-width:800px){header{height:82px;padding:0 22px}.header-note{display:none}main{margin:20px 14px;display:block;border-radius:16px}aside{padding:28px}aside h1{font-size:32px;margin:15px 0}aside p,.journey,.aside-foot{display:none}section{padding:30px 25px;min-height:470px}.track{margin-bottom:30px}h2{font-size:28px}footer{padding:0 20px;display:block;line-height:1.8}footer span{display:block}}@media print{header,aside,footer,.nav,.notice,button{display:none!important}main{display:block;border:0;margin:0;box-shadow:none}section{padding:0}.review{max-height:none;overflow:visible}.answer{break-inside:avoid}}body{background:#f1f4f8;background-image:radial-gradient(ellipse at 5% 80%,#e5ebf4 0,transparent 50%);font-family:'Avenir Next','Segoe UI',Arial,sans-serif}header{height:92px;background:transparent;border:0;padding:0 6.2%}.brand{font-size:17px;letter-spacing:2.4px}.header-note{font-size:11px;letter-spacing:.3px}main{margin:25px auto 40px;grid-template-columns:35% 65%;min-height:680px;border:none;box-shadow:0 22px 75px #253d6410;border-radius:26px}aside{background:#243b67;padding:52px 38px;display:flex;flex-direction:column}aside:before{content:'';position:absolute;width:300px;height:300px;border:1px solid #ffffff10;left:-180px;top:110px;border-radius:50%}aside:after{width:430px;height:430px;right:-285px;bottom:-80px;border:60px solid #ffffff03}aside h1{font-size:39px;letter-spacing:-1.5px;line-height:1.18;margin:38px 0 20px}em{font-family:Georgia,serif;font-weight:400;color:#aebfdf}aside p{font-size:13px;line-height:1.9;color:#bfcbe0}.journey{margin-top:48px;gap:12px}.journey>div{padding:12px 14px;border-radius:8px;border:1px solid transparent;transition:background .2s}.journey .current{background:#ffffff0c;border-color:#ffffff16;color:white}.journey span{color:#aebfdb}.journey .current span,.journey .done span{color:white}.aside-foot{margin-top:auto;padding-top:42px;font-size:11px;z-index:1}.signature{font-family:Georgia,serif;color:white;font-style:italic;font-size:20px;display:block;margin-bottom:7px}section{padding:43px 56px;scroll-margin-top:16px}.eyebrow{font-size:9px;letter-spacing:1.7px}.step{font-size:10px;letter-spacing:1.6px}.muted{color:#a8b1c1}.track{height:3px;margin:18px 0 45px}.track i{height:3px;background:#6e86ad}h2{font-family:'Avenir Next','Segoe UI',Arial,sans-serif;font-weight:500;letter-spacing:-1px;line-height:1.25;font-size:30px;max-width:510px}.hint{font-size:13px;margin-bottom:25px;color:#7a8597}.welcome h2{font-family:Georgia,serif;font-size:47px;line-height:1.12;letter-spacing:-1.6px;margin:4px 0 23px}.welcome h2 em{color:#2a4170}.welcome-tag{font-size:9px;letter-spacing:1.8px;background:transparent;padding:0;color:#8390a4;margin-bottom:28px}.welcome .hint{max-width:330px}.welcome-points{margin:28px 0;display:grid;gap:17px;font-size:11px;color:#93a2b9}.welcome-points b{font-weight:400;font-size:13px;color:#4e607b;margin-left:14px}.preview-note{font-size:10px;color:#8c97a8;margin-top:35px}.tiny{font-size:11px;color:#919bad;align-self:center}.nav{padding-top:28px;border-top:1px solid #eef1f6;margin-top:auto;align-items:center}.nav button{border-radius:25px;padding:14px 23px;font-size:12px}.nav button.primary{min-width:130px;display:flex;justify-content:space-between;gap:22px}.nav .back{border:0;padding-left:0;color:#7e8ba0}.choices{grid-template-columns:repeat(3,1fr);gap:10px;margin:4px 0 23px}.choice{display:flex;align-items:center;gap:10px;padding:17px 12px;border-radius:12px;font-size:13px;background:#fbfcfe;transition:all .15s}.choice:hover{border-color:#9eafca;filter:none}.choice.active{box-shadow:none;border:1px solid #2a4170;background:#f0f4fa}.choice-dot{width:14px;height:14px;flex-shrink:0;border:1px solid #bac5d6;border-radius:50%;background:white}.active .choice-dot{border:4px solid #2a4170}.details{display:grid;gap:16px}.field label,.details>label{display:block;font-size:12px;color:#52627c;margin-bottom:8px;line-height:1.6}input,select,textarea{font-family:inherit;font-size:14px;border-radius:10px;background:#fcfdff;border-color:#dfe5ee;padding:14px 15px}textarea{height:95px;line-height:1.5}input::placeholder,textarea::placeholder{color:#a7b1c0}select{padding-right:10px;min-height:49px}.micro{font-size:11px;color:#8792a5;margin:-12px 0 0}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{font-size:12px;border:0;border-radius:20px;background:#edf2fa;padding:9px 13px;color:#2a4170}.consent{font-size:11px}.notice{font-size:10px}.review{max-height:300px}.answer{line-height:1.6}.answer p{margin:6px 0;white-space:pre-wrap}.answer small{color:#8b95a6}.answer button{border:0;background:#f2f5fa}.answer strong{font-size:12px;color:#3f5273}footer{font-size:9px;opacity:.8}@media(max-width:800px){header{height:78px;padding:0 24px}main{margin:10px 12px 25px;min-height:0;border-radius:20px}aside{padding:27px 27px 23px}aside h1{font-size:29px;margin:16px 0 0;letter-spacing:-.8px}aside h1 br{display:none}aside h1 em{display:block;margin-top:3px}aside p,.journey,.aside-foot{display:none}section{padding:30px 26px;min-height:490px}h2{font-size:26px}.welcome h2{font-size:38px}.track{margin-bottom:32px}.choices{gap:7px}.choice{font-size:12px;padding:16px 9px;gap:7px}.tiny{max-width:120px;line-height:1.5}.preview-note{line-height:1.7}.nav{margin-top:28px}.welcome-points{margin:26px 0}.review{max-height:330px}}@media print{.step,.track,.welcome-tag,.consent{display:none!important}.review{max-height:none}.answer button{display:none!important}section{min-height:0}.answer{font-size:11px}}
.social-row{display:grid;grid-template-columns:1fr 1fr 28px;gap:10px;align-items:center}.social-row .field{min-width:0}.social-row input,.social-row select{width:100%;min-width:0}.social-hint{margin:0}.remove-social{border:0;padding:6px;font-size:21px;margin-top:25px;color:#8591a5}.add-social{justify-self:start;padding:10px 15px;font-size:12px;border-radius:20px}#details:has(.social-row){max-height:330px;overflow-y:auto;padding-right:4px}@media(max-width:480px){.social-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 22px;gap:6px}.social-row input,.social-row select{font-size:12px;padding:12px 7px}.social-row label{font-size:10px}}
/* Turquoise accent palette; preserve the official navy logo. */
:root{--teal:#17656a;--teal-dark:#124f55;--mint:#d9f0ed;--ink:#253d4b}
body{background:#f2f7f5;background-image:radial-gradient(ellipse at 0% 90%,#dbedE7 0,transparent 52%);color:var(--ink)}
.brand img{mix-blend-mode:multiply}.brand{isolation:isolate}header{background:transparent}
main{box-shadow:0 22px 75px #194e5010}aside{background:linear-gradient(155deg,#1d7479 0%,#15595f 67%,#124c53 100%)}
aside em{color:#b6e3db}aside p{color:#d0e9e5}.eyebrow{color:#d0e9e5}.journey{color:#add5cf}.journey span{color:#c4e3de}.journey .current{background:#ffffff10;border-color:#ffffff24}.aside-foot{color:#bfddd7}
.welcome h2 em{color:var(--teal)}.welcome-tag{color:#4e7e7d}.track{background:#eaf3f0}.track i{background:#2b8b8d}
button{color:var(--teal)}button.primary{background:var(--teal);border-color:var(--teal)}button.primary:hover{background:var(--teal-dark)}
.choice{color:var(--teal-dark);background:#fafdfc;border-color:#dce9e4}.choice:hover{border-color:#83b6b1}.choice.active{border-color:var(--teal);background:#edf8f5}.active .choice-dot{border-color:var(--teal)}
input,select,textarea{color:var(--ink);background:#fcfefd;border-color:#dce7e3}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #17656a14}
.chip,.answer button{background:#eaf5f1;color:var(--teal-dark)}.notice{background:#f0f6f3}.nav{border-color:#eaf1ed}.add-social{border-color:#c9e0d8}.field label,.details>label{color:#4e696b}
.brand{isolation:auto}
@font-face{font-family:Manrope;src:url('fonts/manrope-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('fonts/manrope-500.ttf') format('truetype');font-weight:500;font-display:swap}@font-face{font-family:Manrope;src:url('fonts/manrope-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('fonts/manrope-700.ttf') format('truetype');font-weight:700;font-display:swap}
body,button,input,select,textarea{font-family:Manrope,'Segoe UI',sans-serif}
.brand{font-family:Manrope,sans-serif;font-weight:700;letter-spacing:2px}.brand small{font-weight:500}
h1,h2,.welcome h2,em,.signature{font-family:Manrope,'Segoe UI',sans-serif;font-style:normal}
aside h1{font-size:35px;font-weight:500;letter-spacing:-1.2px;line-height:1.32}aside h1 em{font-weight:400}
h2{font-size:27px;font-weight:600;letter-spacing:-.7px;line-height:1.4}.welcome h2{font-size:40px;font-weight:500;letter-spacing:-1.3px;line-height:1.28}.welcome h2 em{font-weight:600}
.signature{font-size:16px;font-weight:500;letter-spacing:-.3px}.hint{font-size:13px;line-height:1.85}aside p{line-height:1.9}.step{font-weight:600;letter-spacing:1.3px}.field label,.details>label{font-weight:500}.welcome-points b{font-weight:500}
.header-travel{display:flex;gap:16px;align-items:center;color:#4c8787}.flight-route{width:125px;height:38px;opacity:.55}.header-plane{height:33px;width:33px;margin-left:-20px;transform:rotate(8deg)}.header-travel span{font-size:10px;line-height:1.7;letter-spacing:.2px;color:#7c9291}.header-travel b{color:#396b6b;font-weight:500}
@media(max-width:800px){aside h1{font-size:27px}.welcome h2{font-size:33px}h2{font-size:24px}.header-travel{gap:0}.header-travel span,.flight-route{display:none}.header-plane{width:28px;height:28px;margin:0}.signature{font-size:15px}.brand{font-size:15px}}
@media print{.header-travel{display:none}}
.nav button.plane-next{min-width:58px;width:58px;height:50px;padding:12px;align-items:center;justify-content:center;box-shadow:0 5px 14px #17656a18}.next-plane{width:25px;height:25px;transform:rotate(45deg);transition:transform .18s}.plane-next:hover .next-plane{transform:translateX(3px) rotate(45deg)}.plane-next:focus-visible{outline:3px solid #80c5bd;outline-offset:4px}@media(prefers-reduced-motion:reduce){.next-plane{transition:none}.plane-next:hover .next-plane{transform:rotate(45deg)}}
/* Welcome page: a dedicated travel composition, separate from the questionnaire. */
body.on-welcome{background:#f7f9f6;background-image:radial-gradient(ellipse at 8% 85%,#e5eeE7 0,transparent 55%)}
main.welcome-state{display:block;max-width:1240px;min-height:0;background:transparent;box-shadow:none;overflow:visible;border-radius:0;margin:24px auto 38px;padding:0 20px}
.welcome-state>aside{display:none}.welcome-state>#panel{padding:0;display:block;min-height:0}
.home-hero{display:grid;grid-template-columns:1.16fr 1fr;gap:28px;min-height:650px;align-items:stretch}
.home-copy{padding:46px 12px 20px 0;display:flex;flex-direction:column;align-items:flex-start}
.home-kicker{font-size:10px;font-weight:600;letter-spacing:1.8px;color:#426c6a;display:flex;gap:9px;align-items:center}.home-kicker i{width:6px;height:6px;background:#27867b;border-radius:50%}
.home-hello{font-size:15px;color:#4f6a68;margin:45px 0 17px;font-weight:400}
.home-copy h1{font-family:Manrope,sans-serif;font-size:55px;font-weight:500;line-height:1.18;letter-spacing:-2.8px;color:#223d43;margin:0 0 25px;white-space:nowrap}.home-copy h1 span{color:#20796f;font-weight:600}
.home-intro{font-size:14px;line-height:1.9;color:#637b79;margin:0 0 31px;max-width:390px}
.home-start{background:#185e60;border:0;color:white;display:flex;align-items:center;justify-content:space-between;gap:45px;padding:18px 24px;border-radius:9px;font-family:Manrope,sans-serif;font-weight:500;font-size:14px;box-shadow:0 9px 22px #175c5b17}.home-start:hover{background:#124f51;filter:none}.home-start:focus-visible{outline:3px solid #73b7ab;outline-offset:4px}
.hero-plane{width:23px;height:23px;transform:rotate(45deg);flex-shrink:0}.home-small{font-size:10px;color:#8a9c97;margin:14px 0 0;letter-spacing:.1px}.home-bottom{margin-top:auto;padding-top:37px;display:flex;gap:13px;align-items:center;max-width:365px}.home-rule{height:1px;width:32px;flex-shrink:0;background:#a8c5bc}.home-bottom .preview-note{font-size:10px;line-height:1.8;margin:0;color:#8b9b95}
.home-art{position:relative;min-height:650px;background:linear-gradient(150deg,#287d78,#145854 65%,#0c4545);border-radius:130px 18px 18px 18px;overflow:hidden;isolation:isolate;box-shadow:0 22px 45px #1f55551a}
.home-art:after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 70% 15%,#b3e0c528,transparent 60%)}
.art-caption{position:absolute;left:50px;right:30px;top:52px;color:#d2e9df;font-size:8px;letter-spacing:1.8px;line-height:1.6;text-align:right}.art-orbit{position:absolute;border:1px solid #e0f5e20e;border-radius:50%;width:650px;height:650px;top:130px;left:-70px;z-index:-1}.orbit-two{width:500px;height:500px;top:205px;left:5px}.orbit-three{width:350px;height:350px;top:280px;left:80px}.art-route{position:absolute;inset:35px 0 0;width:100%;height:90%}.art-plane{position:absolute;top:111px;right:90px;color:#d1eadb;transform:rotate(-25deg)}.art-plane .hero-plane{height:38px;width:38px;transform:none}
.travel-ticket{position:absolute;left:48px;right:48px;top:184px;background:#fcfdf6;color:#234b49;border-radius:15px;transform:rotate(-7deg);box-shadow:0 25px 45px #042b3555;padding:25px 27px 0}
.ticket-top{display:flex;justify-content:space-between;align-items:center;letter-spacing:1.6px;font-size:13px;font-weight:700}.ticket-top small{font-size:6px;display:block;margin-top:5px;letter-spacing:1.7px;font-weight:500}.ticket-type{font-size:9px;border:1px solid #c5d4c8;border-radius:20px;padding:7px 11px;letter-spacing:1px;font-weight:500}
.ticket-title{font-size:25px;font-weight:500;letter-spacing:-.8px;line-height:1.3;margin-top:30px}.travel-ticket>p{font-size:10px;color:#84978e;margin:10px 0 24px}.ticket-route{display:flex;align-items:center;justify-content:space-between;padding:20px 0;border-top:1px solid #e2e9df}.ticket-route>span{font-size:24px;letter-spacing:-1px;font-weight:600}.ticket-route>span:last-child{text-align:right}.ticket-route small{display:block;font-size:5px;letter-spacing:.7px;color:#879a8d;margin-top:6px;font-weight:500}.ticket-route .hero-plane{width:27px;color:#79a79b}
.ticket-perforation{border-top:1px dashed #b9ccbd;margin:3px -27px 0;position:relative}.ticket-perforation:before,.ticket-perforation:after{content:'';position:absolute;top:-9px;width:18px;height:18px;background:#1a605b;border-radius:50%}.ticket-perforation:before{left:-9px}.ticket-perforation:after{right:-9px}.ticket-bottom{display:flex;justify-content:space-between;align-items:center;padding:20px 0;font-size:6px;line-height:1.6;letter-spacing:1.3px;color:#688679}.ticket-bars{height:29px;width:95px;background:repeating-linear-gradient(90deg,#315a50 0 1px,transparent 1px 3px,#315a50 3px 5px,transparent 5px 8px);opacity:.65}
.art-seal{position:absolute;right:26px;bottom:54px;border:1px solid #c1e4d331;border-radius:50%;background:#226963;backdrop-filter:blur(5px);width:100px;height:100px;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(9deg);font-size:10px;line-height:1.8;color:#d7eadc;box-shadow:0 8px 20px #073d3d20}.art-seal b{font-weight:600}.art-foot{position:absolute;left:38px;bottom:32px;letter-spacing:1.8px;font-size:7px;color:#abcfc2}
@media(min-width:801px) and (max-width:1100px){.home-copy h1{font-size:44px;letter-spacing:-2px}.home-hero{gap:18px}.travel-ticket{left:25px;right:25px}.home-copy{padding-top:40px}.art-caption{font-size:7px}.home-art{border-top-left-radius:100px}}
@media(max-width:800px){main.welcome-state{margin:16px auto 30px;padding:0 25px}.home-hero{grid-template-columns:1fr;gap:30px;min-height:0}.home-copy{padding:20px 0 0}.home-kicker{font-size:8px;letter-spacing:1.4px}.home-hello{font-size:13px;margin:27px 0 12px}.home-copy h1{font-size:43px;letter-spacing:-2px;line-height:1.18;white-space:normal;margin-bottom:20px}.home-intro{font-size:12px;margin-bottom:23px}.home-start{font-size:13px;padding:16px 23px;width:100%;max-width:350px}.home-small{font-size:9px}.home-bottom{padding-top:24px;max-width:320px}.home-bottom .preview-note{font-size:9px}.home-art{min-height:490px;border-radius:90px 15px 15px 15px;width:100%;max-width:480px;justify-self:center}.art-caption{top:32px;font-size:6px;right:25px;left:42px;letter-spacing:1px}.travel-ticket{top:116px;left:35px;right:35px;padding:22px 23px 0}.ticket-title{font-size:23px;margin-top:24px}.ticket-top{font-size:11px}.ticket-route{padding:17px 0}.ticket-route>span{font-size:22px}.ticket-perforation{margin-left:-23px;margin-right:-23px}.ticket-bottom{padding:17px 0}.art-plane{top:58px;right:65px}.art-plane .hero-plane{width:28px;height:28px}.art-seal{width:80px;height:80px;bottom:27px;right:18px;font-size:8px}.art-foot{left:27px;bottom:27px;font-size:5px;letter-spacing:1.3px}.art-orbit{top:60px;left:-120px}.orbit-two{top:130px;left:-45px}.orbit-three{top:200px;left:30px}.on-welcome footer{font-size:8px}}
@media(max-width:360px){.home-copy h1{font-size:37px}.travel-ticket{left:23px;right:23px}.ticket-title{font-size:21px}.ticket-route small{font-size:4px}}
