:root{
  --ink:#2f2924;--brown:#5f4939;--brown-dark:#3c3028;--terracotta:#b67758;--cream:#f4ede4;--cream-2:#fbf7f1;--gold:#c9a46b;--muted:#766b62;--line:rgba(62,49,39,.12);--glass:rgba(255,255,255,.15);--shadow:0 28px 70px rgba(38,28,19,.16)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}button{font:inherit}
.topbar{position:fixed;top:18px;left:50%;transform:translateX(-50%);width:min(1260px,calc(100% - 28px));height:78px;padding:0 18px 0 16px;display:flex;align-items:center;gap:26px;z-index:80;background:rgba(248,241,232,.76);border:1px solid rgba(255,255,255,.55);border-radius:999px;backdrop-filter:blur(20px) saturate(1.2);box-shadow:0 16px 50px rgba(39,29,21,.12);transition:.35s}.topbar.compact{top:9px;background:rgba(248,241,232,.92);box-shadow:0 12px 40px rgba(39,29,21,.16)}
.brand{display:flex;align-items:center;gap:12px;min-width:260px}.brand-seal{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--brown);color:#fff;font:600 18px "Playfair Display",serif;border:1px solid rgba(255,255,255,.35);box-shadow:inset 0 0 0 5px rgba(255,255,255,.08)}.brand b{display:block;font-size:8px;letter-spacing:.2em;text-transform:uppercase;color:var(--terracotta)}.brand strong{display:block;font:500 24px/1 "Playfair Display",serif;color:var(--brown-dark);margin-top:3px}.nav{display:flex;align-items:center;justify-content:center;gap:26px;margin-left:auto}.nav a{font-size:12px;color:#63584f;position:relative}.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--terracotta);transition:.3s}.nav a:hover::after{right:0}.top-cta{background:var(--brown-dark);color:#fff;border-radius:999px;padding:14px 20px;font-size:12px;font-weight:700;white-space:nowrap;transition:.3s}.top-cta:hover{background:var(--terracotta);transform:translateY(-2px)}.menu-btn{display:none;margin-left:auto;border:0;background:transparent;width:45px;height:45px;position:relative}.menu-btn i{position:absolute;width:23px;height:1px;background:var(--brown-dark);left:11px;transition:.25s}.menu-btn i:first-child{top:18px}.menu-btn i:last-child{top:27px}.menu-btn.active i:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-btn.active i:last-child{transform:translateY(-4.5px) rotate(-45deg)}
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;background:#5d5045}.hero-photo,.hero-shade,.hero-glow{position:absolute;inset:0}.hero-photo{background:url('images/fachada-1.png') center center/cover no-repeat;transform:scale(1.035);animation:heroDrift 18s ease-in-out infinite alternate}.hero-shade{background:linear-gradient(90deg,rgba(28,23,19,.8) 0%,rgba(36,29,24,.63) 37%,rgba(35,28,22,.2) 73%),linear-gradient(0deg,rgba(29,23,19,.55),transparent 50%)}.hero-glow{pointer-events:none}.glow-one{width:420px;height:420px;left:-140px;top:25%;background:radial-gradient(circle,rgba(221,183,128,.24),transparent 67%);animation:floatA 9s ease-in-out infinite}.glow-two{width:360px;height:360px;right:-100px;top:9%;left:auto;background:radial-gradient(circle,rgba(255,255,255,.14),transparent 67%);animation:floatA 11s ease-in-out infinite reverse}.hero-shell{position:relative;z-index:2;width:min(1260px,calc(100% - 48px));margin:0 auto 68px;display:grid;grid-template-columns:minmax(0,1.3fr) 420px;gap:64px;align-items:end}.hero-copy{padding:120px 0 18px;color:#fff}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.24em;color:#ecd2ad;display:flex;align-items:center;gap:10px}.eyebrow span{width:38px;height:1px;background:#d7ae75}.hero h1{font:500 clamp(58px,6.9vw,104px)/.89 "Playfair Display",serif;letter-spacing:-.045em;max-width:790px;margin:22px 0 26px}.hero h1 em{font-weight:500;color:#f2d5aa}.hero-lead{max-width:610px;margin:0;font-size:16px;line-height:1.75;color:rgba(255,255,255,.82)}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:34px}.btn{display:inline-flex;align-items:center;gap:18px;border-radius:999px;padding:15px 22px;font-size:12px;font-weight:700;transition:.3s}.btn span{font-size:17px}.btn-light{background:#f7f0e7;color:var(--brown-dark);box-shadow:0 14px 35px rgba(0,0,0,.18)}.btn-light:hover{transform:translateY(-3px);background:#fff}.btn-link{font-size:12px;color:#fff;display:flex;gap:12px;align-items:center}.btn-link span{color:#ddbc8c}.hero-glass{color:#fff;padding:30px 30px 26px;border-radius:30px;background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.07));border:1px solid rgba(255,255,255,.22);box-shadow:0 30px 70px rgba(0,0,0,.2);backdrop-filter:blur(22px) saturate(1.1)}.glass-label{font-size:9px;text-transform:uppercase;letter-spacing:.22em;color:#e9cca2}.hero-glass h2{font:500 35px/1.06 "Playfair Display",serif;margin:11px 0 19px}.glass-divider{height:1px;background:rgba(255,255,255,.17);margin-bottom:6px}.glass-row{display:grid;grid-template-columns:30px 1fr;gap:8px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.13)}.glass-row:last-child{border-bottom:0;padding-bottom:0}.glass-row>span{color:#e4bc84;font:500 12px "Playfair Display",serif}.glass-row p{margin:0}.glass-row b{display:block;font:500 17px "Playfair Display",serif}.glass-row small{display:block;font-size:10px;line-height:1.5;color:rgba(255,255,255,.58);margin-top:4px}.photo-disclaimer{position:absolute;bottom:16px;right:24px;z-index:3;color:rgba(255,255,255,.55);font-size:8px;text-transform:uppercase;letter-spacing:.15em}
.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.hero-badges span{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#f3dfc0}.btn-dark{background:var(--brown-dark);color:#fff;box-shadow:0 14px 35px rgba(38,28,19,.14)}.btn-dark:hover{transform:translateY(-3px);background:var(--terracotta)}.focus{background:#f7f1e8}.focus-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center}.focus-copy h2{font:500 clamp(40px,4.6vw,64px)/1.02 "Playfair Display",serif;letter-spacing:-.04em;color:var(--brown-dark);margin:0 0 20px}.focus-copy p{margin:0 0 18px;color:var(--muted);font-size:14px;line-height:1.8}.focus-list{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:12px}.focus-list li{position:relative;padding-left:26px;color:var(--ink);font-size:13px;line-height:1.65}.focus-list li::before{content:"✦";position:absolute;left:0;top:0;color:var(--terracotta)}.focus-figure{margin:0;position:relative;border-radius:32px;overflow:hidden;box-shadow:var(--shadow);min-height:560px;background:#ddd}.focus-figure img{position:absolute;inset:0}.focus-figure figcaption{position:absolute;left:20px;right:20px;bottom:20px;background:rgba(255,249,241,.88);backdrop-filter:blur(10px);border-radius:18px;padding:14px 16px;color:var(--brown-dark);font:500 14px/1.4 "DM Sans",sans-serif;text-transform:none}
.marquee{position:relative;overflow:hidden;background:var(--terracotta);color:#fff;padding:15px 0;transform:rotate(-.55deg) scale(1.015);z-index:4;box-shadow:0 12px 30px rgba(81,48,31,.18)}.marquee-track{display:flex;width:max-content;will-change:transform;animation:ticker 21s linear infinite}.marquee-set{display:flex;align-items:center;flex-shrink:0;white-space:nowrap}.marquee-set span{font:500 20px "Playfair Display",serif;padding:0 18px}.marquee-set b{font-weight:400;color:#f0d8b6;font-size:12px}
.section{padding:118px 0}.section-shell{width:min(1180px,calc(100% - 48px));margin:0 auto}.section-number{display:block;font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--terracotta);margin-bottom:20px}.section-number.light{color:#e6c18d}.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:end}.intro h2,.living h2,.stay h2{font:500 clamp(46px,5.2vw,72px)/.98 "Playfair Display",serif;letter-spacing:-.04em;color:var(--brown-dark);margin:0}.intro h2 em{color:var(--terracotta);font-weight:500}.intro-copy{padding-bottom:2px}.intro-copy p{margin:0 0 16px;color:var(--muted);font-size:14px;line-height:1.8}.text-arrow{display:inline-flex;align-items:center;gap:14px;color:var(--brown-dark);font-size:12px;font-weight:700;margin-top:10px;border-bottom:1px solid rgba(62,48,39,.25);padding-bottom:7px}.portrait-strip{display:grid;grid-template-columns:1.28fr .72fr;gap:22px;margin-top:65px}.portrait-card{height:570px;position:relative;margin:0;border-radius:32px;overflow:hidden;box-shadow:var(--shadow)}.portrait-card img{transition:transform 1.2s ease}.portrait-card:hover img{transform:scale(1.035)}.portrait-card figcaption{position:absolute;left:20px;bottom:20px;right:20px;background:rgba(255,249,241,.88);backdrop-filter:blur(12px);padding:15px 18px;border-radius:18px;color:var(--brown-dark);font:500 18px "Playfair Display",serif}.portrait-card figcaption small{float:right;font:500 8px "DM Sans",sans-serif;text-transform:uppercase;letter-spacing:.12em;color:#8d7d70;margin-top:5px}.portrait-message{border-radius:32px;background:var(--brown-dark);padding:45px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;position:relative;overflow:hidden}.portrait-message::before{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-70px;top:-80px}.quote-mark{font:500 96px/1 "Playfair Display",serif;color:#d6aa70;height:68px}.portrait-message p{font:500 32px/1.2 "Playfair Display",serif;margin:0 0 28px}.mini-line{width:45px;height:1px;background:#cda46d;margin-bottom:14px}.portrait-message small{font-size:8px;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.48)}
.care{background:#efe5d8;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;padding:0}.care-photo-wrap{position:relative;min-height:890px;overflow:hidden}.care-photo-wrap img{position:absolute;inset:0}.image-tag{position:absolute;left:20px;bottom:20px;padding:8px 11px;border-radius:999px;background:rgba(255,249,241,.82);backdrop-filter:blur(9px);font-size:7px;text-transform:uppercase;letter-spacing:.14em;color:#66584d}.image-tag.dark{background:rgba(31,24,19,.48);color:rgba(255,255,255,.72)}.orbit-stamp{position:absolute;right:-65px;top:90px;width:150px;height:150px;border-radius:50%;background:rgba(250,244,235,.93);display:grid;place-items:center;box-shadow:var(--shadow)}.orbit-stamp span{position:absolute;font-size:7px;letter-spacing:.18em;color:#765d48;animation:spin 18s linear infinite}.orbit-stamp i{font:400 43px "Playfair Display",serif;color:var(--terracotta);font-style:normal}.care-content{padding:110px max(38px,7vw);display:flex;flex-direction:column;justify-content:center}.care-content h2{font:500 clamp(44px,4.8vw,68px)/.98 "Playfair Display",serif;letter-spacing:-.04em;color:var(--brown-dark);margin:0 0 22px}.care-intro{font-size:14px;line-height:1.8;color:var(--muted);max-width:590px;margin:0 0 34px}.services{border-top:1px solid rgba(68,52,40,.16)}.service{display:grid;grid-template-columns:35px 1fr 30px;gap:15px;align-items:center;padding:18px 0;border-bottom:1px solid rgba(68,52,40,.16);transition:.3s}.service:hover{padding-left:9px}.service>span{font:500 12px "Playfair Display",serif;color:var(--terracotta)}.service h3{font:500 24px "Playfair Display",serif;margin:0 0 3px}.service p{font-size:10px;color:#7e7166;margin:0;line-height:1.45}.service i{font-style:normal;color:var(--terracotta)}
.full-photo-quote{position:relative;min-height:720px;display:flex;align-items:end;overflow:hidden}.full-photo-bg,.full-photo-shade{position:absolute;inset:0}.full-photo-bg{background:url('images/fachada-2.png') center center/cover no-repeat;animation:heroDrift 20s ease-in-out infinite alternate}.full-photo-shade{background:linear-gradient(0deg,rgba(31,25,21,.72),rgba(31,25,21,.05) 72%),linear-gradient(90deg,rgba(34,27,23,.4),transparent 70%)}.full-photo-copy{position:relative;z-index:2;width:min(1180px,calc(100% - 48px));margin:0 auto 66px;color:#fff}.full-photo-copy blockquote{font:500 clamp(40px,5.2vw,72px)/1 "Playfair Display",serif;letter-spacing:-.04em;max-width:860px;margin:0 0 20px}.full-photo-copy p{margin:0;font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:rgba(255,255,255,.62)}
.living{background:var(--cream-2)}.living-head{display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:end}.living-head>p{margin:0;color:var(--muted);font-size:14px;line-height:1.8;padding-bottom:5px}.gallery{margin-top:55px;display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:340px 300px;gap:18px}.g-card{position:relative;margin:0;border-radius:28px;overflow:hidden;box-shadow:0 18px 45px rgba(53,38,24,.1)}.g-card img{transition:transform .9s ease}.g-card:hover img{transform:scale(1.045)}.g-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(35,28,23,.62),transparent 52%)}.g-wide{grid-row:1/3}.g-tall{grid-column:2;grid-row:1}.g-small{grid-column:2;grid-row:2}.g-card figcaption{position:absolute;left:22px;bottom:19px;z-index:2;color:#fff}.g-card figcaption b{display:block;font:500 24px "Playfair Display",serif}.g-card figcaption span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.66)}.g-info{position:absolute;display:none}.stay{background:#e9ded0}.stay-grid{display:grid;grid-template-columns:1.05fr .7fr .7fr .85fr;gap:20px}.stay-heading{padding-right:30px}.stay-heading p{font-size:14px;line-height:1.75;color:var(--muted);max-width:500px}.stay-card{min-height:370px;border-radius:30px;background:#f7f0e7;padding:30px;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.55);box-shadow:0 18px 45px rgba(62,45,32,.08)}.stay-card>span{width:44px;height:44px;border-radius:50%;border:1px solid rgba(98,73,55,.16);display:grid;place-items:center;color:var(--terracotta);font:500 12px "Playfair Display",serif}.stay-card h3{font:500 44px "Playfair Display",serif;margin:auto 0 12px;color:var(--brown-dark)}.stay-card p{margin:0;font-size:12px;line-height:1.6;color:var(--muted)}
.contact{position:relative;min-height:850px;display:flex;align-items:center;overflow:hidden}.contact-photo,.contact-shade{position:absolute;inset:0}.contact-photo{background:url('images/fachada-1.png') center center/cover no-repeat;animation:heroDrift 20s ease-in-out infinite alternate}.contact-shade{background:linear-gradient(90deg,rgba(42,32,25,.83),rgba(45,34,27,.45) 55%,rgba(45,34,27,.12))}.contact-shell{position:relative;z-index:2;width:min(1180px,calc(100% - 48px));margin:0 auto}.contact-panel{width:min(600px,100%);padding:42px;border-radius:34px;background:rgba(48,38,31,.56);border:1px solid rgba(255,255,255,.17);backdrop-filter:blur(18px);color:#fff;box-shadow:0 30px 70px rgba(0,0,0,.18)}.contact-panel h2{font:500 clamp(46px,5.1vw,70px)/.97 "Playfair Display",serif;letter-spacing:-.04em;margin:0 0 18px}.contact-panel>p{font-size:13px;line-height:1.7;color:rgba(255,255,255,.7);margin:0 0 25px}.contact-links{border-top:1px solid rgba(255,255,255,.14)}.contact-links a{position:relative;display:block;padding:16px 35px 16px 0;border-bottom:1px solid rgba(255,255,255,.14);transition:.3s}.contact-links a:hover{padding-left:8px}.contact-links small{display:block;text-transform:uppercase;letter-spacing:.16em;color:#e5bd87;font-size:7px;margin-bottom:4px}.contact-links strong{display:block;font:500 20px "Playfair Display",serif}.contact-links em{font-size:9px;color:rgba(255,255,255,.55);font-style:normal}.contact-links i{position:absolute;right:4px;top:50%;transform:translateY(-50%);font-style:normal;color:#e2b87d}.contact-btn{margin-top:26px}.photos-note{display:block;font-size:7px;line-height:1.5;color:rgba(255,255,255,.42);margin-top:18px}
footer{background:#251f1a;color:#f3e8dc;padding:44px 0}.footer-shell{width:min(1180px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;align-items:center}.footer-brand .brand-seal{background:#d3a66d}.footer-brand b{color:#d8aa71}.footer-brand strong{color:#fff}.footer-shell>p{font-size:10px;line-height:1.6;color:rgba(255,255,255,.52);max-width:300px}.footer-shell>div{display:flex;justify-content:flex-end;gap:18px;font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.55)}.whatsapp-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#316d4a;color:#fff;z-index:70;display:grid;place-items:center;font-weight:700;box-shadow:0 18px 38px rgba(31,75,50,.35);transition:.3s}.whatsapp-float:hover{transform:translateY(-4px) scale(1.03)}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .85s cubic-bezier(.2,.75,.2,1),transform .85s cubic-bezier(.2,.75,.2,1)}.reveal.is-visible{opacity:1;transform:none}.service.reveal:nth-child(2){transition-delay:.07s}.service.reveal:nth-child(3){transition-delay:.14s}.service.reveal:nth-child(4){transition-delay:.21s}.service.reveal:nth-child(5){transition-delay:.28s}
@keyframes ticker{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}@keyframes heroDrift{from{transform:scale(1.035)}to{transform:scale(1.095)}}@keyframes floatA{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)}}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1050px){.nav{display:none}.topbar{gap:14px}.top-cta{margin-left:auto}.hero-shell{grid-template-columns:1fr;gap:30px}.hero-copy{padding-top:125px}.hero-glass{max-width:620px}.intro-grid,.living-head,.focus-grid{grid-template-columns:1fr;gap:30px}.portrait-strip{grid-template-columns:1fr .8fr}.care{grid-template-columns:1fr}.care-photo-wrap{min-height:650px}.orbit-stamp{right:25px;top:auto;bottom:-40px}.stay-grid{grid-template-columns:1fr 1fr}.stay-heading{grid-column:1/3}.footer-shell{grid-template-columns:1fr 1fr}.footer-shell>div{grid-column:1/3;justify-content:flex-start}}
@media(max-width:720px){.topbar{top:9px;height:70px;width:calc(100% - 14px);padding:0 11px}.brand{min-width:unset}.brand-seal{width:42px;height:42px}.brand strong{font-size:19px}.brand b{font-size:7px}.top-cta{display:none}.menu-btn{display:block}.nav{display:flex;position:fixed;top:78px;left:7px;right:7px;background:rgba(248,241,232,.96);backdrop-filter:blur(18px);padding:14px 18px;border-radius:22px;flex-direction:column;align-items:stretch;gap:0;opacity:0;transform:translateY(-9px);pointer-events:none;transition:.3s;box-shadow:var(--shadow)}.nav.open{opacity:1;transform:none;pointer-events:auto}.nav a{padding:12px 0;border-bottom:1px solid var(--line)}.hero{min-height:auto}.hero-shell{width:calc(100% - 30px);margin-bottom:34px}.hero-copy{padding-top:130px}.hero h1{font-size:clamp(50px,14vw,68px)}.hero-lead{font-size:14px}.hero-badges{gap:8px}.hero-badges span{font-size:9px;padding:9px 12px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-glass{padding:24px;border-radius:24px}.hero-glass h2{font-size:30px}.marquee{padding:12px 0}.marquee-track{animation-duration:16s}.marquee-set span{font-size:17px;padding:0 13px}.section{padding:86px 0}.section-shell{width:calc(100% - 30px)}.intro h2,.living h2,.stay h2,.focus-copy h2{font-size:46px}.portrait-strip{grid-template-columns:1fr;margin-top:42px}.portrait-card{height:480px}.portrait-message{min-height:350px;padding:32px}.portrait-message p{font-size:28px}.focus-figure{min-height:380px}.care-photo-wrap{min-height:520px}.care-content{padding:84px 20px}.care-content h2{font-size:47px}.full-photo-quote{min-height:620px}.full-photo-copy{width:calc(100% - 30px);margin-bottom:42px}.full-photo-copy blockquote{font-size:42px}.living-head{width:calc(100% - 30px)}.gallery{width:calc(100% - 30px);grid-template-columns:1fr;grid-template-rows:none}.g-wide,.g-tall,.g-small{grid-column:auto;grid-row:auto;height:430px}.g-tall,.g-small{height:320px}.stay-grid{grid-template-columns:1fr}.stay-heading{grid-column:auto;padding-right:0}.stay-card{min-height:300px}.contact{min-height:800px}.contact-shell{width:calc(100% - 30px)}.contact-panel{padding:28px}.contact-panel h2{font-size:45px}.footer-shell{width:calc(100% - 30px);grid-template-columns:1fr}.footer-shell>div{grid-column:auto;justify-content:flex-start;flex-wrap:wrap}.photo-disclaimer{right:12px}.whatsapp-float{right:14px;bottom:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.hero-photo,.full-photo-bg,.contact-photo,.hero-glow{animation:none}.orbit-stamp span{animation-duration:40s}.marquee-track{animation-duration:38s}}

.footer-credit{width:min(1180px,calc(100% - 48px));margin:28px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.09);text-align:center;font-size:9px;letter-spacing:.08em;color:rgba(255,255,255,.38)}.footer-credit strong{color:rgba(255,255,255,.7);font-weight:600}
@media(max-width:720px){.footer-credit{width:calc(100% - 30px);margin-top:24px}}

.site-gallery{background:#f2e9dd}.gallery-head{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end}.gallery-head h2{font:500 clamp(46px,5vw,70px)/1 "Playfair Display",serif;letter-spacing:-.04em;color:var(--brown-dark);margin:0}.gallery-head>p{margin:0;color:var(--muted);font-size:14px;line-height:1.8;padding-bottom:6px}.site-gallery-grid{margin-top:48px;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:215px;gap:16px}.site-gallery-item{position:relative;grid-column:span 4;border:0;padding:0;margin:0;border-radius:24px;overflow:hidden;background:#d9cfc2;cursor:pointer;box-shadow:0 16px 38px rgba(53,38,24,.09);text-align:left}.site-gallery-item.gallery-large{grid-column:span 7;grid-row:span 2}.site-gallery-item.gallery-wide{grid-column:span 8}.site-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .4s ease}.site-gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(29,23,19,.68),transparent 48%);transition:.35s}.site-gallery-item span{position:absolute;left:20px;bottom:17px;z-index:2;color:#fff;font:500 20px "Playfair Display",serif}.site-gallery-item:hover img{transform:scale(1.045);filter:saturate(1.04)}.site-gallery-item:hover::after{background:linear-gradient(0deg,rgba(29,23,19,.74),transparent 58%)}.lightbox{position:fixed;inset:0;z-index:150;background:rgba(22,18,15,.92);display:grid;place-items:center;padding:34px;opacity:0;pointer-events:none;transition:.3s}.lightbox.open{opacity:1;pointer-events:auto}.lightbox img{width:auto;height:auto;max-width:min(1200px,92vw);max-height:88vh;object-fit:contain;border-radius:18px;box-shadow:0 34px 90px rgba(0,0,0,.42)}.lightbox-close{position:absolute;right:24px;top:18px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff;font-size:30px;line-height:1;cursor:pointer;backdrop-filter:blur(10px)}
@media(max-width:1050px){.gallery-head{grid-template-columns:1fr;gap:24px}.site-gallery-grid{grid-auto-rows:190px}.site-gallery-item{grid-column:span 6}.site-gallery-item.gallery-large{grid-column:span 12;grid-row:span 2}.site-gallery-item.gallery-wide{grid-column:span 12}}
@media(max-width:720px){.site-gallery-grid{grid-template-columns:1fr;grid-auto-rows:280px}.site-gallery-item,.site-gallery-item.gallery-large,.site-gallery-item.gallery-wide{grid-column:auto;grid-row:auto}.site-gallery-item.gallery-large{height:430px}.gallery-head h2{font-size:46px}.lightbox{padding:15px}.lightbox img{max-width:95vw;max-height:82vh}.lightbox-close{right:12px;top:12px}}

.sunny-intro{background:#f8f2e9;padding:82px 0 96px;position:relative;overflow:hidden}.sunny-intro::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-160px;top:-190px;background:radial-gradient(circle,rgba(201,164,107,.16),transparent 68%);pointer-events:none}.sunny-intro-head{display:grid;grid-template-columns:1.05fr .75fr;gap:80px;align-items:end;margin-bottom:38px}.sunny-intro-head h2{font:500 clamp(38px,4.2vw,62px)/1 "Playfair Display",serif;letter-spacing:-.04em;color:var(--brown-dark);margin:0}.sunny-intro-head>p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}.sunny-grid{display:grid;grid-template-columns:1.22fr .78fr;gap:18px}.sunny-photo{height:430px;position:relative;margin:0;border-radius:30px;overflow:hidden;box-shadow:0 22px 55px rgba(53,38,24,.12);background:#dcd1c3}.sunny-photo.sunny-main{height:520px}.sunny-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s ease,filter .5s ease}.sunny-photo:hover img{transform:scale(1.035);filter:saturate(1.06)}.sunny-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(32,25,20,.55),transparent 42%)}.sunny-photo figcaption{position:absolute;left:22px;bottom:20px;z-index:2;color:#fff;font:500 22px "Playfair Display",serif;text-shadow:0 2px 14px rgba(0,0,0,.18)}
@media(max-width:1050px){.sunny-intro-head{grid-template-columns:1fr;gap:22px}.sunny-grid{grid-template-columns:1fr 1fr}.sunny-photo,.sunny-photo.sunny-main{height:430px}}
@media(max-width:720px){.sunny-intro{padding:72px 0}.sunny-intro-head{margin-bottom:28px}.sunny-intro-head h2{font-size:44px}.sunny-grid{grid-template-columns:1fr}.sunny-photo,.sunny-photo.sunny-main{height:360px}.sunny-photo figcaption{font-size:20px}}
