:root{--ink:#18322f;--green:#123f3a;--mint:#20a77b;--lime:#c9f05b;--paper:#fbfaf5;--line:#dfe6df;--muted:#6b7976;--white:#fff;--shadow:0 24px 70px rgba(20,52,47,.16)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:"Segoe UI",Arial,sans-serif}
button,input,select{font:inherit}
button{cursor:pointer}
.topbar{height:82px;padding:0 max(5vw,24px);display:flex;align-items:center;gap:42px;background:rgba(251,250,245,.96);border-bottom:1px solid rgba(18,63,58,.09);position:relative;z-index:3}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--green);text-decoration:none;min-width:178px}
.brand-mark{display:grid;place-items:center;width:41px;height:41px;border-radius:13px;background:var(--green);color:white}
.brand-mark svg{width:29px;height:29px;fill:none;stroke:var(--lime);stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}
.brand strong,.brand small{display:block}.brand strong{font:800 22px/1 "Segoe UI";letter-spacing:-.7px}.brand small{font-size:11px;text-transform:uppercase;letter-spacing:1.6px;margin-top:4px}
nav{display:flex;gap:32px;margin-left:auto}nav a{color:#53635f;text-decoration:none;font-size:14px;font-weight:600}
.environment{font-size:11px;font-weight:700;color:#697873;background:#edf1eb;border-radius:30px;padding:8px 12px;text-transform:uppercase;letter-spacing:.6px}
.hero{min-height:720px;padding:72px max(5vw,24px);display:grid;grid-template-columns:minmax(300px,.82fr) minmax(520px,1fr);gap:7vw;align-items:start;background:radial-gradient(circle at 11% 15%,rgba(201,240,91,.24),transparent 21%),linear-gradient(128deg,#eff4e9 0%,#f8f6ef 53%,#e6eee6 100%);position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(18,63,58,.08);border-radius:50%;left:-210px;bottom:-310px;box-shadow:0 0 0 70px rgba(18,63,58,.025),0 0 0 140px rgba(18,63,58,.02)}
.hero-copy{padding-top:60px;position:relative;z-index:1}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#15815f;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:1.8px}.eyebrow:before{content:"";width:26px;height:2px;background:var(--mint)}
h1,h2,h3{font-family:"Segoe UI",sans-serif}h1{font-size:clamp(44px,5vw,72px);line-height:1.02;letter-spacing:-3.6px;margin:23px 0;color:var(--green)}h1 em{font-style:normal;color:var(--mint)}.hero-copy>p{font-size:18px;line-height:1.7;color:#5d6b68;max-width:520px}.trust-row{display:flex;gap:20px;flex-wrap:wrap;margin-top:34px;color:#36534e;font-size:13px;font-weight:600}
.quote-shell{position:relative;z-index:2;background:var(--white);border-radius:24px;box-shadow:var(--shadow);overflow:hidden;min-height:570px;border:1px solid rgba(18,63,58,.07)}
.steps{display:flex;align-items:center;justify-content:center;padding:24px 28px 20px;border-bottom:1px solid #edf0eb;background:#fcfdfa}.steps span{display:flex;align-items:center;gap:7px;color:#9aa5a1;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.steps b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e9eeea;color:#7a8884}.steps span.active{color:var(--green)}.steps span.active b{background:var(--green);color:var(--lime)}.steps i{height:1px;width:34px;background:#dce3dc;margin:0 8px}
.panel{display:none;padding:34px 42px 30px}.panel.active{display:block;animation:appear .3s ease}.panel-title{display:flex;align-items:center;gap:14px;margin-bottom:26px}.panel-title.compact{align-items:flex-start}.panel-title h2{font-size:25px;line-height:1.2;letter-spacing:-.8px;margin:0 0 5px;color:var(--green)}.panel-title p{margin:0;color:var(--muted);font-size:14px}.title-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e8f7ef;color:var(--mint);font-size:21px}.back{border:0;background:#edf3ed;color:var(--green);border-radius:10px;width:34px;height:34px;font-weight:800}
label{display:grid;gap:8px;color:#29423e;font-size:13px;font-weight:700;margin-bottom:17px}input,select{width:100%;height:48px;border:1px solid #d9e2da;border-radius:10px;background:white;color:var(--ink);padding:0 14px;outline:none}input:focus,select:focus{border-color:var(--mint);box-shadow:0 0 0 3px rgba(32,167,123,.1)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.traveler-head{display:flex;justify-content:space-between;margin:5px 0 10px;font-size:13px;font-weight:700}.traveler-head small{color:var(--muted);font-weight:400}.traveler-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin-bottom:9px}.traveler-row label{margin:0;position:relative}.traveler-row label span{position:absolute;left:14px;color:#7d8986;font-weight:500}.traveler-row input{padding-left:110px}.remove{width:42px;height:42px;border:0;border-radius:9px;background:#f7eeee;color:#b35a5a}.text-button{border:0;background:transparent;color:#118461;font-weight:700;padding:4px 0 16px}.primary,.secondary{min-height:47px;border-radius:10px;padding:0 20px;font-weight:800;border:1px solid var(--green)}.primary{background:var(--green);color:white}.primary:hover{background:#0c5148}.primary:disabled{opacity:.42;cursor:not-allowed}.secondary{background:white;color:var(--green)}.full{width:100%;display:flex;justify-content:center;gap:15px;align-items:center}.full b{color:var(--lime);font-size:19px}.secure-note{text-align:center;color:#85908d;font-size:11px;margin:12px 0 0}.panel-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
.offers{display:grid;gap:12px}.offer{border:1px solid var(--line);border-radius:14px;padding:18px;display:grid;grid-template-columns:1fr auto;gap:12px;cursor:pointer;transition:.2s;background:#fff}.offer:hover,.offer.selected{border-color:var(--mint);box-shadow:0 5px 20px rgba(32,167,123,.1)}.offer.selected{background:#f5fcf8}.offer h3{margin:0 0 5px;font-size:17px}.offer .tag{display:inline-block;padding:4px 8px;background:#e9f7ef;color:#16815f;font-size:10px;font-weight:800;border-radius:20px;text-transform:uppercase}.offer-price{text-align:right}.offer-price strong{display:block;font:800 22px "Segoe UI";color:var(--green)}.offer-price small,.offer p{color:var(--muted);font-size:11px}.coverage-list{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.coverage-list span{font-size:11px;background:#f0f3ef;border-radius:7px;padding:6px 8px;color:#53635f}
.consent{grid-template-columns:auto 1fr;align-items:start;font-weight:500;line-height:1.45}.consent input{width:18px;height:18px;margin:2px 0}.birth-title{font:700 13px "Segoe UI";margin:2px 0 10px}.review{border:1px solid var(--line);border-radius:14px;overflow:hidden}.review-row{display:flex;justify-content:space-between;gap:20px;padding:13px 16px;border-bottom:1px solid #edf0ed;font-size:13px}.review-row:last-child{border:0}.review-row span{color:var(--muted)}.review-row strong{text-align:right}.notice{background:#fff8dd;color:#7b6424;border-radius:10px;padding:12px 14px;margin-top:16px;font-size:12px;line-height:1.5}.success{text-align:center;padding-top:62px}.success-mark{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#e5f8ec;color:#159669;font-size:34px;margin:0 auto 20px}.success h2{font-size:30px;margin:13px 0 8px}.success>p{color:var(--muted);max-width:440px;margin:0 auto 22px}.confirmation{display:inline-grid;gap:5px;background:#f1f5f0;padding:14px 22px;border-radius:12px;font-size:12px;margin-bottom:22px}.message{display:none;margin:0 42px 25px;padding:12px 15px;border-radius:10px;background:#fff0ee;color:#9e4038;font-size:13px}.message.show{display:block}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:62px max(7vw,30px);background:white}.benefits div{text-align:center;padding:20px}.benefits span{font:800 30px "Segoe UI";color:var(--mint)}.benefits h3{font-size:16px;margin:11px 0 5px}.benefits p{color:var(--muted);margin:0;font-size:13px}.how{padding:80px max(8vw,30px);text-align:center}.how>h2{font-size:36px;margin:13px 0 38px;color:var(--green)}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1000px;margin:auto;text-align:left}.how article{background:white;border-radius:18px;padding:28px;border:1px solid #e8ebe5}.how article b{color:var(--mint);font:800 13px "Segoe UI"}.how h3{margin:17px 0 8px}.how p{color:var(--muted);font-size:13px;line-height:1.6;margin:0}
footer{background:var(--green);color:#d8e5df;padding:40px max(6vw,25px);display:flex;align-items:center;gap:30px}footer p{margin-left:auto}footer>small{opacity:.65}.brand.light{color:white}.brand.light .brand-mark{background:var(--mint)}
@keyframes appear{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(max-width:950px){.hero{grid-template-columns:1fr;padding-top:25px}.hero-copy{padding:20px 0;text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.trust-row{justify-content:center}.quote-shell{max-width:680px;width:100%;margin:auto}nav{display:none}.environment{margin-left:auto}.benefits,.how-grid{grid-template-columns:1fr}}
@media(max-width:580px){.topbar{height:70px;padding:0 16px}.environment{font-size:0;padding:7px}.environment:after{content:"HML";font-size:10px}.hero{padding:30px 12px}.hero-copy{padding:5px 12px 20px}h1{font-size:42px;letter-spacing:-2.2px}.steps{padding:17px 8px}.steps span{font-size:0}.steps b{font-size:11px}.steps i{width:22px;margin:0 3px}.panel{padding:27px 20px}.field-grid{grid-template-columns:1fr;gap:0}.panel-actions{justify-content:stretch}.panel-actions button{flex:1}.message{margin:0 20px 20px}.benefits{padding:35px 20px}.how{padding:55px 20px}footer{align-items:flex-start;flex-direction:column}footer p{margin:0}}

/* W630: identidade visual alinhada ao portal legado em produção. */
body{font-family:"Open Sans","Segoe UI",Arial,sans-serif;background:#fff;color:#222}
.topbar{height:96px;padding:0 max(calc((100vw - 1140px)/2),24px);display:grid;grid-template-columns:210px 1fr 1fr auto;grid-template-rows:59px 37px;gap:0 28px;background:#fff;border:0;box-shadow:0 1px 5px rgba(0,0,0,.18)}
.brand{grid-row:1;min-width:0;align-self:center}.brand img{display:block;width:150px;height:auto;max-height:56px;object-fit:contain}
.contact-item{align-self:center;padding-left:24px;border-left:1px solid #ddd;color:#07517a}.contact-item small,.contact-item strong{display:block}.contact-item small{font-size:12px}.contact-item strong{font-size:14px;color:#08b914}
.account-link{align-self:center;border:1px solid #ddd;border-radius:22px;padding:9px 16px;color:#174a64;text-decoration:none;font-size:12px;font-weight:700}
.topbar nav{grid-column:1/-1;grid-row:2;justify-content:center;margin:0;gap:0;height:37px}.topbar nav a{display:flex;align-items:center;padding:0 23px;color:#777;text-transform:uppercase;font-size:11px}.topbar nav a.active{background:#0bc318;color:#fff}.environment{position:fixed;right:0;top:120px;background:#ffdb00;color:#2e4300;border-radius:4px 0 0 4px;z-index:10}
.hero{min-height:690px;padding:34px max(calc((100vw - 1140px)/2),24px) 340px;display:block;background:linear-gradient(rgba(0,75,125,.05),rgba(0,75,125,.05)),url("/assets/praia-smart.jpg") center 43%/cover no-repeat;overflow:visible}
.hero:after{display:none}.hero-copy{display:none}.quote-shell{width:100%;min-height:auto;border-radius:10px;box-shadow:0 4px 16px rgba(0,0,0,.25);border:0}.steps{padding:13px 24px;background:#f7f7f7}.steps span.active b{background:#0abc18;color:#fff}.panel{padding:20px}.panel-title{margin-bottom:16px}.panel-title h2{font:400 25px/1.2 "Open Sans",Arial;color:#064b72;letter-spacing:-.5px}.title-icon{background:transparent;color:#064b72;width:28px;height:35px;font-size:26px}.panel-title p{display:none}
#trip-form{display:grid;grid-template-columns:1.35fr 2fr 1.05fr;gap:0 28px;align-items:end}
#trip-form>label{grid-column:1;margin:0}#trip-form>.field-grid{grid-column:2;grid-row:1;gap:28px}#trip-form>.field-grid label{margin:0}#trip-form>.traveler-head{grid-column:3;grid-row:1;align-self:start;margin:0 0 6px}#trip-form>.traveler-head small{display:none}#trip-form>.traveler-list{grid-column:3;grid-row:1;margin-top:28px}#trip-form>.text-button{grid-column:3;grid-row:2;justify-self:start;padding:9px 0;color:#079b13}#trip-form>.full{grid-column:1;grid-row:2;width:176px;background:#08bd16;border-color:#08bd16;border-radius:3px;font-size:15px}#trip-form>.full:hover{background:#079d12}#trip-form>.secure-note{grid-column:1/3;grid-row:3;text-align:left;margin:3px 0;font-size:10px;color:#333}.coupon-row{grid-column:2/4;grid-row:2;display:flex;align-items:end;gap:12px}.coupon-row label{display:flex;align-items:center;gap:12px;margin:0}.coupon-row input{width:165px}.coupon-row button{height:48px;border:0;border-radius:3px;padding:0 20px;background:#ffdc00;color:#554a00;font-weight:700}.traveler-row input,input,select{height:45px;border-radius:0;border-color:#ccc}.traveler-row label span{font-size:11px}.traveler-row input{padding-left:91px}.remove{height:40px}
.offers .offer.selected{border-color:#0abc18;background:#f6fff5}.primary{background:#08b914;border-color:#08b914;border-radius:3px}.primary:hover{background:#069d10}.secondary{border-color:#0aa916;border-radius:3px;color:#087a10}.back{background:#e9f5e9;color:#078a11}.offer .tag{background:#e8f8e8;color:#078810}.offer-price strong{color:#07517a}
.promo-band{max-width:1140px;margin:-300px auto 30px;position:relative;z-index:2;display:grid;grid-template-columns:1.3fr 1.3fr auto 1.2fr;gap:20px;align-items:center;background:#076ba2;color:#fff;border-radius:9px;overflow:hidden}.promo-band>div,.promo-band>label{padding:15px 0}.promo-band>div{padding-left:20px}.promo-band h3{margin:0 0 7px;font-size:18px}.promo-band p{margin:0;font-size:11px}.promo-band label{margin:0;color:white}.promo-band input{height:40px}.promo-band button{height:42px;background:#08c316;border:0;color:#fff;padding:0 20px;font-weight:700}.promo-band aside{background:#f2f2f2;color:#07517a;padding:21px;height:100%;text-align:center}
.operators{text-align:center;padding:50px 25px;background:#fff}.operators h2{font-size:24px;font-weight:400;color:#07517a}.operators p{color:#555}.operators>div{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:30px}.operators span{border:1px solid #ddd;color:#777;padding:14px 20px;background:#fafafa;font-weight:700}
.benefits{display:none}.how{background:#f4f4f4}.how>h2{color:#07517a;font-size:28px}.how-grid{grid-template-columns:repeat(4,1fr)}.how article{border-radius:2px;text-align:center;border:0}.how article b{color:#08b914}.how h3{text-transform:uppercase;color:#07517a}.annual{padding:70px 10%;color:#fff;background:linear-gradient(90deg,rgba(0,72,112,.93),rgba(0,72,112,.63)),url("/assets/praia-smart.jpg") center 75%/cover}.annual div{max-width:700px}.annual h2{font-size:28px}.annual p{line-height:1.7}.annual a{display:inline-block;margin-top:10px;padding:11px 18px;background:#08bd16;color:white;text-decoration:none}
footer{background:#07517a}footer img{width:150px;filter:brightness(0) invert(1)}footer p{font-size:12px;line-height:1.7}
@media(max-width:950px){.topbar{height:auto;min-height:78px;display:flex;padding:10px 20px;flex-wrap:wrap}.contact-item{display:none}.account-link{margin-left:auto}.topbar nav{order:4;width:100%;overflow:auto;justify-content:flex-start}.topbar nav a{padding:10px 14px;white-space:nowrap}.hero{padding:25px 18px 330px}.quote-shell{max-width:760px}.promo-band{margin:-300px 18px 30px;grid-template-columns:1fr}.promo-band>*{padding:15px 20px!important}.how-grid{grid-template-columns:1fr 1fr}#trip-form{grid-template-columns:1fr 1fr}#trip-form>*{grid-column:auto!important;grid-row:auto!important}#trip-form>.traveler-list{margin:0}.coupon-row{display:none}}
@media(max-width:580px){.topbar{padding:8px 12px}.brand img{width:125px}.account-link{font-size:10px;padding:7px 10px}.topbar nav{display:flex}.environment{top:105px}.hero{padding:18px 10px 320px;background-position:57% center}.steps{padding:10px}.panel{padding:18px}.panel-title h2{font-size:21px}#trip-form{display:block}#trip-form>*{margin-bottom:12px}.promo-band{margin:-300px 10px 25px}.how-grid{grid-template-columns:1fr}.operators{padding:35px 18px}.annual{padding:50px 25px}}
