@font-face { font-family:"Open Sans Umbrella"; src:url("open-sans-variable.ttf") format("truetype"); font-weight:300 800; font-style:normal; font-display:swap; }
@font-face { font-family:"Oferta Do Dia"; src:url("oferta-do-dia.ttf") format("truetype"); font-weight:400; font-style:normal; font-display:swap; }

:root { --petrol:#174a5b; --petrol-deep:#0f3440; --fuchsia:#ed184e; --paper:#f4f2ed; --ink:#181719; --eyebrow-title-gap:18px; --text-link:#62676b; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body.clean-landing { margin:0; background:var(--paper); color:var(--ink); font-family:"Open Sans Umbrella",Arial,sans-serif; overflow-x:hidden; }
.clean-landing img { display:block; max-width:100%; }

.clean-landing > .nav { position:fixed; inset:0 0 auto; z-index:50; width:100%; padding-inline:max(16px,calc((100vw - 1180px)/2)); background:linear-gradient(rgba(7,24,30,.78),transparent); }
.clean-landing > .nav .menu summary { border-color:rgba(255,255,255,.68); }
.clean-landing > .nav .menu summary::before { content:""; width:21px; height:15px; background:linear-gradient(#fff 0 0) top/100% 2px no-repeat,linear-gradient(#fff 0 0) center/100% 2px no-repeat,linear-gradient(#fff 0 0) bottom/100% 2px no-repeat; }
.clean-landing > .nav .menu[open] summary { background:var(--fuchsia); border-color:var(--fuchsia); }
.clean-landing > .nav .menu nav { position:absolute; top:56px; left:0; width:min(360px,calc(100vw - 32px)); padding:20px; border:0; border-radius:20px; background:#0f3440; box-shadow:0 22px 70px rgba(0,0,0,.35); }
.clean-landing > .nav .menu nav > a { display:block; padding:11px 12px; border-bottom:1px solid rgba(255,255,255,.12); color:#fff; font-size:.9rem; font-weight:700; text-decoration:none; text-transform:uppercase; transition:padding-left .2s ease,color .2s ease; }
.clean-landing > .nav .menu nav > a:hover,
.clean-landing > .nav .menu nav > a:focus-visible { padding-left:18px; color:var(--fuchsia); outline:none; }
.language-switch { display:flex; gap:8px; margin-top:18px; padding-top:17px; border-top:2px solid var(--fuchsia); }
.language-switch a,
.language-switch button { min-width:48px; min-height:38px; display:inline-flex; align-items:center; justify-content:center; border:1px solid rgba(255,255,255,.45); border-radius:999px; background:transparent; color:#fff; font:800 .78rem/1 "Open Sans Umbrella",Arial,sans-serif; text-decoration:none; cursor:pointer; }
.language-switch a.active,
.language-switch a[aria-current="page"],
.language-switch button.active { border-color:var(--fuchsia); background:var(--fuchsia); }
.clean-landing > .nav .header-cta { border-radius:999px; padding-inline:22px; }

.clean-hero { position:relative; min-height:100svh; max-height:100svh; display:grid; place-items:center; isolation:isolate; overflow:hidden; background:var(--petrol); }
.clean-hero-bg { position:absolute; inset:0; z-index:-3; width:100%; height:100%; object-fit:cover; object-position:center 46%; transform:scale(1.02); }
.clean-hero-overlay { position:absolute; inset:0; z-index:-2; background:linear-gradient(180deg,rgba(10,40,50,.48),rgba(23,74,91,.67)),linear-gradient(90deg,rgba(23,74,91,.2),rgba(23,74,91,.44)); }
.clean-hero-content { width:min(100% - 32px,1040px); padding:clamp(76px,10svh,130px) 0 clamp(56px,8svh,90px); color:#fff; text-align:center; }
.clean-eyebrow { margin:0 0 14px; color:var(--fuchsia); font-size:clamp(.82rem,1.3vw,1rem); font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.clean-hero h1 { margin:0; font-size:clamp(3.4rem,min(14vw,16svh),12.5rem); font-weight:800; letter-spacing:-.075em; line-height:.72; text-transform:uppercase; text-shadow:0 8px 34px rgba(0,0,0,.28); }
.clean-actions { margin-top:clamp(12px,3.6svh,56px); display:flex; justify-content:center; flex-wrap:wrap; gap:14px; }
.action-eyebrow { flex-basis:100%; margin:0 0 2px; color:#fff; font-size:.9rem; font-weight:800; letter-spacing:.14em; line-height:1.2; text-transform:uppercase; }
.clean-btn { min-width:164px; min-height:52px; display:inline-flex; align-items:center; justify-content:center; padding:13px 25px; border:2px solid #fff; border-radius:999px; color:#fff; font-weight:800; letter-spacing:.02em; text-decoration:none; text-transform:uppercase; transition:transform .2s ease,background .2s ease,color .2s ease; }
.hero-menu-action { flex-basis:100%; grid-column:1 / -1; display:flex; justify-content:center; }
.clean-btn:hover { transform:translateY(-3px); }
.clean-btn.primary { background:var(--fuchsia); border-color:var(--fuchsia); }
.clean-btn.ghost { background:rgba(23,74,91,.25); backdrop-filter:blur(6px); }
.scroll-cue { position:absolute; bottom:25px; left:50%; display:flex; flex-direction:column; align-items:center; gap:7px; color:rgba(255,255,255,.78); font-size:.66rem; font-weight:700; letter-spacing:.13em; text-decoration:none; text-transform:uppercase; transform:translateX(-50%); }
.scroll-cue span { width:1px; height:28px; background:linear-gradient(#fff,transparent); }

.location-ticker { overflow:hidden; border-block:3px solid var(--fuchsia); background:#fff; color:var(--petrol); }
.location-ticker-track { display:flex; width:max-content; animation:location-marquee 24s linear infinite; }
.location-ticker span { padding:15px 0; font-size:clamp(1.05rem,2.2vw,1.5rem); font-weight:800; letter-spacing:.035em; text-transform:uppercase; white-space:nowrap; }
.location-ticker b { padding-inline:.65em; color:var(--fuchsia); }
@keyframes location-marquee { to { transform:translateX(-50%); } }

.burger-showcase { padding:clamp(76px,10vw,140px) max(16px,calc((100vw - 1240px)/2)); background:var(--paper); }
.showcase-heading { width:min(100%,1180px); margin:0 auto clamp(42px,7vw,80px); }
.showcase-heading h2 { max-width:800px; margin:0; color:var(--petrol); font-size:clamp(2.8rem,7vw,6.4rem); font-weight:800; letter-spacing:-.055em; line-height:.9; text-transform:uppercase; }
.burger-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(24px,5vw,72px); align-items:start; }
.burger-feature { min-width:0; }
.burger-feature.reverse { margin-top:clamp(80px,12vw,170px); }
.burger-feature img { width:100%; aspect-ratio:1.18; object-fit:cover; object-position:center; }
.burger-copy { position:relative; padding:22px 0 0 58px; }
.burger-copy > span { position:absolute; left:0; top:27px; color:var(--fuchsia); font-size:.76rem; font-weight:800; letter-spacing:.12em; }
.burger-copy h3 { margin:0; color:var(--fuchsia); font-size:clamp(2.1rem,4vw,4rem); font-weight:800; letter-spacing:-.045em; line-height:.9; text-transform:uppercase; }
.burger-copy p { max-width:480px; margin:13px 0 0; color:#5c5b5a; font-size:clamp(.98rem,1.35vw,1.12rem); line-height:1.55; }
.burger-copy .burger-note { width:max-content; margin-top:18px; padding:6px 10px; border-radius:999px; background:var(--petrol); color:#fff; font-size:.76rem; font-weight:800; letter-spacing:.08em; line-height:1.2; text-transform:uppercase; }
.showcase-cta { margin-top:clamp(54px,8vw,96px); text-align:center; }
.clean-btn.menu-cta { border-color:var(--petrol); background:var(--petrol); box-shadow:none; }

.clean-ticker { overflow:hidden; border-block:3px solid var(--fuchsia); background:var(--petrol); color:#fff; }
.clean-ticker-track { display:flex; width:max-content; animation:clean-marquee 28s linear infinite; }
.clean-ticker span { padding:16px 0; font:400 clamp(1.65rem,4vw,3.6rem)/1 "Oferta Do Dia","Open Sans Umbrella",sans-serif; white-space:nowrap; }
@keyframes clean-marquee { to { transform:translateX(-50%); } }

.brand-context { padding:clamp(80px,11vw,150px) 16px; background:#fff; }
.context-wrap { width:min(1160px,100%); margin:0 auto; }
.context-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(280px,.7fr); gap:clamp(34px,8vw,110px); align-items:start; }
.brand-context h2 { margin:0; color:var(--petrol); font-size:clamp(3rem,7vw,6.8rem); font-weight:800; letter-spacing:-.06em; line-height:.86; text-transform:uppercase; }
.context-copy { padding-top:8px; border-top:4px solid var(--fuchsia); }
.context-copy p { margin:0 0 20px; color:#4f5557; font-size:clamp(1rem,1.4vw,1.16rem); line-height:1.65; }

.city-stage { padding:clamp(90px,13vw,180px) clamp(16px,4vw,40px); background:var(--petrol); color:#fff; overflow:hidden; }
.city-wrap { width:min(1160px,100%); margin:0 auto; }
.city-stage .clean-eyebrow { margin-bottom:20px; font-size:clamp(1.05rem,2.2vw,1.35rem); line-height:1.2; letter-spacing:.13em; }
.city-stage h2 { max-width:900px; margin:0; font:400 clamp(3.6rem,9vw,8.4rem)/.84 "Oferta Do Dia","Open Sans Umbrella",sans-serif; letter-spacing:-.025em; text-transform:uppercase; }
.city-cloud { margin:clamp(55px,8vw,100px) auto 50px; display:grid; width:100%; grid-template-columns:minmax(0,1.2fr) minmax(0,.95fr) minmax(0,1.1fr); align-items:center; gap:clamp(12px,2.4vw,36px); }
.city-slot { min-width:0; container-type:inline-size; }
.city-cluster { display:flex; flex-direction:column; align-items:stretch; gap:10px; }
.city { display:block; max-width:100%; color:#fff; text-decoration:none; text-transform:uppercase; line-height:.82; transition:color .2s ease,transform .2s ease; }
.city:hover { color:var(--fuchsia); transform:translateY(-4px); }
.city-alicante { color:var(--fuchsia); font-size:clamp(2.1rem,22cqi,5.2rem); font-weight:800; letter-spacing:-.07em; white-space:nowrap; }
.city-elche { color:var(--fuchsia); font-size:clamp(1.7rem,28cqi,4.2rem); font-weight:800; letter-spacing:-.055em; white-space:nowrap; align-self:start; transform:rotate(-2deg) translateX(-10%); }
.city-sanvicente { color:var(--fuchsia); font-size:clamp(1.05rem,12cqi,1.9rem); font-weight:600; letter-spacing:-.035em; text-align:right; align-self:end; transform:rotate(2deg) translateX(12%); }
.city-benidorm { color:var(--fuchsia); font:400 clamp(1.8rem,20cqi,4.1rem)/.8 "Oferta Do Dia","Open Sans Umbrella",sans-serif; letter-spacing:-.04em; text-align:right; white-space:nowrap; transform:rotate(-2deg); transform-origin:center; }
.city:hover,
.city:focus-visible { color:#fff; outline:none; }
.city-elche:hover,
.city-elche:focus-visible { transform:rotate(-2deg) translateX(-10%) translateY(-4px); }
.city-sanvicente:hover,
.city-sanvicente:focus-visible { transform:rotate(2deg) translateX(12%) translateY(-4px); }
.city-benidorm:hover,
.city-benidorm:focus-visible { transform:rotate(-2deg) translateY(-4px); }
.city-link { display:inline-flex; align-items:center; gap:12px; padding-bottom:5px; border-bottom:1px solid rgba(255,255,255,.55); color:#fff; font-size:.9rem; font-weight:700; letter-spacing:.07em; text-decoration:none; text-transform:uppercase; }
.city-link span { color:var(--fuchsia); font-size:1.3rem; }

.clean-landing .site-footer { border-top:0!important; }

@media (max-height:900px) {
  .scroll-cue { display:none; }
  .clean-hero-content { padding-bottom:clamp(36px,6svh,64px); }
}

@media (max-height:720px) {
  .clean-hero h1 { font-size:clamp(3rem,14svh,5.6rem); }
  .clean-actions { gap:10px; }
  .clean-btn { min-height:46px; padding-block:10px; }
}

@media (max-width:760px) {
  .clean-hero { min-height:92svh; max-height:none; }
  .clean-hero-bg { object-position:55% center; }
  .clean-hero h1 { font-size:clamp(3.6rem,min(22vw,18svh),7.5rem); }
  .burger-pair { grid-template-columns:1fr; gap:56px; }
  .burger-feature.reverse { margin-top:0; }
  .burger-feature img { aspect-ratio:1.05; }
  .context-grid { grid-template-columns:1fr; }
  .city-cloud { grid-template-columns:minmax(0,1fr); gap:28px; }
  .city-cluster { align-items:stretch; gap:14px; }
  .city-alicante { font-size:clamp(3rem,20cqi,5.2rem); }
  .city-elche { font-size:clamp(2.6rem,16cqi,4.4rem); text-align:right; align-self:stretch; transform:none; }
  .city-sanvicente { font-size:clamp(1.5rem,9cqi,2.3rem); text-align:left; align-self:stretch; transform:none; }
  .city-benidorm { font-size:clamp(2.6rem,16cqi,4.4rem); transform:none; }
  .city-elche:hover,
  .city-elche:focus-visible,
  .city-sanvicente:hover,
  .city-sanvicente:focus-visible,
  .city-benidorm:hover,
  .city-benidorm:focus-visible { transform:translateY(-4px); }
}

@media (max-width:480px) {
  .clean-landing > .nav .brand img { width:62px; }
  .clean-landing > .nav .header-cta { min-height:38px; padding-inline:14px; font-size:.75rem; }
  .clean-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .action-eyebrow { grid-column:1 / -1; margin-bottom:4px; }
  .clean-btn { min-width:0; min-height:48px; padding-inline:14px; font-size:.78rem; }
  .burger-copy { padding-left:42px; }
}

/* Shared spacing for section antetitles across the review site. */
.clean-landing main .clean-eyebrow { margin:0 0 var(--eyebrow-title-gap); }
.clean-landing main .clean-eyebrow + :is(h1,h2) { margin-top:0; }

/* Language navigation */
.language-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;color:inherit;text-decoration:none;border:1px solid currentColor;border-radius:999px;font-weight:800}.language-switch a.active{background:var(--fuchsia);border-color:var(--fuchsia);color:white}.language-switch a:focus-visible{outline:3px solid var(--fuchsia);outline-offset:3px}
.nav .language-switch a{color:#fff;border-color:rgba(255,255,255,.65)}.nav .language-switch a.active{border-color:var(--fuchsia)}
