/* GA accommodation and utility pages: Archivo, white, charcoal and GA red. */
.ga-design{font-family:Archivo,Arial,Helvetica,sans-serif;color:#444;max-width:1200px;margin-inline:auto}
.ga-lodge-redesign #main,.single-mphb_room_type #main,.ga-utility-redesign #main{font-family:Archivo,Arial,Helvetica,sans-serif}
.ga-room-layout,.ga-room-layout :is(p,label,input,select,button,a,li,span),.ga-room-breadcrumb,.ga-room-facts{font-family:Archivo,Arial,Helvetica,sans-serif!important}
.ga-design h1,.ga-design h2,.ga-design h3{font-family:Archivo,Arial,Helvetica,sans-serif!important;text-transform:none!important}
.ga-design.ga-availability-panel{width:100%;box-sizing:border-box}
.ga-availability-panel .mphb_sc_search-submit-button-wrapper input[type=submit]{background:#CD1227!important;color:#fff!important;border:1px solid #CD1227!important;font-weight:700;min-height:48px;padding:12px 22px}
.ga-design h1,.ga-design h2,.ga-design h3{font-family:inherit;color:#222;text-transform:none;letter-spacing:-.035em}
.ga-design h1{font-size:clamp(36px,4.6vw,62px)!important;line-height:1.06!important;margin:18px 0 24px!important}
.ga-design h2{font-size:clamp(28px,3.3vw,42px)!important;line-height:1.12!important;margin:12px 0 20px!important}
.ga-design h3{font-size:28px!important;line-height:1.2!important;margin:0 0 10px!important}
.ga-design p{font-size:17px;line-height:1.7;margin:0 0 20px}
.ga-eyebrow{color:#CD1227!important;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1.5;display:inline-block}
.ga-stay-hero{display:grid;grid-template-columns:1fr 1.12fr;gap:56px;align-items:center;padding:32px 0 46px}
.ga-hero-copy>p{max-width:470px;font-size:18px}
.ga-hero-image{position:relative;min-width:0}
.ga-hero-image img{display:block;width:100%;height:430px;object-fit:cover;border-radius:16px}
.ga-photo-caption{position:absolute;bottom:20px;left:20px;background:#fff;color:#222;padding:8px 12px;border-radius:4px;font-size:12px;font-weight:600;max-width:calc(100% - 40px)}
.ga-action-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}
.ga-text-link{font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.ga-lodge-nav{display:flex;gap:32px;flex-wrap:wrap;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5;padding:18px 0;margin-bottom:40px}
.ga-lodge-nav a{font-size:15px;font-weight:600;color:#444}
.ga-lodge-nav a[aria-current=page]{color:#CD1227;text-decoration:underline;text-underline-offset:8px}
.ga-availability-panel{padding:32px 36px;background:#f7f6f3;border:1px solid #e8e5df;border-radius:16px;margin-bottom:64px;scroll-margin-top:30px}
.ga-panel-intro,.ga-section-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:24px}
.ga-panel-intro h2{margin-bottom:0!important;font-size:32px!important}
.ga-panel-intro p,.ga-section-heading>p{font-size:15px;max-width:340px;margin:0}
.ga-availability-panel .mphb_sc_search-form{grid-template-columns:1.3fr 1.3fr .7fr .8fr auto;gap:16px}
.ga-availability-panel input,.ga-availability-panel select{background:#fff;border-radius:4px;border:1px solid #ccc;font-family:inherit!important;font-size:16px!important}
.ga-availability-panel .mphb-required-fields-tip{display:none}
.ga-availability-panel label{font-size:13px;line-height:1.5;color:#222}
.ga-room-collection{margin-bottom:64px}
.ga-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px}
.ga-room-card{border:1px solid #e5e5e5;border-radius:16px;overflow:hidden;background:#fff;min-width:0}
.ga-card-photo{display:block;position:relative;overflow:hidden}
.ga-card-photo img{display:block;width:100%;height:300px;object-fit:cover;transition:transform .2s}
.ga-card-photo:hover img{transform:scale(1.025)}
.ga-card-photo>span{position:absolute;top:18px;left:18px;background:#fff;padding:7px 12px;border-radius:4px;font-size:12px;color:#222;font-weight:700}
.ga-card-copy{padding:28px}
.ga-card-copy h3 a{color:#222}
.ga-card-copy p{font-size:16px;line-height:1.65}
.ga-card-copy .ga-card-view{color:#CD1227;font-size:13px;font-weight:600;margin-bottom:16px}
.ga-bed-detail{border-top:1px solid #eee;padding-top:18px;font-weight:600;color:#222;font-size:14px!important}
.ga-card-link{display:flex;justify-content:space-between;gap:12px;font-size:15px;font-weight:700;color:#CD1227}
.ga-stay-notes{display:grid;grid-template-columns:1fr 1fr;gap:64px;border-top:1px solid #ddd;padding:40px 0 24px;margin-bottom:32px}
.ga-stay-notes a{font-size:15px;line-height:2;text-decoration:underline;text-underline-offset:4px}
.ga-lodge-redesign #main{padding-top:24px}
.ga-lodge-redesign .ga-lodge-booking-page{padding-top:24px!important;padding-bottom:48px!important}
.ga-lodge-redesign .page>.post-slideshow{display:none}
.ga-booking-heading h1{font-family:Archivo,Arial,Helvetica,sans-serif!important;text-transform:none!important}
.ga-lodge-redesign .ga-design-shell>.fusion-builder-row>.fusion-layout-column{margin-bottom:0!important}
.ga-lodge-redesign .ga-lodge-content{padding-top:32px!important;padding-bottom:32px!important}
.ga-lodge-redesign .ga-lodge-content .fusion-title h1{font-size:48px!important}
.ga-lodge-redesign .ga-lodge-content .fusion-title h2{font-size:36px!important;line-height:1.15!important}
.ga-lodge-redesign .ga-lodge-content .fusion-text{font-size:17px;line-height:1.75}
.ga-lodge-redesign .ga-editorial-copy{max-width:820px;margin-inline:auto}
.ga-lodge-redesign .ga-editorial-copy h2,.ga-lodge-redesign .ga-editorial-copy h3{font-size:28px;line-height:1.25;margin-top:32px}
.ga-lodge-redesign .ga-editorial-copy>p{margin-bottom:24px}
.ga-lodge-redesign .ga-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0 0 48px}
.ga-feature-grid>section{padding:28px;border:1px solid #e5e5e5;border-radius:12px}
.ga-feature-grid h2,.ga-feature-grid h3{font-size:24px!important;margin:0 0 14px!important}
.ga-feature-grid p,.ga-feature-grid li{font-size:16px;line-height:1.7}
.ga-lodge-redesign .ga-editorial-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:40px}
.ga-editorial-media .fusion-imageframe{width:100%!important;display:block!important;margin:0!important}
.ga-editorial-media .fusion-imageframe img{width:100%;height:320px;object-fit:cover;border-radius:16px}
.ga-lodge-redesign .fusion-gallery .fusion-gallery-image img{height:260px;object-fit:cover;width:100%;border-radius:12px}
.ga-booking-heading{margin:8px 0 32px;padding-bottom:28px;border-bottom:1px solid #ddd}
.ga-booking-heading h1{font-size:clamp(32px,4vw,48px)!important;line-height:1.12!important;margin:12px 0 16px!important;letter-spacing:-.03em;text-transform:none}
.ga-booking-heading p{max-width:720px;font-size:17px;line-height:1.7}
.ga-booking-heading .ga-action-row{margin-top:20px}
.ga-utility-redesign .woocommerce,.ga-lodge-redesign [class$="checkout-wrapper"],.ga-lodge-redesign .mphb_sc_account-wrapper{font-family:Archivo,Arial,Helvetica,sans-serif}
.ga-utility-redesign .woocommerce :is(input,select,textarea),.ga-lodge-redesign :is(.mphb_sc_account-wrapper,.mphb_sc_checkout-wrapper) :is(input,select,textarea){font-family:inherit;font-size:16px;min-height:46px;border-radius:4px}
.ga-utility-redesign .woocommerce :is(button,.button,input[type=submit]),.ga-lodge-redesign .mphb_sc_account-wrapper :is(button,.button,input[type=submit]){background:#CD1227;color:#fff;border-radius:4px;border:1px solid #CD1227;padding:12px 22px;font-size:16px;font-weight:700}
.ga-utility-redesign .woocommerce :is(form.login,form.register),.ga-lodge-redesign .mphb_sc_account-wrapper form{background:#f8f8f7;border:1px solid #e5e5e5;border-radius:12px;padding:28px;max-width:640px}
.ga-utility-redesign #main{padding-block:40px 64px}
.ga-utility-redesign .woocommerce h2{font-size:28px!important;line-height:1.2!important}
.single-mphb_room_type #main{padding-top:24px}
.single-mphb_room_type .entry-title{font-size:clamp(32px,4vw,50px)!important;line-height:1.1!important;letter-spacing:-.035em;text-transform:none}
.single-mphb_room_type .ga-room-breadcrumb{font-size:13px;margin:24px 0 12px}
.ga-room-facts{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:32px}
.ga-room-facts span{background:#f6f5f2;border:1px solid #e5e2dc;border-radius:4px;padding:8px 12px;font-size:13px;color:#333}
.ga-room-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:56px;align-items:start;margin-bottom:48px}
.ga-room-story{min-width:0;font-size:17px;line-height:1.75}
.ga-room-story h2{font-size:30px!important;line-height:1.2!important;margin-top:32px}
.ga-room-reserve{position:sticky;top:24px;border:1px solid #e1ded8;background:#f8f7f4;border-radius:16px;padding:28px;min-width:0}
.ga-room-reserve h2{font-size:28px!important;line-height:1.2!important;margin:0 0 20px}
.ga-room-reserve .mphb-regular-price{font-size:17px;border-bottom:1px solid #ddd;padding-bottom:20px}
.ga-room-reserve label{font-size:14px;font-weight:600}
.ga-room-reserve input:not([type=hidden]){width:100%;min-height:48px;font-size:16px;border-radius:4px}
.ga-room-reserve label+br{display:none}
.ga-room-reserve .mphb-booking-form{margin:0}
.ga-booking-help{font-size:13px;line-height:1.6;margin:20px 0 0;color:#555}
.ga-room-story .gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ga-room-story .gallery .gallery-item{float:none!important;width:auto!important;margin:0!important}
.ga-room-story .gallery br{display:none}
.ga-room-story .gallery img{width:100%;height:145px;object-fit:cover;border:0!important;border-radius:8px}
.ga-room-story .gallery .gallery-icon{margin:0}
.ga-room-story .mphb-single-room-type-attributes{padding:24px 24px 24px 42px;background:#f8f8f7;border-radius:12px;font-size:15px;line-height:1.8}
.ga-room-story .mphb-calendar{max-width:100%;overflow:auto}
.ga-design a:focus-visible,.ga-room-layout :is(a,button,input,select):focus-visible{outline:2px solid #CD1227;outline-offset:4px}
@media(max-width:1000px){.ga-stay-hero{gap:32px}.ga-hero-image img{height:380px}.ga-availability-panel .mphb_sc_search-form{grid-template-columns:1fr 1fr}.ga-availability-panel .mphb_sc_search-submit-button-wrapper{grid-column:1/-1}.ga-room-layout{grid-template-columns:minmax(0,1fr) 320px;gap:28px}.ga-room-reserve{padding:22px}.ga-room-grid{gap:24px}}
@media(max-width:760px){.ga-stay-hero{grid-template-columns:1fr;gap:28px;padding:24px 0 28px}.ga-design h1{font-size:40px!important}.ga-hero-image img{height:300px}.ga-lodge-nav{gap:16px 24px;margin-bottom:28px}.ga-panel-intro,.ga-section-heading{display:block}.ga-panel-intro>p,.ga-section-heading>p{margin-top:16px;max-width:none}.ga-availability-panel{padding:24px;margin-bottom:40px}.ga-room-grid,.ga-stay-notes,.ga-lodge-redesign .ga-feature-grid{grid-template-columns:1fr}.ga-card-photo img{height:260px}.ga-card-copy{padding:24px}.ga-room-collection{margin-bottom:40px}.ga-stay-notes{gap:20px;padding-top:28px}.ga-room-layout{grid-template-columns:1fr;gap:32px}.ga-room-reserve{position:static;grid-row:1}.ga-room-story .gallery img{height:120px}.ga-lodge-redesign .ga-editorial-media{grid-template-columns:1fr 1fr;gap:12px}.ga-editorial-media .fusion-imageframe img{height:190px}.ga-lodge-redesign .ga-lodge-content .fusion-title h2{font-size:30px!important}.ga-lodge-redesign .fusion-gallery .fusion-gallery-image img{height:240px}.ga-booking-heading{margin-top:0}.ga-room-facts{margin-bottom:24px}.ga-utility-redesign .woocommerce form.login{padding:22px}.ga-lodge-redesign .ga-lodge-booking-page{padding-top:24px!important}}
@media(max-width:420px){.ga-design h1{font-size:36px!important}.ga-hero-image img{height:260px}.ga-action-row{gap:18px}.ga-availability-panel{padding:20px}.ga-availability-panel .mphb_sc_search-form{grid-template-columns:1fr}.ga-hero-copy>p{font-size:17px}.ga-card-copy h3{font-size:25px!important}.ga-room-story .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.ga-photo-caption{font-size:11px}}
@media(prefers-reduced-motion:reduce){.ga-card-photo img{transition:none}}
@media(min-width:360px) and (max-width:420px){.ga-availability-panel .mphb_sc_search-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.ga-availability-panel .mphb_sc_search-form label{font-size:12px}.ga-availability-panel .mphb_sc_search-submit-button-wrapper{grid-column:1/-1}.ga-availability-panel .mphb_sc_search-submit-button-wrapper input{width:100%}}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-recommendation-title{font-size:26px!important;line-height:1.2!important;text-transform:none!important}
.ga-lodge-redesign .mphb-recommendation{background:#f7f6f3;border:1px solid #e3dfd8;border-radius:12px;padding:24px;margin-bottom:28px}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.5fr);column-gap:32px;row-gap:12px;padding:24px;border:1px solid #e5e5e5;border-radius:16px;margin-bottom:28px;align-items:start}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type> *{grid-column:2;margin-top:0;margin-bottom:0;min-width:0}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type>.mphb-room-type-images{grid-column:1;grid-row:1/span 9;width:100%;min-width:0;overflow:hidden;border-radius:12px}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type-title{font-size:28px!important;line-height:1.2!important;text-transform:none!important}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type-title a{color:#222}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type-details-title{display:none}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-loop-room-type-attributes{list-style:none;padding:0;font-size:14px;line-height:1.8}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-loop-room-type-attributes :is(.mphb-room-type-facilities,.mphb-room-type-categories){display:none}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type p{font-size:16px;line-height:1.6}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type .mphb-regular-price{font-size:18px;margin:6px 0}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type .mphb-gallery-main-slider{margin:0;border:0;background:#f6f6f6;border-radius:12px}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type .flex-viewport{height:300px!important}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type-images img{height:300px!important;object-fit:cover;width:100%}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-gallery-thumbnail-slider{display:none}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-reserve-room-section{padding-top:4px}
.ga-lodge-redesign .mphb_sc_search_results-wrapper :is(button,.button){min-height:46px;background:#CD1227;color:#fff;border:1px solid #CD1227;border-radius:4px;padding:12px 22px;font-size:15px;font-weight:700;font-family:Archivo,Arial,Helvetica,sans-serif}
.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-view-details-button{display:inline-block;background:#fff;color:#CD1227}
@media(max-width:700px){.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type{grid-template-columns:minmax(0,1fr);gap:16px;padding:20px}.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type> *{grid-column:1}.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type>.mphb-room-type-images{grid-row:1;grid-column:1}.ga-lodge-redesign .mphb_sc_search_results-wrapper .mphb-room-type-title{font-size:25px!important}.ga-lodge-redesign .mphb-recommendation{padding:20px}}
/* Client readability review: use GA ink for lodge prose and strong calendar headers. */
.ga-lodge-redesign #main .ga-lodge-content .fusion-text,
.ga-lodge-redesign #main .ga-lodge-content .fusion-text :is(p,li),
.single-mphb_room_type #main .ga-room-story{color:#222222}
.ga-lodge-redesign #main .ga-lodge-content .fusion-text a:not(.fusion-button),
.single-mphb_room_type #main .ga-room-story p a{text-decoration:underline;text-underline-offset:3px}
.mphb-calendar .datepick-month :is(thead,th),
.datepick-popup .datepick-month :is(thead,th){background:#444444!important;color:#FFFFFF!important}
.mphb-calendar .datepick-month th *,
.datepick-popup .datepick-month th *{color:#FFFFFF!important}
.ga-lodge-video-link a{display:inline-block;padding-block:10px;min-height:44px;box-sizing:border-box;color:#CD1227;text-decoration:underline;text-underline-offset:4px}
