/* The two entry pages continue the rooms and typography of the main story. */
.entry-hero{min-height:min(790px,96svh)}
.entry-hero:before{background-position:center 48%;transform:scale(1.025);transition:transform 1.2s ease}
.entry-hero:hover:before{transform:scale(1.05)}
.entry-hero:after{background:linear-gradient(90deg,rgba(47,29,41,.96) 0%,rgba(47,29,41,.91) 29%,rgba(47,29,41,.64) 57%,rgba(47,29,41,.12) 100%)}
.entry-hero-inner{padding-top:174px;padding-bottom:126px}
.entry-hero h1{font-size:clamp(57px,6.4vw,98px);line-height:1.06;max-width:860px;padding-bottom:.09em}
.entry-hero-copy{font-size:15px;max-width:590px;margin-top:20px}
.entry-hero-mark{bottom:70px;font-size:28px}
.entry-intro{position:relative;isolation:isolate;overflow:hidden;padding:120px 0 106px;background:#f5ece2}
.entry-intro:before{content:"";position:absolute;inset:0 0 auto auto;width:min(52vw,710px);height:490px;z-index:-1;background:radial-gradient(ellipse at 70% 25%,rgba(231,182,163,.26),transparent 68%)}
.entry-intro:after{content:"";position:absolute;right:-170px;bottom:-200px;width:500px;height:500px;border:1px solid rgba(88,52,66,.1);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.06),0 0 0 165px rgba(255,255,255,.05);pointer-events:none;z-index:-1}
.entry-intro-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(54px,7vw,120px);align-items:end}
.entry-heading{line-height:1.11;padding-bottom:.08em}
.entry-heading--feature{font-size:clamp(54px,5.3vw,86px);max-width:680px;line-height:1.03}
.entry-heading--feature em{background:linear-gradient(105deg,#8c5860,#c57a63 51%,#879d8d 94%);-webkit-background-clip:text;background-clip:text}
.entry-intro .entry-heading em{background:linear-gradient(105deg,#87545e 5%,#bd7869 58%,#7b9689 100%);-webkit-background-clip:text;background-clip:text}
.entry-heading-dot{color:#bd7a6d}
.entry-heading-swish{display:block;width:190px;height:30px;margin:-4px 0 0 42%;border-top:2px solid #c98678;border-radius:50% 50% 0 0;transform:rotate(-7deg)}
.entry-intro-lead{margin:0 0 13px;max-width:470px;font-size:15px;line-height:1.85}
.entry-steps{margin-top:72px;gap:30px}
.entry-step{position:relative;min-height:0;padding:28px 8px 10px 0;border:0;border-top:1px solid rgba(81,56,67,.28);border-radius:0;background:transparent;box-shadow:none}
.entry-step span{display:grid;place-items:center;width:52px;height:52px;margin:-55px 0 26px;border-radius:50%;border:1px solid rgba(81,56,67,.3);background:#f5ece2;color:#94575e;font:600 11px/1 Montserrat,Arial,sans-serif}
.entry-step h3{max-width:320px;font-size:clamp(30px,2.8vw,42px);line-height:1.05}
.entry-step p{max-width:320px;color:#6a5056;font-size:13px;line-height:1.75}
.entry-hairline{margin-top:63px}
.entry-conversion{position:relative;isolation:isolate;overflow:hidden;padding:108px 0 110px;background:linear-gradient(135deg,#dce4d8,#e9e9df 48%,#f5e9dd);color:#4e2834}
.entry-conversion:before{content:"";position:absolute;z-index:-1;left:-16%;top:-36%;width:800px;height:800px;border:1px solid rgba(78,40,52,.1);border-radius:50%;box-shadow:0 0 0 85px rgba(255,255,255,.065),0 0 0 180px rgba(255,255,255,.045);pointer-events:none}
.entry-conversion-head{max-width:920px;margin-bottom:55px}
.entry-conversion-head .entry-heading{max-width:none;font-size:clamp(57px,5.4vw,84px)}
.entry-conversion-head .entry-heading em{background:linear-gradient(105deg,#8c5860,#c57a63 51%,#879d8d 94%);-webkit-background-clip:text;background-clip:text}
.entry-conversion-head .entry-kicker{color:#85535d}
.entry-conversion-head p:not(.entry-kicker){color:#58464d;font-size:14px;margin-top:12px}
.entry-form-layout{display:grid;grid-template-columns:minmax(235px,.52fr) minmax(0,1fr);max-width:1080px;margin:auto;align-items:stretch;box-shadow:0 32px 80px rgba(78,40,52,.11);border:1px solid rgba(78,40,52,.14);border-radius:24px;overflow:hidden}
.entry-form-aside,.entry-booking-intro{position:relative;overflow:hidden;padding:49px 35px;background:#4e2834;color:#f9f0e6;display:flex;flex-direction:column;align-items:flex-start}
.entry-form-aside:after,.entry-booking-intro:after{content:"";position:absolute;left:-34%;bottom:-35%;width:400px;height:400px;border:1px solid rgba(249,240,230,.2);border-radius:50%;box-shadow:0 0 0 54px rgba(249,240,230,.04),0 0 0 115px rgba(249,240,230,.035)}
.entry-form-aside-mark,.entry-booking-symbol{font:60px/1 Boska,Georgia,serif;color:#e8b8a7}
.entry-form-aside p,.entry-booking-intro p{position:relative;z-index:1;margin:60px 0 16px;font:400 clamp(38px,3.15vw,52px)/1.04 Boska,Georgia,serif}
.entry-form-aside>span:not(.entry-form-aside-mark),.entry-booking-intro>span:not(.entry-booking-symbol){position:relative;z-index:1;font-size:12px;line-height:1.8;color:#e7d8d1}
.entry-form-aside small,.entry-booking-intro small{position:relative;z-index:1;margin-top:auto;padding-top:45px;text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:#e4b8a8}
.entry-form-panel{padding:46px clamp(30px,4vw,60px) 50px;background:#fcf8f3}
.entry-form-label{margin:0 0 31px;color:#85535d;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.entry-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 22px}
.entry-field-grid label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:600;color:#513843}
.entry-field-grid label span{font-weight:400}
.entry-field-wide{grid-column:1/-1}
.entry-field-grid input,.entry-field-grid textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid #cfbeb5;border-radius:7px;background:#fffdf9;color:#332630;font:400 13px/1.5 Montserrat,Arial,sans-serif;outline:none;transition:border-color .2s,box-shadow .2s}
.entry-field-grid textarea{resize:vertical;min-height:94px}
.entry-field-grid input:focus,.entry-field-grid textarea:focus{border-color:#915f66;box-shadow:0 0 0 3px rgba(145,95,102,.12)}
.entry-consents{display:grid;gap:17px;margin:28px 0 24px}
.entry-consents label{display:grid;grid-template-columns:19px 1fr;gap:10px;align-items:start;color:#5d4b52;font-size:10px;line-height:1.6;cursor:pointer}
.entry-consents input{accent-color:#68453f;width:15px;height:15px;margin:2px 0 0}
.entry-consents a{text-decoration-thickness:1px;text-underline-offset:2px}
.entry-submit{border:0;cursor:pointer;margin-top:18px;justify-content:space-between;min-width:230px}
.entry-submit:disabled{cursor:not-allowed;opacity:.55}
.entry-form-status{min-height:24px;margin:10px 0 0;color:#78494f;font-size:11px}
.entry-form-panel .rmBase__comp--captcha{min-height:48px}
.entry-fallback,.entry-note{color:#624c53}
.entry-fallback{margin-top:24px}
.entry-booking-layout{display:grid;grid-template-columns:minmax(225px,.4fr) minmax(0,1fr);max-width:1110px;margin:auto;border:1px solid rgba(78,40,52,.12);border-radius:24px;overflow:hidden;box-shadow:0 32px 80px rgba(78,40,52,.1)}
.entry-booking-intro{background:#604450}
.entry-booking-intro p{font-size:clamp(36px,3vw,49px)}
.entry-booking-layout .entry-frame-card{max-width:none;margin:0;padding:0;border:0;border-radius:0;background:#f7f1e9;box-shadow:none}
.entry-booking-layout .entry-frame-window{border-radius:0;background:#f7f1e9}
.entry-booking-layout .booking-frame-window{height:900px}
.entry-booking-layout iframe{background:#f7f1e9}
.entry-other{background:#4e2834;color:#f8eee5;padding:92px 0}
.entry-other .entry-kicker{color:#e7b6a3!important}
.entry-other .entry-heading em{background:linear-gradient(105deg,#f5d7c4,#e9b5a0 48%,#c7d9c8);-webkit-background-clip:text;background-clip:text}
.entry-other .entry-button--dark{background:#e7b6a3;border-color:#e7b6a3;color:#2f1d29}
.entry-other .entry-button--dark:hover{background:#f4d1bf}
.entry-footer{background:#34212d}
@media(max-width:900px){.entry-intro-grid{grid-template-columns:1fr;gap:23px}.entry-intro-lead{max-width:670px}.entry-form-layout{grid-template-columns:220px minmax(0,1fr)}.entry-form-aside{padding:33px 22px}.entry-booking-layout{grid-template-columns:205px minmax(0,1fr)}.entry-booking-intro{padding:34px 23px}.entry-booking-layout .booking-frame-window{height:980px}}
@media(max-width:700px){.entry-header-inner{height:76px}.entry-hero{min-height:0}.entry-hero:before{background-position:61% center}.entry-hero:after{background:linear-gradient(180deg,rgba(47,29,41,.95) 0%,rgba(47,29,41,.91) 55%,rgba(47,29,41,.66) 100%)}.entry-hero-inner{padding:134px 0 103px}.entry-hero h1{font-size:clamp(48px,10.8vw,66px)}.entry-hero-copy{max-width:540px;font-size:13px}.entry-intro{padding:81px 0 77px}.entry-heading--feature{font-size:clamp(49px,10.5vw,65px)}.entry-heading-swish{width:120px;margin-left:48%}.entry-intro-lead{font-size:13px}.entry-steps{margin-top:51px;gap:37px;grid-template-columns:1fr}.entry-step{display:block;padding:24px 0 0}.entry-step span{margin-top:-51px;margin-bottom:18px}.entry-step h3{font-size:32px}.entry-step p{font-size:12px}.entry-hairline{margin-top:40px}.entry-conversion{padding:78px 0 83px}.entry-conversion-head .entry-heading{font-size:clamp(49px,10.7vw,65px)}.entry-form-layout,.entry-booking-layout{display:block;border-radius:18px}.entry-form-aside,.entry-booking-intro{min-height:230px;padding:27px 25px 32px}.entry-form-aside-mark,.entry-booking-symbol{font-size:39px}.entry-form-aside p,.entry-booking-intro p{font-size:39px;margin:20px 0 9px;max-width:360px}.entry-form-aside small,.entry-booking-intro small{padding-top:20px}.entry-form-panel{padding:31px 22px 35px}.entry-booking-layout .booking-frame-window{height:920px}.entry-other{padding:75px 0}.entry-other .entry-heading{font-size:45px}}
@media(max-width:480px){.entry-field-grid{grid-template-columns:1fr;gap:16px}.entry-form-panel{padding:28px 18px 32px}.entry-booking-layout .booking-frame-window{height:980px}}
@media(prefers-reduced-motion:reduce){.entry-hero:before,.entry-field-grid input,.entry-field-grid textarea{transition:none}}

/* A quieter sequence and a light close keep both entry routes in one visual world. */
.entry-intro:after{display:none}
.entry-steps{gap:clamp(24px,3vw,48px)}
.entry-step{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.entry-step span{width:49px;height:49px;margin:0 0 23px;border:1px solid #aebfb1;background:#e2eae0;color:#674b56;font-size:13px}
.entry-form-aside p,.entry-booking-intro p{margin-top:3px}
.entry-other{background:linear-gradient(125deg,#f0e3d8 0%,#e4e8dc 67%,#f4e7db 100%);color:#4e2834}
.entry-other .entry-kicker{color:#895b62!important}
.entry-other .entry-heading em{background:linear-gradient(105deg,#80505f,#ba776b 58%,#788e7c);-webkit-background-clip:text;background-clip:text}
.entry-other .entry-button--dark{background:#4e2834;border-color:#4e2834;color:#fff7ed}
.entry-other .entry-button--dark:hover{background:#714c59}
.entry-footer{background:#f0e3d8;color:#4e2834;border-top:1px solid rgba(78,40,52,.12)}
.entry-footer img{content:url('logo.png')}

@media(max-width:700px){
  .entry-hero{background:#f5e9df;color:#4e2834}
  .entry-hero:before{background-position:62% center;filter:saturate(.95);transform:none}
  .entry-hero:after{background:linear-gradient(180deg,#f5e9df 0%,rgba(245,233,223,.97) 47%,rgba(245,233,223,.89) 66%,rgba(245,233,223,.3) 100%)}
  .entry-logo{content:url('logo.png')}
  .entry-nav{color:#4e2834}
  .entry-nav .entry-nav-pill{border-color:rgba(78,40,52,.5)}
  .entry-kicker{color:#895b62}
  .entry-hero-copy{color:#4f3d45}
  .entry-hero h1 em{background:linear-gradient(105deg,#704556,#aa6665 58%,#5f786c);-webkit-background-clip:text;background-clip:text}
  .entry-button--quiet{color:#4e2834;border-color:rgba(78,40,52,.55)}
  .entry-button--quiet:hover{background:rgba(78,40,52,.07)}
  .entry-conversion:before{display:none}
  .entry-steps{gap:18px;margin-top:44px}
  .entry-step{position:relative;display:grid;grid-template-columns:49px minmax(0,1fr);gap:0 19px;padding:0 0 22px}
  .entry-step:not(:last-child):after{content:"";position:absolute;left:24px;top:56px;bottom:-11px;width:1px;background:#b7c7ba}
  .entry-step span{grid-row:1/3;margin:0}
  .entry-step h3,.entry-step p{grid-column:2}
  .entry-step h3{margin:2px 0 8px}
  .entry-step:last-child{padding-bottom:0}
}

/* Keep the First Look heading and the form invitation within a calm text scale. */
.first-look-page .entry-hero h1{font-size:clamp(48px,5vw,74px);line-height:1.07;max-width:940px}
.first-look-page .entry-form-aside p{font-size:clamp(29px,2.5vw,37px);line-height:1.12;max-width:290px}
@media(max-width:700px){
  .first-look-page .entry-hero h1{font-size:clamp(30px,8.1vw,42px);line-height:1.1;max-width:100%}
  .first-look-page .entry-form-aside p{font-size:clamp(27px,7vw,33px);max-width:315px}
}
