/* Visual direction v2: white canvas, real hospitality photography, compact conversion flow. */
:root{--paper:#fff;--warm:#f7f6f2}body{background:white}.brand{font-size:32px}.intake{display:block;min-height:0;padding:0 24px 35px}.intake header{position:static;max-width:1440px;height:88px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.header-contact{font-size:14px;text-decoration:none;border-bottom:1px solid #bbb;padding:7px 0}.header-contact span{margin-left:15px}.hero-stage{position:relative;isolation:isolate;min-height:460px;display:grid;place-items:center;padding:38px 20px 54px;border-radius:18px;overflow:hidden;max-width:1600px;margin:auto}.hero-photo{position:absolute;inset:0;z-index:-2}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 63%}.form-shell{margin:0;background:#fffffffa;border-color:white;border-radius:14px;width:min(570px,100%);padding:28px 34px;box-shadow:0 15px 70px #17322e22;backdrop-filter:blur(12px)}.form-top{font-size:11px;letter-spacing:1.6px}.progress{margin:15px 0 29px;border-radius:3px;overflow:hidden}.question-title{font-size:clamp(25px,2.5vw,32px);margin-bottom:24px}.field{border:1px solid #d6d4ce;padding:14px 16px;font-size:18px;border-radius:7px;transition:border-color .2s,box-shadow .2s}.field:focus{border-color:var(--gold);box-shadow:0 0 0 3px #92703a12}.field::placeholder{font-size:16px}.hint{font-size:14px;margin:9px 0 0}.options{gap:7px}.option{padding:9px 13px;font-size:16px}.option:hover{transform:translateX(3px)}.form-controls{margin-top:17px}.back{font-size:15px}.button{padding:15px 22px;border-radius:7px;transition:background .2s,transform .25s,box-shadow .25s}.button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #92703a20}#error{font-size:14px;margin-top:10px;min-height:0}#error:empty{display:none}#question.question-enter{animation:question-in .32s ease both}@keyframes question-in{from{opacity:.3;transform:translateY(9px)}to{opacity:1;transform:none}}
.hotel-showcase{max-width:1360px;margin:24px auto 0}.showcase-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 5px 14px}.showcase-heading>span{font-size:11px;letter-spacing:1.6px;font-weight:600}.carousel-controls{display:flex;gap:7px;align-items:center}.carousel-controls button{border:1px solid var(--line);background:#fff;border-radius:6px;min-width:36px;height:34px;padding:0 10px;font-size:16px}.carousel-controls #hotels-pause{font-size:12px}.carousel-controls button:hover{background:var(--warm);border-color:#bbb}.hotel-viewport{overflow-x:auto;scrollbar-width:none;border-radius:10px}.hotel-viewport::-webkit-scrollbar{display:none}.hotel-track{display:flex;gap:16px;width:max-content}.hotel-card{flex:none;width:244px;background:#fff;border:1px solid #e9e8e3;border-radius:10px;overflow:hidden;transition:box-shadow .3s}.hotel-card:hover{box-shadow:0 8px 24px #17171712}.hotel-card img{width:100%;height:117px;object-fit:cover;display:block;transition:transform .5s}.hotel-card:hover img{transform:scale(1.035)}.hotel-card>div{padding:11px 13px}.hotel-card h3{font-size:15px;letter-spacing:-.2px;margin:0 0 2px;font-weight:600}.hotel-card p{font-size:12px;margin:0;color:var(--muted)}#hotel-disclaimer{font-size:12px;color:#6a6861;max-width:none;margin:11px 5px 0}
.section{padding:90px max(6vw,24px);max-width:1600px;margin:auto}h1,h2{font-size:clamp(35px,4.3vw,62px);font-weight:500;margin-bottom:28px}em{font-family:inherit;font-style:normal;font-weight:450}.eyebrow{font-size:11px;letter-spacing:1.9px;margin-bottom:24px}.about{padding-top:75px}.section-heading{margin-bottom:45px}.about-grid{grid-template-columns:.95fr 1.05fr}.identity-composition{align-self:start;position:sticky;top:40px}.identity-wordmark{padding:38px;background:var(--warm);border-radius:14px}.identity-wordmark>span:first-child{font-size:12px;letter-spacing:3px}.identity-wordmark p{font-size:clamp(30px,3.1vw,46px);line-height:1.15;letter-spacing:-1.8px;margin:42px 0;color:#64645d}.identity-wordmark strong{color:var(--ink);font-weight:500}.identity-signature{font:italic 29px Georgia,serif;color:var(--gold)}.credentials{display:flex;gap:24px;padding:25px 2px}.credentials span{font-size:13px;color:var(--muted);flex:1}.credentials strong{display:block;font-size:16px;color:var(--ink);font-weight:600}.asset-note{font-size:13px;color:#65635b;line-height:1.5;margin-top:8px}.about-copy .lead{font-size:27px;letter-spacing:-.6px}.personal-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px}.personal-photos figure{margin:0;border-radius:10px;overflow:hidden;aspect-ratio:1.2;position:relative}.personal-photos figure[hidden]{display:none}.personal-photos figure[data-photo=retrato]{grid-column:1/-1;aspect-ratio:4/5}.personal-photos img{width:100%;height:100%;object-fit:cover;display:block}.identity-composition.has-portrait .identity-wordmark{display:none}.services{background:linear-gradient(120deg,#f8f7f3,#fff 65%);border-radius:24px}.service-list article{padding:26px 0}.service-list h3{margin-bottom:13px}
.journey{background:#fff;overflow:hidden;padding-top:95px}.transition{max-width:860px;margin-bottom:60px}.journey-track{margin:60px 0;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.journey-track li{padding:0;min-width:0}.journey-track li:nth-child(even){padding-top:40px}.journey-track li:after{display:none}.journey-step h3{font-size:23px;margin:24px 0 12px}.journey-step p{font-size:16px;line-height:1.6}.journey-connector{position:absolute;right:-23px;top:225px;color:var(--gold);font-size:30px;line-height:1;transform-origin:left;transition:opacity .6s .25s,transform .7s .25s}.mini-ui{height:205px;background:#fff;border:1px solid #e7e5e0;border-radius:12px;box-shadow:0 12px 25px #26302a0a;overflow:hidden;transition:transform .4s,box-shadow .4s;pointer-events:none}.journey-step:hover .mini-ui{transform:translateY(-8px) rotate(-1deg);box-shadow:0 22px 30px #26302a14}.mini-ui svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none}.mini-search{display:flex;gap:6px;align-items:center;padding:10px 7px;font-size:10px;background:#f6f6f3;margin:9px;border-radius:5px}.search-ui>img{width:100%;height:112px;object-fit:cover;display:block}.mini-result{font-size:10px;padding:10px;display:flex;justify-content:space-between}.mini-toolbar{font-size:10px;padding:14px 10px;font-weight:600;display:flex;justify-content:space-between}.compare-options{padding:0 9px;display:grid;grid-template-columns:1fr 1fr;gap:7px}.compare-options img{width:100%;height:100px;object-fit:cover;border-radius:5px;display:block}.compare-options span{font-size:9px;line-height:1.2;display:block;margin-top:9px;font-weight:600}.compare-options small{font-size:8px;line-height:1.4;display:block;margin-top:5px;color:#65635b}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:0 8px}.photo-grid img{width:100%;height:58px;object-fit:cover}.photo-grid img:first-child{grid-row:1/3;height:119px}.mini-tags{display:flex;gap:6px;padding:9px;font-size:9px}.mini-tags span{background:#f3f1eb;padding:2px 7px;border-radius:3px}.chat-ui{background:#f8f8f5;padding-bottom:10px}.chat-bubble{padding:10px;margin:7px 20px 9px 9px;border-radius:8px 8px 8px 0;background:#fff;font-size:10px;box-shadow:0 1px 3px #17171708}.chat-bubble.reply{background:#eee9dc;margin:0 9px 12px 27px;border-radius:8px 8px 0 8px}.chat-compose{background:white;margin:0 9px;padding:9px;border-radius:6px;font-size:9px;color:#666;display:flex;justify-content:space-between}.booking-ui>img{width:100%;height:135px;object-fit:cover;display:block}.booking-confirm{display:flex;align-items:center;gap:8px;font-size:10px;padding:13px 10px;line-height:1.6}.booking-confirm svg{color:var(--gold);width:25px;height:25px}.booking-confirm strong{font-weight:600}.journey-end{max-width:none;margin:0;display:grid;grid-template-columns:1.8fr 1fr;gap:50px;background:var(--warm);border-radius:12px;padding:32px}.journey-end p{font-size:20px;margin:0}.journey-end small{font-size:13px;line-height:1.6;align-self:center}
.price-block{background:var(--warm);border-radius:16px;padding:36px}.price-block>span{font-size:11px}.fine{font-size:13px}.closing{background:#fff;color:var(--ink);display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;align-items:center;padding-top:60px;padding-bottom:95px}.closing-photo{height:540px;margin:0;border-radius:14px;overflow:hidden}.closing-photo img{height:100%;width:100%;object-fit:cover;transition:transform 1s}.closing-photo:hover img{transform:scale(1.04)}.closing h2{font-size:clamp(36px,4vw,58px)}.closing em{color:var(--gold)}.closing .eyebrow{color:var(--ink)}.closing p{color:#444}.closing-actions{align-items:flex-start;flex-direction:column;gap:25px;margin-top:30px}footer{background:var(--warm)}.js-motion .reveal{transform:translateY(38px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}.js-motion .reveal.visible{transform:none}.js-motion .journey-step:not(.visible) .journey-connector{opacity:0;transform:translateX(-20px) scale(.6)}
@media(min-width:1600px){.section{padding-left:96px;padding-right:96px}}@media(max-width:1100px){.journey-track{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.journey-track li:nth-child(even){padding-top:0}.journey-step:nth-child(3) .journey-connector{display:none}.mini-ui{max-width:290px}.journey-connector{top:222px;right:-25px}.about-grid,.services,.plans{gap:45px}.closing{gap:35px}}
@media(max-width:800px){.about-grid{grid-template-columns:1fr}.identity-composition{position:static}.journey-track li{padding-left:0;min-height:0}.closing{grid-template-columns:1fr 1fr}.closing-photo{height:440px}}
@media(max-width:700px){.section{padding:60px 22px}h1,h2{letter-spacing:-1.5px}.intake{padding:0 12px 25px}.intake header{height:78px;padding:0 9px}.brand{font-size:30px}.brand b{font-size:8px}.header-contact{font-size:13px}.hero-stage{min-height:390px;padding:32px 15px;border-radius:12px}.hero-photo img{object-position:53% 65%}.form-shell{padding:23px 21px;border-radius:10px;margin:0}.form-top{font-size:10px;letter-spacing:1px}.question-title{font-size:26px}.progress{margin-bottom:26px}.field{font-size:17px;padding:12px}.field::placeholder{font-size:14px}.button{padding:14px 17px;font-size:15px}.hotel-showcase{margin-top:20px}.showcase-heading{gap:12px}.showcase-heading>span{font-size:9px;letter-spacing:1px;max-width:200px}.carousel-controls{gap:4px}.carousel-controls button{min-width:30px;height:32px;padding:0 7px}.hotel-card{width:215px}.hotel-card img{height:110px}#hotel-disclaimer{font-size:11px;line-height:1.5}.services,.plans,.closing{grid-template-columns:1fr;gap:35px}.identity-wordmark{padding:28px}.identity-wordmark p{margin:28px 0;font-size:38px}.identity-wordmark p br:first-child{display:none}.about-copy .lead{font-size:25px}.section-heading{margin-bottom:30px}.about{padding-top:40px}.services{border-radius:0}.service-list article{padding:22px 0}.transition{font-size:22px;margin-bottom:45px}.journey-track{grid-template-columns:1fr;gap:33px;margin:40px 0}.journey-track li{display:grid;grid-template-columns:150px 1fr;column-gap:20px;align-items:start;min-height:180px}.mini-ui{width:150px;height:180px;grid-column:1;grid-row:1/3}.journey-step h3{grid-column:2;margin:8px 0 10px;font-size:22px}.journey-step p{grid-column:2;font-size:14px;margin:0}.journey-connector{display:none}.journey-track li:nth-child(even){grid-template-columns:1fr 150px}.journey-step:nth-child(even) .mini-ui{grid-column:2}.journey-step:nth-child(even) h3,.journey-step:nth-child(even) p{grid-column:1}.mini-search{font-size:8px;padding:8px 5px;margin:7px}.search-ui>img{height:101px}.mini-result{font-size:8px;padding:9px}.mini-toolbar{font-size:8px;padding:12px 8px}.compare-options img{height:85px}.compare-options small{font-size:7px}.compare-options span{font-size:8px}.photo-grid img{height:51px}.photo-grid img:first-child{height:105px}.chat-bubble{font-size:9px;padding:8px;margin-right:13px}.chat-bubble.reply{margin-left:17px}.chat-compose{padding:8px;font-size:8px}.booking-ui>img{height:110px}.booking-confirm{font-size:9px;padding:12px 7px;gap:5px}.journey-end{grid-template-columns:1fr;gap:20px;padding:24px}.journey-end p{font-size:18px}.price-block{padding:27px}.closing-photo{height:330px}.closing{padding-top:25px}.closing-photo img{object-position:50% 60%}}
@media(prefers-reduced-motion:reduce){.js-motion .reveal{opacity:1;transform:none}.js-motion .journey-step:not(.visible) .journey-connector{opacity:1;transform:none}}
