/* EroLux system features: booking bar, contact form, corporate block (site palette: --ink, --paper, --gold, --line) */
.erx-bar-wrap{padding:0 6% 40px}
.erx-bar{background:#fff;border:1px solid var(--line);padding:26px 28px}
.erx-bar-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px 20px;align-items:end}
.erx-bar-f{display:flex;flex-direction:column;gap:7px;min-width:0}
.erx-bar-f span{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:#687061}
.erx-bar input,.erx-bar select,.erx-form input,.erx-form textarea{width:100%;font:inherit;font-size:14px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:0;padding:13px 14px;min-height:48px;-webkit-appearance:none;appearance:none}
.erx-bar select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23172019' stroke-width='1.3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:34px}
.erx-bar input:focus,.erx-bar select:focus,.erx-form input:focus,.erx-form textarea:focus{outline:2px solid var(--gold);outline-offset:0;border-color:var(--gold)}
.erx-bar .is-bad,.erx-field.has-err input,.erx-field.has-err textarea{border-color:#a3342b}
.erx-bar option[hidden]{display:none}
.erx-bar-send{justify-content:center;min-height:48px;border:0;cursor:pointer;width:100%}
.erx-bar-msg{margin:14px 0 0;font-size:13px;color:#a3342b}
.erx-contact{margin-top:55px;max-width:820px}
.erx-form{display:grid;gap:20px}
.erx-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.erx-field{display:flex;flex-direction:column;gap:8px}
.erx-field label{font-size:10px;letter-spacing:2px;text-transform:uppercase}
.erx-field label span{letter-spacing:0;text-transform:none;color:#687061}
.erx-form textarea{min-height:160px;resize:vertical;line-height:1.7}
.erx-form .button{border:0;cursor:pointer;justify-self:start}
.erx-form .button[disabled]{opacity:.6;cursor:progress}
.erx-err{font-size:12px;color:#a3342b}
.erx-alert{border:1px solid #a3342b;color:#5f1410;background:#fbefed;padding:14px 16px;font-size:13px;margin:0}
.erx-sent{border-top:1px solid var(--gold);padding-top:20px}
.erx-sent h3{font-family:Georgia,serif;font-size:30px;margin:0 0 10px}
.erx-sent p{font-size:14px;color:#5c625a}
.erx-hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.erx-corp .detail-grid .button{margin-top:10px}
@media(max-width:1100px){.erx-bar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.erx-bar-wrap{padding:0 6% 30px}.erx-bar{padding:20px}.erx-bar-grid,.erx-grid{grid-template-columns:1fr}}

/* ---- Responsive fixes (site-wide) ---- */
.erx-form input,.erx-form textarea{background:#fff}
@media(min-width:1101px){nav a{font-size:11.5px}}
@media(max-width:1100px){footer>div a{padding:7px 0}.footer-links a{margin-bottom:2px}.topline a{padding:8px 0;margin:-8px 0}}
@media(max-width:700px){
  .topline{justify-content:center;padding:9px 6%}
  .topline span{display:none}
  .topline a{font-size:11px;letter-spacing:1px;padding:6px 0}
  nav a{padding:13px 0}
  .erx-bar-grid{grid-template-columns:1fr 1fr;gap:14px 12px}
  .erx-bar-grid>:nth-child(-n+4),.erx-bar-grid>:nth-child(n+9){grid-column:1/-1}
  .erx-bar input,.erx-bar select{min-height:46px;padding:11px 12px}
  .erx-bar select{padding-right:30px;background-position:right 10px center}
}
@media(max-width:380px){
  header{gap:10px;padding:16px 5%}
  .brand{font-size:21px}
  .brand small{letter-spacing:2.2px}
  .book{padding:11px 10px;gap:8px}
  .menu-toggle{padding:10px 4px}
}
@media(max-width:359px){.erx-bar-grid{grid-template-columns:1fr}}

/* Logo (replaces the text wordmark) */
.brand-img{display:inline-flex;align-items:center;line-height:0;letter-spacing:0}
.brand-img picture{display:block}
.brand-img .brand-logo{display:block;height:58px;width:auto}
footer .brand-img .brand-logo{height:64px;margin-bottom:6px}
@media(max-width:700px){.brand-img .brand-logo{height:46px}footer .brand-img .brand-logo{height:54px}}
@media(max-width:380px){.brand-img .brand-logo{height:40px}}

/* Corporate enquiry steps */
.erx-steps{list-style:none;counter-reset:st;margin:40px 0 10px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}
.erx-steps li{counter-increment:st;border-top:1px solid var(--line);padding-top:18px;font-size:14px;line-height:1.8;color:#5c625a}
.erx-steps li:before{content:counter(st,decimal-leading-zero);display:block;font:28px Georgia,serif;color:var(--gold);margin-bottom:6px}
.erx-steps strong{display:block;font-weight:normal;font-size:19px;color:var(--ink);margin-bottom:6px}
.erx-steps span{display:block}
@media(max-width:1100px){.erx-steps{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.erx-steps{grid-template-columns:1fr;gap:18px}}

/* Four items in a detail grid: 2 x 2 instead of 3 + 1 */
@media(min-width:801px){.detail-grid:has(>article:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}}

/* EroLux app section (home) */
.erx-app{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:center;background:#e6e8de}
.erx-app h2{max-width:720px}
.erx-app-points{list-style:none;padding:0;margin:30px 0;max-width:520px}
.erx-app-points li{padding:13px 0 13px 28px;border-bottom:1px solid var(--line);font-size:15px;color:#4f564d;position:relative}
.erx-app-points li:before{content:'';position:absolute;left:2px;top:21px;width:12px;height:1px;background:var(--gold)}
.erx-app-buttons{display:flex;flex-wrap:wrap;gap:14px;margin:10px 0 24px}
.erx-store{display:inline-flex;flex-direction:column;justify-content:center;min-width:170px;min-height:58px;padding:10px 22px;background:var(--ink);color:var(--paper);font-size:17px;letter-spacing:.5px}
.erx-store small{font-size:9px;letter-spacing:2px;color:var(--gold);margin-bottom:3px}
.erx-store:hover{background:#26352a}
.erx-phone{justify-self:center;width:260px;max-width:100%;aspect-ratio:9/18.5;border-radius:38px;background:#101711;padding:12px;box-shadow:0 30px 60px rgba(23,32,25,.25)}
.erx-phone-screen{height:100%;border-radius:28px;background:var(--paper);display:flex;flex-direction:column;align-items:center;padding:26px 16px 18px;gap:14px;overflow:hidden}
.erx-phone-screen img{height:34px;width:auto}
.erx-phone-map{flex:1;width:100%;border-radius:16px;position:relative;background:linear-gradient(90deg,transparent 48%,#d9d6c8 48%,#d9d6c8 52%,transparent 52%),linear-gradient(0deg,transparent 48%,#d9d6c8 48%,#d9d6c8 52%,transparent 52%),linear-gradient(35deg,transparent 60%,#d0ccbb 60%,#d0ccbb 63%,transparent 63%),#ecebe2}
.erx-pin{position:absolute;left:50%;top:45%;width:16px;height:16px;margin:-8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 8px rgba(197,171,112,.25)}
.erx-phone-card{width:100%;background:#fff;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.erx-phone-card small{font-size:8px;letter-spacing:2px;color:#687061}
.erx-phone-card strong{font:20px Georgia,serif;font-weight:normal}
.erx-phone-card span{font-size:11px;color:#687061}
.erx-phone-btn{width:100%;background:var(--ink);color:var(--paper);text-align:center;border-radius:12px;padding:13px;font-size:11px;letter-spacing:1px;text-transform:uppercase}
.erx-app-line{margin-top:14px;font-size:12px}
.erx-app-line a{display:inline!important;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.erx-app{grid-template-columns:1fr;gap:45px}.erx-phone{width:230px}}
@media(max-width:700px){.erx-store{flex:1 1 140px;min-width:0}}
@media(max-width:700px){.erx-phone{width:200px}}

/* WhatsApp button + social line */
.erx-wa{position:fixed;right:22px;bottom:22px;z-index:900;display:inline-flex;align-items:center;gap:10px;background:#1f8f4e;color:#fff;border-radius:999px;padding:13px 20px 13px 16px;box-shadow:0 10px 26px rgba(0,0,0,.22);font-size:13px;letter-spacing:.5px;transition:transform .15s,background .15s}
.erx-wa:hover{background:#18763f;transform:translateY(-2px)}
.erx-wa:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.erx-social{margin-top:6px;font-size:12px}
.erx-social a{display:inline!important;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.erx-wa{right:14px;bottom:14px;padding:14px}.erx-wa span{display:none}}
@media print{.erx-wa{display:none}}
@media(max-width:700px){footer{padding-bottom:90px}}

/* Partners: logo showcase (Partners page + home strip) */
.erx-partners{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px}
.erx-partners li>a,.erx-partners li>div{height:100%;min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:22px 18px;background:#fff;border:1px solid var(--line);text-align:center;transition:border-color .2s,transform .2s}
.erx-partners li>a:hover{border-color:var(--gold);transform:translateY(-2px)}
.erx-partners li>a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.erx-partners img{display:block;max-width:100%;max-height:70px;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.8;transition:filter .2s,opacity .2s}
.erx-partners li>a:hover img,.erx-partners li>a:focus-visible img{filter:none;opacity:1}
.erx-partner-name{font-size:10px;letter-spacing:1.6px;text-transform:uppercase;color:#687061}
.erx-partner-text{font:20px/1.3 Georgia,serif;color:var(--ink)}
.erx-partners.is-strip{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.erx-partners.is-strip li>a,.erx-partners.is-strip li>div{min-height:110px;padding:16px}
.erx-partners.is-strip .erx-partner-name{display:none}
.erx-partners.is-strip img{max-height:56px}
@media(max-width:700px){.erx-partners,.erx-partners.is-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.erx-partners li>a,.erx-partners li>div{min-height:110px;padding:14px 10px}.erx-partners img{max-height:48px}.erx-partner-text{font-size:16px}}
@media(hover:none){.erx-partners img{filter:none;opacity:1}}

/* ---- Mobile menu: full-screen panel (phones + tablets) ---- */
.erx-nav-head,.erx-nav-label,.erx-nav-extra{display:none}
.erx-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:24px;height:24px}
.erx-burger i{display:block;height:1.5px;width:100%;background:currentColor;transition:transform .25s,opacity .2s}
.erx-burger i:nth-child(2){width:70%;margin-left:auto}
@media(max-width:1100px){
  header{flex-wrap:nowrap}
  header .book{order:2;margin-left:auto}
  header .menu-toggle{order:3;display:inline-flex!important;align-items:center;gap:10px;border:1px solid var(--line);background:transparent;color:var(--ink);min-height:48px;padding:0 14px;cursor:pointer;font-size:10px;letter-spacing:2px;text-transform:uppercase}
  header .menu-toggle:hover{border-color:var(--ink)}
  header nav#navigation{position:fixed;inset:0;z-index:1000;display:flex!important;flex-direction:column;flex-wrap:nowrap;justify-content:flex-start;gap:0;margin:0;padding:0 7% calc(28px + env(safe-area-inset-bottom));background:var(--ink);color:var(--paper);overflow-y:auto;overscroll-behavior:contain;
    visibility:hidden;opacity:0;transform:translateY(-12px);transition:opacity .28s ease,transform .28s ease,visibility 0s linear .28s}
  header nav#navigation.open{visibility:visible;opacity:1;transform:none;transition:opacity .28s ease,transform .28s ease,visibility 0s}
  html.erx-nav-open,html.erx-nav-open body{overflow:hidden}
  html.erx-nav-open .erx-wa{display:none}
  .erx-nav-head{display:flex;align-items:center;justify-content:space-between;min-height:88px;padding-top:env(safe-area-inset-top);border-bottom:1px solid rgba(244,241,233,.12);position:sticky;top:0;background:var(--ink);z-index:1}
  .erx-nav-logo img{display:block;height:44px;width:auto}
  #navigation .erx-nav-logo{border:0;padding:0;font-size:0}
  .erx-nav-close{position:relative;width:48px;height:48px;border:1px solid rgba(244,241,233,.25);background:transparent;cursor:pointer;color:var(--paper)}
  .erx-nav-close span:before,.erx-nav-close span:after{content:'';position:absolute;left:50%;top:50%;width:20px;height:1.5px;margin:-.75px 0 0 -10px;background:currentColor;transform:rotate(45deg)}
  .erx-nav-close span:after{transform:rotate(-45deg)}
  .erx-nav-close:hover{border-color:var(--gold);color:var(--gold)}
  .erx-nav-label{display:block;margin:28px 0 6px;font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--gold)}
  #navigation>a{display:flex;align-items:center;justify-content:space-between;padding:15px 0!important;border-bottom:1px solid rgba(244,241,233,.1)!important;font:26px/1.15 Georgia,'Times New Roman',serif!important;letter-spacing:-.3px;color:var(--paper);
    opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .35s ease,color .2s}
  #navigation>a:after{content:'↗';font:13px Arial,sans-serif;color:rgba(244,241,233,.35);transition:color .2s,transform .2s}
  #navigation>a:hover,#navigation>a:focus-visible{color:var(--gold)}
  #navigation>a:hover:after{color:var(--gold);transform:translate(2px,-2px)}
  #navigation>a[aria-current]{color:var(--gold)}
  #navigation>a[aria-current]:after{content:'';width:7px;height:7px;border-radius:50%;background:var(--gold)}
  #navigation.open>a{opacity:1;transform:none}
  #navigation.open>a:nth-of-type(2){transition-delay:.03s}#navigation.open>a:nth-of-type(3){transition-delay:.06s}#navigation.open>a:nth-of-type(4){transition-delay:.09s}#navigation.open>a:nth-of-type(5){transition-delay:.12s}#navigation.open>a:nth-of-type(6){transition-delay:.15s}#navigation.open>a:nth-of-type(7){transition-delay:.18s}#navigation.open>a:nth-of-type(8){transition-delay:.21s}#navigation.open>a:nth-of-type(9){transition-delay:.24s}#navigation.open>a:nth-of-type(n+10){transition-delay:.27s}
  #navigation a:focus-visible,#navigation button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
  .erx-nav-extra{display:block;margin-top:auto;padding-top:34px}
  #navigation .erx-nav-book{display:flex;justify-content:space-between;width:100%;padding:19px 22px;background:var(--gold);color:var(--ink);font-size:11px;letter-spacing:2px}
  #navigation .erx-nav-book:hover{background:#d4bc86}
  .erx-nav-contact{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;margin:26px 0 22px}
  .erx-nav-contact a{display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--paper);word-break:break-word}
  .erx-nav-contact a:last-child{grid-column:1/-1}
  .erx-nav-contact small{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:rgba(244,241,233,.5)}
  .erx-nav-social{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;padding-top:18px;border-top:1px solid rgba(244,241,233,.12)}
  .erx-nav-social a{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(244,241,233,.7);padding:6px 0}
  .erx-nav-social a:hover{color:var(--gold)}
}
@media(min-width:701px) and (max-width:1100px){
  header nav#navigation{padding-left:10%;padding-right:10%}
  #navigation>a{font-size:32px!important;padding:18px 0!important}
}
@media(max-width:700px){
  header .menu-toggle{width:48px;padding:0;justify-content:center}
  header .erx-menu-word{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .erx-nav-head{min-height:76px}
  .erx-nav-logo img{height:38px}
}
@media(max-width:380px){
  header .book{padding:12px 11px;font-size:8.5px}
  #navigation>a{font-size:23px!important;padding:13px 0!important}
  .erx-nav-contact{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){header nav#navigation,#navigation>a{transition:none!important;transform:none!important}}
@media(max-width:700px){#navigation>a{font-size:24px!important;padding:13px 0!important}.erx-nav-label{margin-top:22px}}
.breadcrumbs{align-items:center}
@media(max-width:1100px){nav.breadcrumbs a{padding:10px 0}}
