@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300..700;1,9..144,300..700&family=Karla:ital,wght@0,300..800;1,300..800&display=swap";:root{--radius:6px;--background:oklch(97.4% .012 92);--foreground:oklch(27% .028 55);--card:oklch(99.4% .006 95);--primary:oklch(53% .13 45);--primary-foreground:oklch(98% .01 90);--secondary:oklch(93% .024 88);--muted-foreground:oklch(48% .03 60);--border:oklch(88.5% .02 85);--input:oklch(88.5% .02 85);--ring:oklch(53% .13 45);--espresso:oklch(25% .025 55);--espresso-foreground:oklch(94% .015 90);--azulejo:oklch(42% .06 215);--azulejo-foreground:oklch(97% .01 90);--shadow:0 16px 34px -24px #0000006b, 0 2px 8px -6px #00000040;--soft-shadow:0 14px 30px -26px #0006;color:var(--foreground);background:var(--background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Karla,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);min-width:320px;margin:0}body,button,input,textarea{font:16px/1.5 Karla,ui-sans-serif,system-ui,sans-serif}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid color-mix(in oklab, var(--ring) 72%, white);outline-offset:3px}img,svg,iframe{display:block}img{max-width:100%;height:auto}button,input,textarea{color:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3,.brand-name,.footer-brand{font-family:Fraunces,ui-serif,Georgia,serif}h1{font-size:3rem;font-weight:600;line-height:1.05}h2{font-size:2.25rem;font-weight:600;line-height:1.18}h3{font-size:1.125rem;font-weight:600;line-height:1.35}p{color:var(--muted-foreground);line-height:1.625}main{min-height:60vh}.container,.section{width:min(100% - 2rem,72rem);margin-inline:auto}.site-header{z-index:50;border-bottom:1px solid var(--border);background:color-mix(in oklab, var(--background) 93%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;width:min(100% - 2rem,72rem);height:4rem;margin-inline:auto;display:flex}.brand{align-items:center;gap:.625rem;line-height:1;display:flex}.brand-symbol{object-fit:contain;flex:none;width:2.25rem;height:2.25rem}.brand-copy{flex-direction:column;display:flex}.brand-name{letter-spacing:0;font-size:1.25rem;font-weight:600}.brand-tag,.footer-tag{letter-spacing:0;text-transform:uppercase;color:var(--muted-foreground);margin-top:.125rem;font-size:.625rem;font-weight:500}.desktop-nav{align-items:center;gap:1.5rem;display:none}.nav-link{color:color-mix(in oklab, var(--foreground) 75%, transparent);font-size:.875rem;font-weight:500;transition:color .15s;position:relative}.nav-link:after{content:"";opacity:0;background:currentColor;height:1px;transition:opacity .18s,transform .18s;position:absolute;bottom:-.35rem;left:0;right:0;transform:scaleX(.6)}.nav-link:hover,.nav-link.active,.mobile-link.active{color:var(--primary)}.nav-link:hover:after,.nav-link.active:after{opacity:.55;transform:scaleX(1)}.menu-toggle{border-radius:calc(var(--radius) - 2px);background:0 0;border:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:inline-flex}.mobile-nav{border-top:1px solid var(--border);background:var(--background);box-shadow:var(--soft-shadow)}.mobile-nav-inner{flex-direction:column;gap:.35rem;padding:.75rem 1rem 1rem;display:flex}.mobile-link{border-radius:calc(var(--radius) - 2px);color:color-mix(in oklab, var(--foreground) 80%, transparent);padding:.78rem .75rem;font-size:1rem;font-weight:500}.mobile-reserve{text-align:center;margin-top:.75rem}.mobile-header-tools{align-items:center;gap:.875rem;display:flex}.language-switcher{color:var(--muted-foreground);letter-spacing:0;align-items:center;gap:.35rem;font-size:.75rem;font-weight:800;display:inline-flex}.language-switcher button{min-width:1.85rem;min-height:1.85rem;color:inherit;font:inherit;background:0 0;border:0;padding:.25rem;line-height:1}.language-switcher button:hover,.language-switcher button.active{color:var(--primary)}.header-language-switcher{padding-top:.125rem}.icon{flex:none;width:1.5rem;height:1.5rem}.menu-icon{width:1.25rem;height:1.25rem}.btn{border-radius:calc(var(--radius) - 2px);justify-content:center;align-items:center;min-height:2.75rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:700;line-height:1.2;transition:background-color .15s,border-color .15s,color .15s,box-shadow .18s,transform .18s;display:inline-flex}.btn-small{padding:.5rem 1rem}.btn-primary{background:var(--primary);color:var(--primary-foreground)}.btn-primary:hover{background:color-mix(in oklab, var(--primary) 90%, black);box-shadow:0 12px 24px -18px color-mix(in oklab, var(--primary) 65%, black);transform:translateY(-1px)}.btn-outline-light{color:#fff;border:1px solid #ffffff80}.btn-outline-light:hover{background:#ffffff1a}.btn-outline{border:1px solid var(--border);color:var(--foreground)}.btn-outline:hover{background:var(--secondary);transform:translateY(-1px)}.btn-wide{width:100%}.actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.actions.centered{justify-content:center}.kicker{letter-spacing:0;color:var(--primary);font-size:.75rem;font-weight:700}.kicker.light{color:#ffffffd9}.home-hero{min-height:88vh;position:relative;overflow:hidden}.hero-slides,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;pointer-events:none;align-items:flex-end;transition:opacity .7s;display:flex}.hero-slide.active{opacity:1;pointer-events:auto;z-index:1}.hero-slide>img,.location-hero>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-slide>.hero-entrance-image{object-position:57% center}.hero-slide>.hero-history-image{object-position:center 48%}.hero-slide>.hero-seville-image{object-position:center 52%}.hero-overlay{background:linear-gradient(to top, color-mix(in oklab, var(--espresso) 85%, transparent), color-mix(in oklab, var(--espresso) 35%, transparent), color-mix(in oklab, var(--espresso) 10%, transparent));position:absolute;inset:0}.hero-overlay.compact{background:linear-gradient(to top, color-mix(in oklab, var(--espresso) 85%, transparent), color-mix(in oklab, var(--espresso) 30%, transparent), transparent)}.hero-content{z-index:2;padding-top:10rem;padding-bottom:3.5rem;position:relative}.hero-content h1{color:#fff;max-width:48rem;margin-top:1rem;font-size:3.75rem;line-height:1.08}.hero-content>p:not(.kicker){color:#ffffffe6;max-width:36rem;margin-top:1.25rem;font-size:1.125rem}.hero-features{border-top:1px solid #ffffff40;flex-wrap:wrap;gap:.75rem 2rem;margin:2.5rem 0 0;padding:1.5rem 0 0;list-style:none;display:flex}.hero-features li{color:#ffffffe6;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.hero-features .icon{width:1rem;height:1rem}.hero-slider-controls{z-index:4;align-items:center;gap:.75rem;display:flex;position:absolute;bottom:2rem;right:max(1rem,50vw - 36rem)}.hero-slider-controls>button{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff24;border:1px solid #ffffff57;border-radius:999px;place-items:center;width:2.75rem;height:2.75rem;transition:background-color .16s,transform .16s;display:grid}.hero-slider-controls>button:hover{background:#ffffff3d;transform:translateY(-1px)}.hero-slider-controls .icon{width:1rem;height:1rem}.hero-slider-dots{align-items:center;gap:.45rem;display:flex}.hero-slider-dots button{background:#ffffff6b;border:0;border-radius:999px;width:.55rem;height:.55rem;padding:0;transition:background-color .16s,transform .16s}.hero-slider-dots button.active{background:#fff;transform:scale(1.2)}.section{padding-block:5rem}.two-col{align-items:center;gap:2.5rem;display:grid}.top-align{align-items:start}.two-col h2,.feature-row h2,.contact-side h2{margin-top:.75rem}.two-col p:not(.kicker),.feature-row p{margin-top:1.25rem}.section-muted{background:color-mix(in oklab, var(--secondary) 60%, transparent);width:100%}.section-title-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.text-link{color:var(--primary);text-underline-offset:4px;font-size:.875rem;font-weight:700}.text-link:hover{text-decoration:underline}.top-link{margin-top:2rem;display:inline-flex}.dot-list,.check-list,.chips,.place-list,.contact-list,.footer-list,.footer-links{list-style:none}.dot-list{gap:.625rem;margin:1.5rem 0 0;padding:0;font-size:.875rem;font-weight:700;display:grid}.dot-list li{align-items:center;gap:.75rem;display:flex}.dot-list li:before{content:"";background:var(--primary);border-radius:999px;width:.375rem;height:.375rem}.framed-image{position:relative}.intro-statement{padding-bottom:0}.intro-statement-inner{max-width:54rem}.intro-statement h2{max-width:42rem;margin-top:.75rem}.intro-statement p:last-child{max-width:44rem;margin-top:1rem}.welcome-photo-composition{grid-template-columns:minmax(0,1.2fr) minmax(9rem,.8fr);gap:.85rem;min-height:28rem;display:grid;position:relative}.welcome-photo-composition img{border-radius:var(--radius);object-fit:cover;width:100%;height:100%;box-shadow:var(--soft-shadow)}.welcome-photo-main{object-position:center 54%}.welcome-photo-pair{gap:.85rem;display:grid}.welcome-photo-pair img:first-child{object-position:center 56%}.welcome-photo-pair img:last-child{object-position:center 50%}.location-pill{color:var(--espresso);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffdb;border:1px solid #ffffff80;border-radius:999px;padding:.45rem .75rem;font-size:.75rem;font-weight:800;position:absolute;bottom:1rem;right:1rem;box-shadow:0 14px 30px -24px #00000080}.framed-image:before{content:"";border:2px solid color-mix(in oklab, var(--primary) 30%, transparent);border-radius:var(--radius);width:100%;height:100%;position:absolute;top:-1rem;left:-1rem}.framed-image img,.staggered-images img,.feature-row img,.city-grid img,.room-photo img{border-radius:var(--radius);object-fit:cover;width:100%;position:relative}.framed-image .terrace-seating-image{object-position:center center;transform-origin:50% 82%;transform:scale(1.24)}.framed-image-crop{border-radius:var(--radius);box-shadow:var(--shadow);position:relative;overflow:hidden}.framed-image .framed-image-crop img{box-shadow:none}.framed-image img{box-shadow:var(--shadow)}.card-grid,.service-grid,.service-detail-grid,.city-grid,.quick-facts,.policy-grid,.attraction-grid{gap:1.5rem;margin-top:2.5rem;display:grid}.image-card,.service-card,.detail-card,.note-box,.quick-facts article,.attraction-grid article,.email-contact-card,.group-box{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);overflow:hidden}.image-card{transition:box-shadow .18s,transform .18s;display:block;box-shadow:0 1px 2px #0000000a}.image-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.card-image{aspect-ratio:4/3;overflow:hidden}.card-image img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.image-card:hover img{transform:scale(1.05)}.image-card-no-photo{background:linear-gradient(180deg, #ffffffdb, #faf6f0eb), var(--card)}.image-card-no-photo .card-body{border-top:4px solid color-mix(in oklab, var(--primary) 62%, transparent);min-height:13rem}.card-body{padding:1.25rem}.card-body p,.service-card p,.group-box p,.note-box p,.email-contact-card p{margin-top:.5rem;font-size:.875rem}.max-title{max-width:42rem;margin-top:.75rem}.max-text{max-width:42rem;margin-top:1rem}.accommodation-followup{margin-top:2rem}.info-band{padding-top:0}.quick-facts{gap:1rem}.quick-facts article,.attraction-grid article{padding:1.25rem}.quick-facts strong,.attraction-grid strong{color:var(--foreground);font-size:.875rem;display:block}.quick-facts span,.attraction-grid span{color:var(--muted-foreground);margin-top:.375rem;font-size:.875rem;display:block}.service-grid{gap:1rem}.service-card,.detail-card{padding:1.5rem;box-shadow:0 1px 2px #00000009}.detail-card{padding:1.75rem}.service-card .icon,.detail-card>.icon,.group-box>.icon{color:var(--primary)}.service-card h3,.detail-card h2,.group-box h3{margin-top:1rem}.photo-banner{height:30rem;position:relative;overflow:hidden}.photo-banner img{object-fit:cover;width:100%;height:100%}.photo-banner .solarium-banner-image{object-position:center 56%}.terrace-showcase{background:color-mix(in oklab, var(--secondary) 42%, transparent)}.terrace-immersive{border-radius:var(--radius);background:var(--espresso);min-height:clamp(28rem,48vw,38rem);box-shadow:var(--soft-shadow);position:relative;overflow:hidden}.terrace-immersive:after{content:"";z-index:1;background:linear-gradient(90deg, color-mix(in oklab, var(--espresso) 72%, transparent) 0%, color-mix(in oklab, var(--espresso) 50%, transparent) 34%, color-mix(in oklab, var(--espresso) 18%, transparent) 72%);pointer-events:none;position:absolute;inset:0}.terrace-immersive-media{position:absolute;inset:0}.terrace-immersive-media .carousel-track{height:100%;box-shadow:none;border-radius:0}.terrace-immersive-media .carousel-track img{aspect-ratio:auto;border-radius:0;height:100%}.terrace-immersive-media .carousel-controls{z-index:3}.terrace-immersive-copy{z-index:2;color:#fff;max-width:36rem;padding:clamp(3rem,7vw,6rem);position:relative}.terrace-immersive-copy .kicker,.terrace-immersive-copy p{color:#ffffffe0}.terrace-immersive-copy h2{max-width:34rem;margin-top:1rem}.terrace-immersive-copy>p:not(.kicker){max-width:32rem;margin-top:1.4rem}.photo-carousel{position:relative}.photo-carousel.terrace-immersive-media{position:absolute;inset:0}.carousel-track{overscroll-behavior-x:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:var(--radius);box-shadow:var(--shadow);gap:.75rem;display:flex;overflow-x:auto}.carousel-track::-webkit-scrollbar{display:none}.carousel-track img{aspect-ratio:4/3;border-radius:var(--radius);object-fit:cover;scroll-snap-align:start;flex:0 0 100%;width:100%}.carousel-track img:first-child{object-position:center 56%}.carousel-track img:nth-child(2){object-position:center 52%}.carousel-controls{gap:.5rem;display:flex;position:absolute;bottom:.85rem;right:.85rem}.carousel-controls button{width:2.6rem;height:2.6rem;color:var(--espresso);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc7;border:1px solid #ffffff73;border-radius:999px;place-items:center;transition:background-color .16s,transform .16s;display:grid;box-shadow:0 14px 30px -24px #0000008c}.carousel-controls button:hover{background:#fff;transform:translateY(-1px)}.carousel-controls .icon{width:1rem;height:1rem}.banner-overlay{background:linear-gradient(to right, color-mix(in oklab, var(--espresso) 75%, transparent), color-mix(in oklab, var(--espresso) 35%, transparent), transparent);position:absolute;inset:0}.banner-copy{flex-direction:column;justify-content:center;display:flex;position:absolute;inset:0}.banner-copy h2,.banner-copy p{color:#fff;max-width:28rem}.banner-copy p{color:#ffffffe6;margin-top:1rem}.staggered-images{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.staggered-images img{height:100%}.staggered-images img:nth-child(2){margin-top:2rem}.cta-section{background:var(--azulejo);color:var(--azulejo-foreground)}.cta-inner{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;padding-block:4rem;display:flex}.cta-inner h2{max-width:42rem;color:var(--azulejo-foreground)}.cta-inner p:not(.kicker){max-width:36rem;color:color-mix(in oklab, var(--azulejo-foreground) 85%, transparent)}.page-hero{border-bottom:1px solid var(--border);background:color-mix(in oklab, var(--secondary) 50%, transparent)}.page-hero .container{padding-block:4rem}.page-hero h1{margin-top:.75rem}.page-hero .hero-subtitle{max-width:42rem;margin-top:.6rem;font-size:2rem}.page-hero p:not(.kicker){max-width:42rem;margin-top:1rem}.chips{flex-wrap:wrap;gap:.5rem;margin:1.5rem 0 0;padding:0;display:flex}.chips li{border:1px solid var(--border);background:var(--card);border-radius:999px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.75rem;font-weight:600;display:flex}.chips .icon{width:.875rem;height:.875rem;color:var(--primary)}.rooms-list{gap:3.5rem;display:grid}.rooms-section{gap:2rem;display:grid}.room-jump-links{flex-wrap:wrap;gap:.625rem;display:flex}.room-jump-link{border:1px solid var(--border);background:var(--card);color:var(--muted-foreground);border-radius:999px;padding:.5rem .875rem;font-size:.8125rem;font-weight:700}.room-jump-link:hover{border-color:color-mix(in oklab, var(--primary) 45%, var(--border));color:var(--primary)}.room-options-grid{gap:1.5rem;display:grid}.room-option-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:var(--soft-shadow);flex-direction:column;scroll-margin-top:6rem;display:flex;overflow:hidden}.room-option-media{background:var(--secondary);overflow:hidden}.room-option-media img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .45s}.room-option-card:hover .room-option-media img{transform:scale(1.025)}.room-option-body{flex-direction:column;flex:1;padding:1.25rem;display:flex}.room-row{align-items:center;gap:2rem;display:grid}.room-photo{border-radius:var(--radius);overflow:hidden}.room-photo img{aspect-ratio:4/3}.room-meta{align-items:center;gap:.75rem;display:flex}.room-meta .icon{color:var(--primary)}.room-meta p{letter-spacing:0;text-transform:uppercase;font-size:.75rem;font-weight:700}.room-copy h2{margin-top:.75rem}.room-option-body h2{margin-top:.75rem;font-size:1.45rem;line-height:1.2}.room-copy>p,.room-option-body>p{margin-top:1rem}.room-copy .btn{margin-top:1.75rem}.room-option-body .btn{align-self:flex-start;margin-top:auto}.room-badges{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.room-badges span{background:color-mix(in oklab, var(--secondary) 70%, white);color:var(--muted-foreground);border-radius:999px;padding:.3rem .65rem;font-size:.75rem;font-weight:700}.room-note{border-left:2px solid var(--primary);color:var(--muted-foreground);padding-left:.75rem;font-size:.875rem}.room-option-body .check-list,.room-option-body .room-note{margin-bottom:1.5rem}.check-list{gap:.5rem;margin:1.25rem 0 0;padding:0;display:grid}.check-list li{align-items:flex-start;gap:.625rem;font-size:.875rem;font-weight:600;display:flex}.check-list .icon{width:1rem;height:1rem;color:var(--primary);margin-top:.125rem}.muted-checks li{color:var(--muted-foreground);font-weight:400}.note-box{background:color-mix(in oklab, var(--secondary) 60%, transparent);padding:1.5rem}.note-box h2{font-size:1.25rem}.policy-grid{gap:1rem}.attractions-section{padding-top:0}.attraction-grid{gap:1rem}.feature-row{align-items:center;gap:2.5rem;margin-top:3.5rem;display:grid}.feature-row img{aspect-ratio:4/3}.breakfast-service-image{object-position:center 52%}.reception-service-image{object-position:center 56%}.location-hero{align-items:flex-end;min-height:52vh;display:flex;position:relative;overflow:hidden}.location-hero-copy{padding-top:8rem;padding-bottom:3rem;position:relative}.location-hero-copy h1{color:#fff;max-width:42rem;margin-top:.75rem}.location-address{color:#ffffffe6;margin-top:.75rem;font-size:1.05rem;font-weight:800}.place-list{gap:1.25rem;margin:2rem 0;padding:0;display:grid}.place-list li{align-items:flex-start;gap:1rem;display:flex}.place-list span{border-radius:calc(var(--radius) - 2px);background:var(--secondary);width:2.5rem;height:2.5rem;color:var(--primary);flex:none;justify-content:center;align-items:center;display:flex}.place-list .icon{width:1.25rem;height:1.25rem}.place-list p{margin-top:.25rem;font-size:.875rem}.map-frame{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--soft-shadow);overflow:hidden}.map-frame iframe{border:0;width:100%;height:26.25rem}.contact-map{margin-top:3.5rem}.contact-map iframe{height:23.75rem}.city-grid img{aspect-ratio:4/3}.city-center-image{object-position:58% center}.history-hero{background:var(--espresso);align-items:flex-end;min-height:62vh;display:flex;position:relative;overflow:hidden}.history-hero>img{object-fit:cover;object-position:56% center;width:100%;height:100%;position:absolute;inset:0}.history-hero-overlay{background:linear-gradient(to top, color-mix(in oklab, var(--espresso) 84%, transparent), color-mix(in oklab, var(--espresso) 38%, transparent), transparent), linear-gradient(to right, color-mix(in oklab, var(--espresso) 55%, transparent), transparent 70%);position:absolute;inset:0}.history-hero-copy{z-index:1;padding-top:8rem;padding-bottom:4rem;position:relative}.history-hero-copy h1{color:#fff;text-transform:uppercase;max-width:44rem;margin-top:.75rem}.history-hero-copy p:not(.kicker){color:#ffffffe6;max-width:42rem;margin-top:1rem;font-size:1.2rem}.history-story{gap:5rem;display:grid}.history-feature{align-items:center;gap:2.5rem;display:grid}.history-feature-copy h2{max-width:36rem;margin-top:.75rem}.history-feature-copy p:not(.kicker){max-width:39rem;margin-top:1.25rem;font-size:1.05rem}.history-feature img{aspect-ratio:4/3;border-radius:var(--radius);object-fit:cover;width:100%;box-shadow:var(--shadow)}.history-feature:first-child img{aspect-ratio:5/6;object-position:center 54%}.history-feature.reverse img{object-position:center 55%}.history-closing{padding-top:0}.history-closing-inner{border-top:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center;padding-block:clamp(3rem,7vw,5rem)}.history-closing-inner>p{max-width:48rem;color:var(--foreground);margin-inline:auto;font-family:Fraunces,ui-serif,Georgia,serif;font-size:clamp(1.8rem,4vw,3rem);line-height:1.16}.gallery{columns:1;column-gap:1.125rem}.gallery-item{break-inside:avoid;border-radius:var(--radius);background:var(--secondary);cursor:zoom-in;border:0;width:100%;margin:0 0 1.125rem;padding:0;line-height:0;transition:box-shadow .2s,transform .2s;display:block;position:relative;overflow:hidden;box-shadow:0 1px 2px #0000000f}.gallery-item img{object-fit:cover;width:100%;height:auto;transition:transform .55s}.gallery-item:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.gallery-item:hover img{transform:scale(1.03)}.gallery-lightbox{z-index:60;background:color-mix(in oklab, var(--espresso) 88%, transparent);place-items:center;padding:clamp(1rem,3vw,2rem);display:grid;position:fixed;inset:0}.gallery-lightbox[hidden]{display:none}.lightbox-stage{place-items:center;width:min(100%,74rem);height:min(82vh,48rem);display:grid}.lightbox-image{border-radius:var(--radius);object-fit:contain;width:auto;max-width:min(100%,100vw - 8rem);height:auto;max-height:min(82vh,48rem);box-shadow:0 1.5rem 4rem #0006}.lightbox-close,.lightbox-nav{z-index:61;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff2e;border-radius:999px;place-items:center;transition:background .2s,transform .2s;display:grid;position:fixed}.lightbox-close:hover,.lightbox-nav:hover{background:#fff3;transform:scale(1.03)}.lightbox-close{width:2.75rem;height:2.75rem;top:1.25rem;right:1.25rem}.lightbox-nav{width:3rem;height:3rem;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{transform:translateY(-50%)scale(1.03)}.lightbox-prev{left:1.25rem}.lightbox-next{right:1.25rem}.lightbox-close .icon,.lightbox-nav .icon{width:1.25rem;height:1.25rem}body.lightbox-open{overflow:hidden}.contact-grid{gap:2.5rem;display:grid}.contact-side{align-content:start;gap:2rem;display:grid}.contact-list{gap:1rem;margin:1.25rem 0 0;padding:0;font-size:.875rem;display:grid}.contact-list li{align-items:flex-start;gap:.75rem;display:flex}.contact-list .icon{width:1rem;height:1rem;color:var(--primary);margin-top:.125rem}.contact-list span,.contact-list a{color:var(--muted-foreground)}.contact-list a:hover{color:var(--foreground)}.group-box,.email-contact-card{padding:1.5rem}.email-contact-card{align-content:center;gap:1rem;min-height:100%;padding:clamp(1.5rem,4vw,2.5rem);display:grid}.email-contact-card>.icon{width:2rem;height:2rem;color:var(--primary)}.email-contact-card h2{margin-top:0}.email-link{width:fit-content;color:var(--primary);font-weight:700}.email-link:hover{text-decoration:underline}.email-contact-card .btn{justify-self:start;margin-top:.5rem}.location-contact-card{isolation:isolate;background:var(--card);border-color:color-mix(in oklab, var(--primary) 18%, var(--border));align-content:end;min-height:28rem;position:relative;box-shadow:0 24px 50px -36px #00000073}.location-contact-card:before,.location-contact-card:after{content:"";z-index:-2;position:absolute;inset:0}.location-contact-card:before{opacity:1;background:url(/assets/sevilla-giralda.jpg) 50% 46%/cover no-repeat}.location-contact-card:after{z-index:-1;background:linear-gradient(#ffffff0f,#251d1747 46%,#251d17c7),linear-gradient(90deg,#251d1747,#0000 58%)}.location-contact-card>.icon,.location-contact-card .kicker,.location-contact-card h2,.location-contact-card p{color:var(--espresso-foreground)}.location-contact-card p{max-width:24rem;color:color-mix(in oklab, var(--espresso-foreground) 90%, transparent);text-shadow:0 1px 14px #00000047;font-size:1.02rem}.location-contact-card h2{text-shadow:0 1px 18px #0000004d;max-width:22rem}.location-contact-card .kicker{color:color-mix(in oklab, var(--espresso-foreground) 92%, transparent);text-shadow:0 1px 12px #0000003d}.location-contact-card .btn{border:1px solid #ffffff3d;box-shadow:0 16px 32px -22px #0000008c}.not-found{text-align:center;justify-content:center;align-items:center;min-height:60vh;padding:3rem 1rem;display:flex}.not-found h1{font-size:4.5rem;font-weight:700}.not-found h2{margin-top:1rem;font-family:Karla,ui-sans-serif,system-ui,sans-serif;font-size:1.25rem}.not-found p{margin-top:.5rem}.not-found .btn{margin-top:1.5rem}.site-footer{background:var(--espresso);color:var(--espresso-foreground)}.site-footer p,.site-footer a,.site-footer span{color:color-mix(in oklab, var(--espresso-foreground) 85%, transparent)}.footer-grid{gap:2.5rem;width:min(100% - 2rem,72rem);margin-inline:auto;padding-block:3.5rem;display:grid}.footer-brand{color:var(--espresso-foreground);font-size:1.5rem;font-weight:600}.footer-tag{color:color-mix(in oklab, var(--espresso-foreground) 70%, transparent)}.footer-copy{max-width:20rem;margin-top:1rem;font-size:.875rem}.site-footer h3{color:color-mix(in oklab, var(--espresso-foreground) 70%, transparent);letter-spacing:0;text-transform:uppercase;font-family:Karla,ui-sans-serif,system-ui,sans-serif;font-size:.875rem}.footer-list,.footer-links{gap:.75rem;margin:1rem 0 0;padding:0;font-size:.875rem;display:grid}.footer-list li{align-items:flex-start;gap:.75rem;display:flex}.footer-list .icon{opacity:.7;width:1rem;height:1rem;margin-top:.125rem}.footer-links a:hover,.footer-list a:hover{text-decoration:underline}.footer-bottom{text-align:center;border-top:1px solid #ffffff1a;flex-direction:column;justify-content:space-between;align-items:center;gap:.5rem;width:min(100% - 2rem,72rem);margin-inline:auto;padding-block:1.25rem;font-size:.75rem;display:flex}.footer-bottom p{color:color-mix(in oklab, var(--espresso-foreground) 70%, transparent);font-size:.75rem}@media (width>=640px){.container,.section,.header-inner,.footer-grid,.footer-bottom{width:min(100% - 3rem,72rem)}.service-grid,.card-grid,.quick-facts,.policy-grid,.attraction-grid,.room-options-grid,.city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery{columns:2}.footer-bottom{text-align:left;flex-direction:row}}@media (width>=768px){.service-detail-grid,.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-slide>.hero-entrance-image{object-position:60% center}.hero-slide>.hero-seville-image{object-position:center 52%}.city-center-image{object-position:62% center}}@media (width>=1024px){.desktop-nav{gap:1.05rem;display:flex}.menu-toggle,.mobile-nav,.mobile-header-tools{display:none}.two-col,.room-row,.feature-row,.history-feature{grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem}.room-row.reverse .room-photo,.feature-row.reverse img,.history-feature.reverse img{order:2}.service-grid,.attraction-grid,.city-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.room-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.room-options-grid,.quick-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.service-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery{columns:3}.contact-grid{grid-template-columns:2fr 3fr;gap:3.5rem}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=767px){body{padding-bottom:calc(4.25rem + env(safe-area-inset-bottom))}h1{font-size:clamp(2.15rem,10vw,2.65rem);line-height:1.06}h2{font-size:clamp(1.75rem,8vw,2.1rem);line-height:1.14}p{line-height:1.7}.container,.section,.header-inner,.footer-grid,.footer-bottom{width:min(100% - 1.25rem,72rem)}.header-inner{height:3.75rem}.brand{min-width:0}.brand-name{letter-spacing:0;font-size:1.08rem}.brand-tag{letter-spacing:0;font-size:.55rem}.brand-symbol{width:1.95rem;height:1.95rem}.mobile-header-tools{gap:.5rem}.menu-toggle{width:2.75rem;height:2.75rem}.language-switcher{gap:.15rem}.mobile-reserve{min-height:3rem;margin-top:.65rem;font-size:.95rem}.hero-content h1{overflow-wrap:anywhere;max-width:22rem;font-size:clamp(2.25rem,11vw,3rem);line-height:1.03}.hero-content>p:not(.kicker){overflow-wrap:anywhere;max-width:22rem;font-size:1.02rem}.home-hero{min-height:min(47rem,82svh)}.hero-slide>.hero-entrance-image{object-position:55% 50%}.hero-slide>.hero-history-image{object-position:center 45%}.hero-slide>.hero-seville-image{object-position:center 50%}.hero-overlay{background:linear-gradient(to top, color-mix(in oklab, var(--espresso) 88%, transparent), color-mix(in oklab, var(--espresso) 48%, transparent), color-mix(in oklab, var(--espresso) 14%, transparent))}.hero-content{padding-top:8rem;padding-bottom:4.6rem}.hero-features{border-top-color:#ffffff2e;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin-top:1.65rem;padding-top:1rem;display:grid}.hero-features li{border-radius:var(--radius);background:#ffffff14;border:1px solid #ffffff24;align-items:flex-start;min-height:2.5rem;padding:.55rem .6rem;font-size:.78rem;line-height:1.25}.hero-slider-controls{gap:.55rem;bottom:.85rem;right:.75rem}.hero-slider-controls>button{width:2.45rem;height:2.45rem}.section,.page-hero .container{padding-block:3.25rem}.page-hero .container{padding-top:3rem}.page-hero p:not(.kicker),.max-text{font-size:1rem}.page-hero .hero-subtitle{font-size:clamp(1.55rem,7vw,1.9rem)}.welcome-photo-composition{grid-template-columns:1fr;gap:.75rem;min-height:0}.terrace-immersive{min-height:34rem}.terrace-immersive:after{background:linear-gradient(to bottom, color-mix(in oklab, var(--espresso) 72%, transparent) 0%, color-mix(in oklab, var(--espresso) 44%, transparent) 48%, color-mix(in oklab, var(--espresso) 28%, transparent) 100%)}.terrace-immersive-copy{padding:2rem}.welcome-photo-main{aspect-ratio:1.15}.welcome-photo-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.welcome-photo-pair img{aspect-ratio:1}.location-pill{max-width:calc(100% - 1.4rem);font-size:.7rem;bottom:.7rem;right:.7rem}.card-grid,.service-grid,.service-detail-grid,.city-grid,.quick-facts,.policy-grid,.attraction-grid{gap:.9rem;margin-top:1.65rem}.quick-facts article,.attraction-grid article,.service-card,.detail-card,.note-box,.group-box,.email-contact-card{padding:1.15rem}.section-title-row{align-items:flex-start}.image-card{border-radius:calc(var(--radius) + 1px)}.room-jump-links{z-index:12;background:color-mix(in oklab, var(--background) 96%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);scrollbar-width:none;flex-wrap:nowrap;margin-inline:-.625rem;padding:.75rem .625rem;position:sticky;top:3.75rem;overflow-x:auto}.room-jump-links::-webkit-scrollbar{display:none}.room-jump-link{flex:none;align-items:center;min-height:2.5rem;display:inline-flex}.room-options-grid{gap:1rem}.room-option-card{border-radius:calc(var(--radius) + 1px);box-shadow:0 16px 34px -30px #00000080}.room-option-media img{aspect-ratio:1.18}.room-option-body{padding:1rem}.room-option-body h2{font-size:1.3rem;line-height:1.18}.room-badges{gap:.4rem;margin-top:.75rem}.room-badges span{padding:.35rem .6rem}.room-option-body>p{margin-top:.8rem;font-size:.95rem;line-height:1.6}.room-option-body .check-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .6rem;margin-top:1rem}.check-list li{font-size:.82rem;line-height:1.35}.room-option-body .btn{width:100%;min-height:3rem;margin-top:.25rem}.room-option-body .check-list,.room-option-body .room-note{margin-bottom:1.1rem}.photo-banner{height:23rem}.terrace-showcase .two-col{gap:1.5rem}.carousel-track img{aspect-ratio:1.18}.carousel-controls{bottom:.65rem;right:.65rem}.banner-overlay{background:linear-gradient(to top, color-mix(in oklab, var(--espresso) 82%, transparent), color-mix(in oklab, var(--espresso) 30%, transparent), transparent)}.banner-copy{justify-content:flex-end;padding-bottom:2rem}.staggered-images{gap:.75rem}.feature-row{gap:1.25rem;margin-top:2.25rem}.feature-row img,.city-grid img{aspect-ratio:1.2}.city-center-image{object-position:67% center}.history-hero{min-height:54vh}.history-hero-copy{padding-top:7rem;padding-bottom:3rem}.history-hero-copy p:not(.kicker){font-size:1.05rem}.history-story{gap:3.25rem}.history-feature{gap:1.5rem}.history-feature:first-child img,.history-feature img{aspect-ratio:1.15}.map-frame iframe{height:18.5rem}.contact-map{margin-top:2rem}.contact-map iframe{height:17.5rem}.gallery{column-gap:.75rem}.gallery-item{margin-bottom:.75rem}.gallery-lightbox{padding:.75rem .75rem calc(5rem + env(safe-area-inset-bottom))}.lightbox-stage{width:100%;height:78vh}.lightbox-image{max-width:calc(100vw - 1.5rem);max-height:72vh}.lightbox-close{top:calc(.75rem + env(safe-area-inset-top));width:3rem;height:3rem;right:.75rem}.lightbox-nav{top:auto;bottom:calc(1rem + env(safe-area-inset-bottom));width:3.25rem;height:3.25rem;transform:none}.lightbox-nav:hover{transform:none}.lightbox-prev{left:calc(50% - 4rem)}.lightbox-next{right:calc(50% - 4rem)}.actions .btn{flex:100%;min-height:3rem}.contact-grid{gap:1.25rem}.contact-list{gap:.75rem}.contact-list li,.footer-list li{gap:.65rem}.contact-list a,.footer-list a,.footer-links a{align-items:center;min-height:2.25rem;display:inline-flex}.email-contact-card .btn,.btn-wide{width:100%}.location-contact-card{min-height:24rem}.location-contact-card:before{background-position:52% 42%}.cta-inner{padding-block:3.25rem}.footer-grid{gap:2rem;padding-block:2.75rem}.footer-bottom{padding-bottom:calc(1.25rem + env(safe-area-inset-bottom))}.mobile-sticky-book,.mobile-sticky-book.visible,body.lightbox-open .mobile-sticky-book{display:none}}@media (width>=380px) and (width<=767px){.gallery{columns:2}}@media (width<=359px){.brand-tag{display:none}.header-inner{width:min(100% - 1rem,72rem)}.language-switcher{font-size:.7rem}.hero-features,.room-option-body .check-list{grid-template-columns:1fr}}@media (width>=768px){.mobile-sticky-book{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
