.alm-booking{margin-top:20px;color:#111514;scroll-margin-top:128px}
.stay-enquiry-shell{display:grid;grid-template-columns:minmax(210px,.34fr) minmax(0,1fr);gap:clamp(24px,4vw,58px);align-items:start;margin-top:clamp(44px,7vw,82px);padding:clamp(18px,3vw,34px);border:1px solid rgba(17,21,20,.14);background:#f3f0e9}
.stay-enquiry-shell>header{padding-top:10px}
.stay-enquiry-shell>header h3{margin:10px 0 14px;font-family:Cinzel,Georgia,serif;font-size:clamp(20px,2.1vw,30px);font-weight:500;line-height:1.25}
.stay-enquiry-shell>header p:last-child{margin:0;color:#5c6460;font-size:14px;line-height:1.7}
.stay-enquiry-shell>.alm-booking{margin-top:0}
.alm-booking [hidden]{display:none!important}
.alm-booking *{box-sizing:border-box}
.alm-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.alm-staging-banner{margin:0 0 14px;padding:11px 13px;border:1px solid #c9992f;background:#fff2c9;color:#59430f;font-size:13px;font-weight:700;line-height:1.45;letter-spacing:.02em}
.alm-flow-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:0 0 15px;padding:0;list-style:none}
.alm-flow-progress li{min-width:0}
.alm-flow-progress button{display:flex;align-items:center;gap:7px;width:100%;min-height:48px;border:0;background:#ece9e2;color:#69706c;padding:8px;font:600 12px/1.25 inherit;text-align:left;cursor:pointer}
.alm-flow-progress button:disabled{cursor:default;opacity:1}
.alm-flow-progress b{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border:1px solid currentColor;border-radius:50%;font-size:11px}
.alm-flow-progress span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.alm-flow-progress li.is-complete button{background:#e5efe9;color:#2e6b4d}
.alm-flow-progress li.is-current button{background:#111514;color:#fff}
.alm-booking-status{min-height:0;margin:0 0 12px;font-size:14px}
.alm-booking-status:not(:empty){padding:12px 14px;border-left:3px solid currentColor;background:#fff;line-height:1.55}
.alm-booking-status.success{color:#2e6b4d;background:#edf6f0}
.alm-booking-status.error{color:#8f3734;background:#fbefee}
.alm-booking-status.loading{color:#746345;background:#f7f2e8}
.alm-stage{margin-top:12px;border:1px solid rgba(17,21,20,.15);background:rgba(255,255,255,.82);padding:18px;scroll-margin-top:128px}
.alm-stage-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}
.alm-stage-kicker{display:block;margin-bottom:5px;color:#9a7431;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.alm-stage-heading h4,.alm-confirmation h4{margin:0;font-family:Cinzel,Georgia,serif;font-size:20px;font-weight:500;line-height:1.35}
.alm-stage-heading p{margin:6px 0 0;color:#626a66;font-size:15px;line-height:1.55}
.alm-complete-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border-left:3px solid #a8874d;background:#f7f2e8}
.alm-complete-summary strong{font-size:14px;line-height:1.45}
.alm-complete-summary button,.alm-secondary-action{border:1px solid rgba(17,21,20,.25);background:#fff;color:#111514;padding:10px 13px;font:600 12px/1.2 inherit;cursor:pointer}
.alm-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:9px}
.alm-calendar-head>p{margin:0;color:#59615d;font-size:14px;line-height:1.45}
.alm-calendar-scope{margin:0 0 13px;padding:11px 13px;border-left:3px solid #a8874d;background:#f7f2e8;color:#4f5753;font-size:14px;font-weight:600;line-height:1.55}
.alm-keyboard-help{margin:-2px 0 9px;color:#737a76;font-size:12px;line-height:1.5}
.alm-calendar-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.alm-calendar-actions button{min-width:40px;height:40px;border:1px solid rgba(17,21,20,.22);background:#fff;color:#111514;padding:0 10px;font:600 13px/1 inherit;cursor:pointer}
.alm-calendar-actions .alm-clear-dates{width:auto;color:#6d5a37;font-size:11px}
.alm-calendar-actions button:disabled{opacity:.32;cursor:not-allowed}
.alm-calendar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:3px 0}
.alm-calendar article{min-width:0;border:1px solid rgba(17,21,20,.13);background:#fff;padding:11px 9px}
.alm-calendar h5{margin:0 0 8px;text-align:center;font-family:Cinzel,Georgia,serif;font-size:14px;font-weight:500}
.alm-calendar table{width:100%;border-collapse:separate;border-spacing:2px;table-layout:fixed}
.alm-calendar th{padding:0 0 4px;color:#727875;text-align:center;font-size:10px;font-weight:600;text-transform:uppercase}
.alm-calendar th abbr{text-decoration:none}
.alm-calendar td{padding:0;text-align:center;vertical-align:middle}
.alm-calendar td.blank{height:34px}
.alm-calendar td button{position:relative;display:grid;place-items:center;width:100%;min-height:40px;border:0;background:#dbe8df;color:#111514;padding:3px 1px;font:600 12px/1.05 inherit;cursor:pointer}
.alm-calendar td button small{display:block;max-width:100%;margin-top:2px;overflow:hidden;color:inherit;font-size:7px;font-weight:500;line-height:1;opacity:.78;text-overflow:ellipsis;white-space:nowrap}
.alm-calendar td button.busy{background:#e2ded6;color:#777b78}
.alm-calendar td button.checkout-only{background:#f4ead7;color:#5f4a27}
.alm-calendar td button.selected{background:#111514;color:#fff}
.alm-calendar td button.between{box-shadow:inset 0 -3px #a8874d}
.alm-calendar td button:disabled{background:#e2ded6;color:#878984;cursor:not-allowed;opacity:.48}
.alm-calendar-legend{display:flex;justify-content:center;gap:16px;margin-top:10px;color:#646c68;font-size:12px;line-height:1.3;flex-wrap:wrap}
.alm-calendar-legend span{display:flex;align-items:center;gap:5px}
.alm-calendar-legend i{width:10px;height:10px;background:#dbe8df}
.alm-calendar-legend i.busy{background:#e2ded6}
.alm-calendar-legend i.checkout{background:#f4ead7}
.alm-unit-options{margin:0;padding:0;border:0}
.alm-unit-options>div{display:grid;gap:8px}
.alm-unit-option{position:relative;display:grid!important;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:62px;border:1px solid rgba(17,21,20,.18);background:#fff;padding:11px 13px;cursor:pointer}
.alm-unit-option:hover{border-color:#a8874d}
.alm-unit-option.is-selected{border-color:#9a7431;box-shadow:inset 3px 0 #9a7431;background:#fbf8f1}
.alm-unit-option input{width:18px!important;min-height:18px!important;height:18px;margin:0;padding:0;accent-color:#111514}
.alm-unit-option>span{display:grid;gap:3px;min-width:0}
.alm-unit-option strong{font-size:14px;font-weight:650}
.alm-unit-option small{color:#6b726e;font-size:12px}
.alm-unit-option>b{color:#765b2c;font-size:14px;font-weight:650;white-space:nowrap}
.alm-loading-line{margin:0;padding:18px;background:#f7f2e8;color:#625a4d;font-size:14px}
.alm-stay-stage{container-name:alm-stay;container-type:inline-size}
.alm-guest-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));gap:10px;margin-top:14px}
.alm-guest-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:70px;border:1px solid rgba(17,21,20,.14);background:#fff;padding:12px}
.alm-guest-row>div:first-child{display:grid;gap:2px;min-width:0}
.alm-guest-row strong{font-size:15px;line-height:1.3;hyphens:auto;overflow-wrap:anywhere}
.alm-guest-row small{color:#6b726e;font-size:12px;line-height:1.35;hyphens:auto;overflow-wrap:anywhere}
.alm-stepper{display:grid;grid-template-columns:40px 36px 40px;align-items:center;justify-self:end;min-width:116px}
.alm-stepper button{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(17,21,20,.2);background:#f7f5f0;color:#111514;padding:0;font:500 21px/1 Arial,sans-serif;cursor:pointer}
.alm-stepper button:disabled{opacity:.35;cursor:not-allowed}
.alm-stepper output{text-align:center;font-size:16px;font-weight:700}
.alm-guest-total{margin:11px 0 0;padding:11px 12px;background:#edf4ef;color:#285f44;font-size:14px;font-weight:650;text-align:center}
.alm-guest-total.is-error{background:#fbefee;color:#8f3734}
.alm-primary-action{min-height:50px;border:0;background:#111514;color:#fff;padding:14px 18px;font:700 13px/1.3 inherit;letter-spacing:.07em;text-transform:uppercase;cursor:pointer}
.alm-stay-stage .alm-primary-action{width:100%;margin-top:12px}
.alm-primary-action:disabled{opacity:.52;cursor:not-allowed}
.alm-availability-line{display:flex;align-items:center;gap:7px;color:#2e6b4d!important;font-weight:600}
.alm-availability-line i{flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:#2e6b4d}
.alm-price-card{background:#111514;color:#fff;padding:17px}
.alm-price-card>div{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:7px 0;color:#d7d9d7}
.alm-price-card span{font-size:14px;line-height:1.5}
.alm-price-card strong{font-size:15px;text-align:right}
.alm-price-card .saving{color:#e6cf9d}
.alm-price-card .textual{padding-top:10px;border-top:1px solid rgba(255,255,255,.12)}
.alm-price-card .textual strong{max-width:55%;font-weight:500;line-height:1.45}
.alm-price-card .total{margin-top:5px;padding-top:13px;border-top:1px solid rgba(255,255,255,.3);color:#fff}
.alm-price-card .total strong{font-size:20px}
.alm-no-payment{margin:9px 0 0;color:#4d5a53;font-size:13px;font-weight:600}
.alm-nightly-details{margin-top:11px;border-top:1px solid rgba(17,21,20,.14);padding-top:10px}
.alm-nightly-details summary{color:#6d5a37;font-size:13px;font-weight:650;cursor:pointer}
.alm-nightly-details table{width:100%;margin-top:8px;border-collapse:collapse;font-size:12px}
.alm-nightly-details th,.alm-nightly-details td{padding:7px 5px;border-bottom:1px solid rgba(17,21,20,.1);text-align:left}
.alm-nightly-details td{text-align:right;font-weight:650}
.alm-stage-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.alm-enquiry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 13px}
.alm-enquiry label{display:grid;gap:7px;color:#424945;font-size:14px;letter-spacing:.015em}
.alm-enquiry input,.alm-enquiry textarea{width:100%;min-height:48px;border:1px solid rgba(17,21,20,.24);background:#fff;color:#111514;padding:12px;font:inherit}
.alm-enquiry textarea{resize:vertical}
.alm-enquiry .wide{grid-column:1/-1}
.alm-privacy{grid-template-columns:20px 1fr!important;align-items:start}
.alm-privacy input{width:18px!important;min-height:18px!important;height:18px;margin:3px 0 0;padding:0;accent-color:#111514}
.alm-privacy a{color:#745720;font-weight:650;text-decoration:underline;text-underline-offset:3px}
.alm-enquiry>.alm-primary-action{width:100%}
.honeypot{position:absolute!important;left:-10000px!important}
.alm-confirmation{text-align:center;padding:28px 20px}
.alm-confirmation-mark{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 13px;border:2px solid #2e6b4d;border-radius:50%;background:#e5f4ea;color:#2e6b4d;font:700 34px/1 Arial,sans-serif}
.alm-confirmation p{max-width:640px;margin:11px auto;color:#4f5954;font-size:14px;line-height:1.6}
.alm-reference{display:flex;align-items:center;justify-content:center;gap:9px!important;margin:17px auto!important;padding:12px;background:#f7f2e8}
.alm-reference span{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.alm-reference strong{font-size:17px;color:#111514}
.alm-confirmation .alm-primary-action{margin-top:8px}
.alm-direct-terms{margin-top:14px;border:1px solid rgba(168,135,77,.45);background:#f7f2e8;color:#111514}
.alm-direct-terms-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 17px;cursor:pointer;list-style:none;font-family:Cinzel,Georgia,serif;font-size:16px;font-weight:500;letter-spacing:.025em}
.alm-direct-terms-disclosure>summary::-webkit-details-marker{display:none}
.alm-direct-terms-disclosure>summary b{font:400 22px/1 Arial,sans-serif;color:#8b6b34;transition:transform .2s ease}
.alm-direct-terms-disclosure[open]>summary b{transform:rotate(45deg)}
.alm-direct-terms-content{padding:0 17px 16px}
.alm-direct-terms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.alm-direct-terms-grid>div{display:grid;gap:4px;padding:11px 12px;background:rgba(255,255,255,.76)}
.alm-direct-terms-grid span{color:#5b625e;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.alm-direct-terms-grid strong{font-size:15px;font-weight:650}
.alm-cancellation-terms{margin-top:11px;border-top:1px solid rgba(17,21,20,.14);padding-top:10px}
.alm-cancellation-terms summary{color:#6d5a37;font-size:14px;font-weight:650;cursor:pointer}
.alm-cancellation-terms p,.alm-direct-terms-note{margin:8px 0 0;color:#555d59;font-size:14px;line-height:1.6}
.alm-direct-terms-note{padding-top:8px;border-top:1px solid rgba(17,21,20,.1)}
.alm-booking :is(button,input,textarea,summary):focus-visible{outline:3px solid #c99f4f;outline-offset:3px}
.alm-booking-box,.almissum-booking-box{padding:0!important}
.alm-booking-box .lodgify-booking-loading,.alm-booking-box #lodgify-search-bar,.almissum-booking-box .lodgify-booking-loading,.almissum-booking-box #lodgify-search-bar{display:none!important}

/* Responsive booking-section integration.
 * The form needs more horizontal space than the former search widget. Keep
 * long German and Croatian headings inside their copy column and move the
 * editorial copy above the form before either column becomes cramped. */
.home-2026 .availability-layout,.booking-layout,.stay-enquiry-shell{min-width:0}
.home-2026 .availability-copy,.home-2026 .booking-panel,.booking-copy,.booking-panel,.stay-enquiry-shell>header,.stay-enquiry-shell>.alm-booking{min-width:0}
.home-2026 .availability-copy,.booking-copy,.home-2026 .booking-panel,.booking-panel,.stay-enquiry-shell>header{container-type:inline-size}
.home-2026 .availability-copy h2{
  max-width:100%;
  font-size:clamp(36px,4.2vw,62px);
  font-size:clamp(2.25rem,11cqi,3.875rem);
  line-height:1.04;
  hyphens:auto;
  overflow-wrap:anywhere;
}
.booking-copy h2{
  max-width:100%;
  font-size:clamp(34px,3.7vw,54px);
  font-size:clamp(2.125rem,10cqi,3.375rem);
  line-height:1.1;
  hyphens:auto;
  overflow-wrap:anywhere;
}
.home-2026 .booking-panel>h3,.booking-panel>h3,.stay-enquiry-shell>header h3{
  max-width:100%;
  font-size:clamp(26px,2.35vw,35px);
  font-size:clamp(1.625rem,5.5cqi,2.1875rem);
  line-height:1.15;
  hyphens:auto;
  overflow-wrap:anywhere;
}
.alm-booking[data-calendar-months="1"] .alm-calendar{grid-template-columns:minmax(0,1fr)}
.alm-booking[data-calendar-months="2"] .alm-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}
.alm-booking[data-calendar-months="3"] .alm-calendar{grid-template-columns:repeat(3,minmax(0,1fr))}

@container alm-stay (min-width:580px) and (max-width:874px){
  .alm-guest-controls{grid-template-columns:repeat(2,minmax(0,1fr))}
  .alm-guest-row:last-child{grid-column:1/-1}
}
@container alm-stay (max-width:579px){
  .alm-guest-controls{grid-template-columns:minmax(0,1fr)}
  .alm-guest-row:last-child{grid-column:auto}
}

@media(min-width:1341px){
  .home-2026 .availability-layout{grid-template-columns:minmax(460px,.8fr) minmax(720px,1.2fr);gap:clamp(36px,3vw,52px)}
  .booking-layout{grid-template-columns:minmax(390px,.78fr) minmax(720px,1.22fr);gap:clamp(36px,3vw,52px)}
}
@media(max-width:1340px){
  .home-2026 .availability-layout,.booking-layout{grid-template-columns:minmax(0,1fr);align-items:start}
  .home-2026 .availability-layout{gap:clamp(32px,5vw,52px)}
  .home-2026 .availability-copy,.booking-copy{max-width:min(100%,820px)}
  .home-2026 .booking-panel,.booking-panel{width:100%;max-width:none}
}
@media(max-width:1180px){
  .stay-enquiry-shell{grid-template-columns:minmax(0,1fr)}
  .stay-enquiry-shell>header{max-width:760px;padding-top:0}
}

@media(max-width:980px){
  .alm-flow-progress span{white-space:normal}
  .stay-enquiry-shell{grid-template-columns:1fr}
  .stay-enquiry-shell>header{max-width:680px;padding-top:0}
}
@media(max-width:760px){
  .alm-booking{scroll-margin-top:112px}
  .alm-flow-progress{gap:4px}
  .alm-flow-progress button{justify-content:center;min-height:44px;padding:6px}
  .alm-flow-progress b{flex-basis:27px;width:27px;height:27px}
  .alm-flow-progress span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .alm-stage{padding:15px 13px;scroll-margin-top:112px}
  .alm-stage-heading h4,.alm-confirmation h4{font-size:19px}
  .alm-calendar{grid-template-columns:minmax(0,1fr)}
  .alm-calendar article{padding:12px 9px}
  .alm-calendar td button{min-height:48px;font-size:13px}
  .alm-calendar td button small{font-size:8px}
  .alm-calendar-actions button{min-width:44px;height:44px}
  .alm-unit-option{grid-template-columns:22px minmax(0,1fr);padding:12px}
  .alm-unit-option>b{grid-column:2;text-align:left}
  .alm-guest-controls{grid-template-columns:minmax(0,1fr)}
  .alm-guest-row:last-child{grid-column:auto}
  .alm-guest-row{min-height:66px}
  .alm-stepper{grid-template-columns:44px 36px 44px;min-width:124px}
  .alm-stepper button{width:44px;height:44px}
  .alm-enquiry-grid{grid-template-columns:1fr}
  .alm-enquiry .wide{grid-column:auto}
  .alm-stage-actions{display:grid;grid-template-columns:1fr}
  .alm-stage-actions .alm-primary-action{order:-1}
  .alm-stage-actions button{width:100%}
}
@media(max-width:460px){
  .alm-calendar-head{display:block}
  .alm-calendar-actions{justify-content:flex-start;margin-top:9px}
  .alm-calendar-legend{justify-content:flex-start}
  .alm-complete-summary{align-items:flex-start;flex-direction:column}
  .alm-complete-summary button{width:100%}
  .alm-price-card>div{align-items:flex-start;flex-direction:column;gap:4px}
  .alm-price-card strong,.alm-price-card .textual strong{text-align:left;max-width:none}
}
@media(max-width:390px){
  .alm-guest-row{grid-template-columns:minmax(0,1fr)}
  .alm-stepper{grid-template-columns:48px minmax(36px,1fr) 48px;justify-self:stretch;width:100%;min-width:0}
  .alm-stepper button{width:48px;height:44px}
  .alm-stepper button:last-child{justify-self:end}
}
@media(prefers-reduced-motion:reduce){.alm-direct-terms-disclosure>summary b{transition:none}}
