/*
Theme Name: Aurora Residencial
Theme URI: https://auroracasageriatrica.com.br/
Author: Aurora Residencial
Description: Tema oficial do Residencial Aurora em Tramandaí.
Version: 1.0.3
Text Domain: aurora-residencial
*/
:root { --ink:#34493a; --brand:#74866e; --deep:#74866e; --forest:#415744; --sage:#c8d2c2; --cream:#f4f0e7; --paper:#fffdf8; --coral:#b5905b; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { height:92px; display:flex; align-items:center; justify-content:space-between; padding:0 5vw; background:#74866e; color:white; position:relative; z-index:10; box-shadow:0 8px 28px rgba(37,56,41,.12); }
.brand { display:flex; align-items:center; gap:12px; }
.brand-logo { width:220px; height:68px; overflow:hidden; }
.brand-logo img { width:100%; height:100%; object-fit:contain; display:block; }
.brand-mark { width:46px; height:46px; border:2px solid var(--coral); border-radius:50%; display:grid; place-items:center; overflow:hidden; position:relative; }
.brand-mark:after { content:""; width:36px; height:18px; border-radius:36px 36px 0 0; background:var(--coral); position:absolute; bottom:4px; }
.brand-mark i { width:2px; height:13px; background:var(--cream); position:absolute; z-index:1; bottom:5px; box-shadow:-8px 3px 0 var(--cream),8px 3px 0 var(--cream); }
.brand strong { display:block; font-family:Georgia, serif; font-size:24px; line-height:20px; font-weight:500; }
.brand small { display:block; text-transform:uppercase; letter-spacing:2px; font-size:8px; margin-top:5px; }
nav { display:flex; gap:32px; font-size:13px; }
nav a { color:rgba(255,255,255,.86); }
nav a:hover { color:white; }
.mobile-menu { display:none; }
.button { display:inline-flex; align-items:center; justify-content:center; background:var(--coral); color:white; padding:16px 24px; border-radius:3px; font-size:13px; font-weight:700; letter-spacing:.2px; transition:.2s; }
.button:hover { filter:brightness(.94); transform:translateY(-1px); }
.button-small { padding:13px 18px; background:var(--cream); color:var(--forest); }
.hero { min-height:calc(100vh - 88px); position:relative; display:flex; align-items:center; padding:9vw 7vw 140px; overflow:hidden; background:var(--deep); color:white; }
.hero-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(7,35,34,.92) 0%,rgba(7,35,34,.68) 46%,rgba(7,35,34,.18) 100%); }
.hero-content { position:relative; max-width:780px; z-index:2; }
.eyebrow { margin:0 0 20px; text-transform:uppercase; letter-spacing:3px; font-size:11px; font-weight:700; }
.eyebrow.coral { color:var(--coral); }
h1,h2 { font-family:Georgia, 'Times New Roman', serif; font-weight:400; margin:0; line-height:1.06; letter-spacing:-1.5px; }
h1 { font-size:clamp(46px,6.2vw,88px); max-width:900px; }
h2 { font-size:clamp(36px,4.4vw,62px); }
.hero-copy { font-size:18px; line-height:1.65; max-width:590px; color:rgba(255,255,255,.82); margin:28px 0 34px; }
.hero-actions { display:flex; align-items:center; gap:30px; }
.text-link { font-size:13px; font-weight:700; }
.text-link span { margin-left:8px; color:var(--sage); }
.trust-strip { position:absolute; z-index:2; bottom:0; left:0; right:0; display:grid; grid-template-columns:repeat(3,1fr); background:rgba(247,241,232,.96); color:var(--ink); padding:22px 7vw; gap:24px; font-size:12px; }
.trust-strip span { padding-left:20px; border-left:2px solid var(--coral); }
.trust-strip b { display:block; font-family:Georgia, serif; font-size:17px; font-weight:500; margin-bottom:4px; }
.photo-slot { position:relative; border-radius:4px; overflow:hidden; min-height:300px; background:linear-gradient(135deg,#6c9184,#aec1b2 55%,#75998a); }
.photo-slot:before { content:""; position:absolute; width:220px; height:220px; border-radius:50%; background:rgba(247,241,232,.23); top:22%; left:32%; box-shadow:180px 90px 0 rgba(15,58,55,.16); }
.photo-slot.warm { background:linear-gradient(135deg,#bc836d,#e5b394 58%,#9d6f5d); }
.gallery-intro { padding:110px 7vw 120px; }
.section-heading { display:grid; grid-template-columns:1.25fr .75fr; gap:8vw; align-items:end; margin-bottom:54px; }
.section-heading p:last-child { line-height:1.8; color:#607572; margin:0; }
.photo-grid { display:grid; grid-template-columns:1.25fr .75fr; grid-template-rows:250px 250px; gap:18px; }
.gallery-tip { margin:-28px 0 28px; color:#71807d; font-size:12px; }
.house-video { padding:110px 10vw; display:grid; grid-template-columns:1fr minmax(280px,380px); align-items:center; gap:10vw; background:var(--cream); }
.video-copy { max-width:620px; }
.video-copy>p:not(.eyebrow) { max-width:560px; color:#61716d; line-height:1.8; margin:24px 0 30px; }
.text-link.dark { color:var(--deep); }
.video-frame { position:relative; width:100%; aspect-ratio:9/16; overflow:hidden; border-radius:180px 180px 18px 18px; background:var(--deep); box-shadow:0 28px 70px rgba(27,54,43,.2); }
.video-frame::after { content:""; position:absolute; inset:0; border:1px solid rgba(255,255,255,.22); border-radius:inherit; pointer-events:none; }
.video-frame iframe { display:block; width:100%; height:100%; border:0; }
.full-gallery { display:grid; grid-template-columns:repeat(4,1fr); grid-auto-flow:dense; gap:14px; }
.gallery-card { position:relative; min-height:255px; overflow:hidden; padding:0; border:0; border-radius:4px; background:var(--deep); cursor:pointer; color:inherit; text-align:left; font:inherit; }
.gallery-card.landscape { grid-column:span 2; }
.gallery-card.portrait { min-height:390px; }
.gallery-card img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .55s ease,filter .55s ease; }
.gallery-card:after { content:""; position:absolute; inset:55% 0 0; background:linear-gradient(transparent,rgba(4,28,27,.84)); }
.gallery-card span { position:absolute; z-index:1; left:20px; right:18px; bottom:18px; display:flex; align-items:end; gap:9px; color:white; font-family:Georgia,serif; font-size:17px; }
.gallery-card span b { font-family:Arial,sans-serif; font-size:9px; letter-spacing:1.5px; color:var(--sage); }
.gallery-card span i { margin-left:auto; font-family:Arial,sans-serif; font-size:15px; font-style:normal; }
.gallery-card:hover img { transform:scale(1.035); filter:brightness(.94); }
.gallery-card:focus-visible { outline:3px solid var(--coral); outline-offset:3px; }
.modal-open { overflow:hidden; }
.gallery-modal[hidden] { display:none!important; }
.gallery-modal { position:fixed; z-index:100; inset:0; display:grid; place-items:center; padding:46px 8vw; background:rgba(26,39,29,.94); backdrop-filter:blur(8px); }
.gallery-modal figure { width:min(1100px,82vw); height:min(78vh,820px); margin:0; display:flex; flex-direction:column; align-items:center; }
.gallery-modal figure img { min-height:0; max-width:100%; flex:1; object-fit:contain; border-radius:3px; box-shadow:0 24px 80px rgba(0,0,0,.35); }
.gallery-modal figcaption { width:100%; padding-top:16px; color:white; font-family:Georgia,serif; font-size:18px; text-align:center; }
.gallery-modal figcaption span { margin-right:12px; color:var(--sage); font-family:Arial,sans-serif; font-size:10px; letter-spacing:2px; }
.modal-close,.modal-arrow { position:absolute; z-index:2; border:1px solid rgba(255,255,255,.35); background:rgba(255,255,255,.08); color:white; cursor:pointer; }
.modal-close { top:22px; right:26px; width:46px; height:46px; border-radius:50%; font-size:30px; line-height:1; }
.modal-arrow { top:50%; width:48px; height:64px; margin-top:-32px; border-radius:3px; font-family:Georgia,serif; font-size:42px; }
.modal-arrow.previous { left:24px; }.modal-arrow.next { right:24px; }
.modal-close:hover,.modal-arrow:hover { background:white; color:var(--forest); }
.photo-large { grid-row:span 2; }
.photo-item { position:relative; overflow:hidden; margin:0; min-height:250px; border-radius:4px; background:var(--deep); }
.photo-item:after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(4,28,27,.72)); pointer-events:none; }
.photo-item img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s ease; }
.photo-item:hover img { transform:scale(1.025); }
.photo-item figcaption { position:absolute; left:25px; right:25px; bottom:22px; color:white; font-family:Georgia,serif; font-size:23px; z-index:1; }
.photo-item figcaption span { display:block; margin-bottom:8px; font-family:Arial,sans-serif; font-size:10px; letter-spacing:2px; }
.about { display:grid; grid-template-columns:1fr 1fr; min-height:690px; background:var(--cream); }
.about-visual { min-height:620px; overflow:hidden; }
.about-visual img { width:100%; height:100%; object-fit:cover; display:block; }
.about-copy { padding:9vw 8vw; align-self:center; }
.about-copy h2 { margin-bottom:30px; }
.about-copy>p:not(.eyebrow) { color:#61716d; line-height:1.8; }
.about-copy .signature { color:var(--ink)!important; border-top:1px solid #d7cfc2; padding-top:24px; margin-top:30px; font-family:Georgia,serif; font-size:20px; font-style:italic; }
.origin-story { padding:110px 7vw; display:grid; grid-template-columns:.85fr 1.15fr; gap:10vw; }
.origin-title { position:sticky; top:120px; align-self:start; }
.origin-copy { max-width:760px; }
.origin-copy>p { margin:0 0 24px; color:#61716d; font-size:17px; line-height:1.85; }
.origin-copy blockquote { margin:46px 0 0; padding:30px 0 30px 34px; border-left:3px solid var(--coral); font-family:Georgia,serif; font-size:28px; line-height:1.4; color:var(--ink); }
.aurora-honoree { display:grid; grid-template-columns:.82fr 1.18fr; min-height:760px; background:#e8ede4; }
.honoree-photo { min-height:760px; overflow:hidden; background:#73866e; }
.honoree-photo img { width:100%; height:100%; object-fit:cover; object-position:center; display:block; }
.honoree-copy { align-self:center; max-width:850px; padding:9vw 9vw; }
.honoree-copy h2 { margin-bottom:30px; }
.honoree-copy>p:not(.eyebrow) { color:#5f726c; font-size:17px; line-height:1.85; }
.honoree-copy blockquote { margin:36px 0 0; padding:25px 0 25px 28px; border-left:3px solid var(--coral); color:var(--ink); font-family:Georgia,serif; font-size:24px; line-height:1.45; }
.care { padding:110px 7vw; background:var(--forest); color:white; }
.care-heading { display:grid; grid-template-columns:.7fr 1.3fr; gap:7vw; align-items:start; margin-bottom:60px; }
.care-heading h2 { max-width:800px; }
.care-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.22); }
.care-card { padding:42px 4vw 20px 0; }
.care-card+article { padding-left:4vw; border-left:1px solid rgba(255,255,255,.22); }
.care-card>span { color:var(--sage); font-size:11px; letter-spacing:2px; }
.care-card h3 { margin:35px 0 18px; font-family:Georgia,serif; font-size:27px; font-weight:400; }
.care-card p { color:rgba(255,255,255,.66); line-height:1.75; font-size:14px; }
.stays { padding:120px 7vw; background:var(--paper); }
.stays-heading { display:grid; grid-template-columns:.65fr 1fr .65fr; gap:5vw; align-items:end; margin-bottom:60px; }
.stays-heading>p:last-child { margin:0; color:#61716d; line-height:1.8; }
.stay-cards { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.stay-cards article { padding:52px; border:1px solid #d9d4ca; background:var(--cream); }
.stay-cards article:last-child { background:#edf2ef; }
.stay-icon { display:grid; place-items:center; width:48px; height:48px; margin-bottom:40px; border:1px solid var(--coral); border-radius:50%; color:var(--coral); font-size:25px; }
.stay-cards h3 { margin:0 0 22px; font-family:Georgia,serif; font-size:35px; font-weight:400; }
.stay-cards article>p:not(.eyebrow) { min-height:78px; color:#61716d; line-height:1.75; }
.stay-cards a { display:inline-block; margin-top:20px; padding-bottom:7px; border-bottom:1px solid var(--coral); font-size:13px; font-weight:700; }
.stay-cards a b { margin-left:8px; color:var(--coral); }
.team { padding:110px 7vw; background:var(--forest); color:white; }
.team-intro { display:grid; grid-template-columns:.55fr 1fr .65fr; gap:5vw; align-items:end; margin-bottom:60px; }
.team-intro>p:last-child { margin:0; max-width:530px; color:rgba(255,255,255,.65); line-height:1.8; }
.professional-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.professional-card { background:#526850; overflow:hidden; }
.professional-photo { height:390px; overflow:hidden; background:#34493a; }
.professional-photo img { width:100%; height:100%; object-fit:cover; object-position:center top; display:block; transition:transform .6s ease; }
.professional-card:hover img { transform:scale(1.025); }
.professional-copy { padding:32px; }
.professional-copy .eyebrow { margin-bottom:12px; }
.professional-copy h3 { min-height:66px; margin:0 0 10px; font-family:Georgia,serif; font-size:28px; line-height:1.15; font-weight:400; }
.professional-copy>span { display:block; color:var(--sage); font-size:11px; letter-spacing:1.2px; text-transform:uppercase; }
.professional-copy>p:last-child { margin:24px 0 0; color:rgba(255,255,255,.66); font-size:14px; line-height:1.75; }
.support-team { margin-top:20px; padding:28px 32px; display:flex; align-items:center; gap:34px; border:1px solid rgba(255,255,255,.2); }
.support-team span { margin-right:auto; color:rgba(255,255,255,.58); font-size:13px; }
.support-team strong { font-family:Georgia,serif; font-size:20px; font-weight:400; }
.experience { padding:120px 7vw; display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; align-items:center; }
.experience-copy h2 { margin-bottom:28px; }
.experience-copy>p:last-child { color:#61716d; line-height:1.8; }
.experience-collage { display:grid; grid-template-columns:1fr; gap:18px; }
.experience-collage .photo-item:first-child { height:340px; }
.experience-collage .photo-item:last-child { height:250px; }
.experience-collage .photo-item:first-child img { object-position:center 46%; }
.visit-flow { padding:110px 7vw; background:var(--cream); display:grid; grid-template-columns:1fr 1fr; gap:10vw; }
.visit-flow ol { list-style:none; padding:0; margin:0; }
.visit-flow li { display:flex; gap:22px; padding:25px 0; border-bottom:1px solid #d9d1c6; }
.visit-flow li>span { flex:0 0 38px; width:38px; height:38px; border-radius:50%; display:grid; place-items:center; color:white; background:var(--coral); font-family:Georgia,serif; }
.visit-flow b { font-family:Georgia,serif; font-size:21px; font-weight:400; }
.visit-flow li p { color:#667872; line-height:1.6; margin:8px 0 0; font-size:14px; }
.faq { padding:110px 7vw; display:grid; grid-template-columns:.75fr 1.25fr; gap:10vw; }
.faq-list { border-top:1px solid #cbd1cd; }
details { border-bottom:1px solid #cbd1cd; padding:24px 0; }
summary { cursor:pointer; font-family:Georgia,serif; font-size:21px; list-style-position:outside; }
details p { color:#61716d; line-height:1.7; padding-right:4vw; }
.contact-preview { padding:70px 7vw; background:var(--forest); color:white; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.contact-preview h2 { font-size:clamp(34px,4vw,54px); }
.contact-preview .eyebrow { color:var(--sage); }
.contact-preview address { margin-top:22px; color:rgba(255,255,255,.72); font-size:15px; font-style:normal; line-height:1.7; }
.contact-actions { display:flex; flex-direction:column; align-items:stretch; gap:16px; min-width:230px; }
.map-link { padding:4px 0 8px; border-bottom:1px solid rgba(255,255,255,.45); color:white; font-size:13px; font-weight:700; text-align:center; }
.map-link span { margin-left:8px; color:var(--sage); }
.map-section { padding:0; background:var(--forest); overflow:hidden; }
.map-section iframe { display:block; width:100%; height:430px; border:0; filter:saturate(.82) contrast(.96); }
.button.light { background:var(--cream); color:var(--deep); min-width:190px; }
footer { min-height:160px; padding:40px 7vw; display:grid; grid-template-columns:1fr 1fr 1fr; align-items:center; gap:30px; background:var(--deep); font-size:12px; color:rgba(255,255,255,.72); }
.footer-brand { width:190px; height:62px; }
footer p:nth-child(2) { text-align:center; } footer p:last-child { text-align:right; }
.hero-content { animation:hero-enter .9s cubic-bezier(.2,.75,.25,1) both; }
.hero-photo { animation:hero-breathe 18s ease-in-out infinite alternate; transform-origin:center; }
.hero::after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(112deg,transparent 25%,rgba(255,255,255,.08) 46%,transparent 67%); transform:translateX(-100%); animation:light-drift 14s ease-in-out infinite; }
.hero-content,.trust-strip { z-index:2; }
.whatsapp-float { position:fixed; right:22px; bottom:22px; z-index:50; min-width:58px; height:58px; padding:0 18px; border-radius:999px; display:flex; align-items:center; justify-content:center; gap:9px; color:white; background:#2f6a4d; box-shadow:0 10px 30px rgba(26,63,48,.3); font-size:13px; letter-spacing:.2px; animation:whatsapp-float 3.6s ease-in-out infinite; }
.whatsapp-float::before { content:""; position:absolute; inset:-6px; border:1px solid rgba(116,134,110,.6); border-radius:inherit; animation:whatsapp-ring 2.8s ease-out infinite; }
.whatsapp-float span { font-size:23px; transform:rotate(-18deg); }
.reveal { opacity:0; transform:translateY(28px); transition:opacity .72s ease,transform .72s cubic-bezier(.2,.75,.25,1); }
.reveal.is-visible { opacity:1; transform:none; }
.professional-card.reveal:nth-child(2),.stay-cards article.reveal:nth-child(2),.care-card.reveal:nth-child(2) { transition-delay:.1s; }
.professional-card.reveal:nth-child(3),.care-card.reveal:nth-child(3) { transition-delay:.18s; }
@keyframes hero-enter { from { opacity:0; transform:translateY(22px); } to { opacity:1; transform:none; } }
@keyframes hero-breathe { from { transform:scale(1.01) translate3d(0,0,0); } to { transform:scale(1.065) translate3d(-.5%,.4%,0); } }
@keyframes light-drift { 0%,28% { transform:translateX(-100%); } 55%,100% { transform:translateX(100%); } }
@keyframes whatsapp-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-5px); } }
@keyframes whatsapp-ring { 0% { opacity:.7; transform:scale(.92); } 70%,100% { opacity:0; transform:scale(1.18); } }
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
  .reveal { opacity:1; transform:none; }
}
@media(max-width:800px){
  .site-header { height:74px; padding:0 6vw; } .site-header>nav,.site-header>.button { display:none; }
  .mobile-menu { display:block; }
  .menu-toggle { position:relative; z-index:62; width:48px; height:48px; padding:12px; border:0; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; color:white; background:rgba(255,255,255,.12); }
  .menu-toggle span { width:22px; height:2px; border-radius:2px; background:currentColor; transition:transform .28s ease,opacity .2s ease; }
  .mobile-menu.open .menu-toggle span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
  .mobile-menu.open .menu-toggle span:nth-child(2) { opacity:0; }
  .mobile-menu.open .menu-toggle span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
  .menu-backdrop { position:fixed; inset:0; z-index:59; background:rgba(12,31,23,.52); opacity:0; pointer-events:none; transition:opacity .3s ease; }
  .mobile-nav { position:fixed; top:0; right:0; bottom:0; z-index:60; width:min(86vw,380px); padding:105px 30px 34px; display:flex; flex-direction:column; gap:0; color:white; background:var(--forest); box-shadow:-18px 0 50px rgba(20,40,29,.3); transform:translateX(105%); transition:transform .34s cubic-bezier(.2,.75,.25,1); }
  .mobile-nav>p { margin:0 0 24px; color:var(--sage); font-size:10px; font-weight:700; letter-spacing:3px; text-transform:uppercase; }
  .mobile-nav>a:not(.mobile-visit) { min-height:58px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.15); font-family:Georgia,serif; font-size:25px; }
  .mobile-nav>a span { color:var(--sage); font-family:Arial,sans-serif; font-size:16px; }
  .mobile-visit { margin-top:auto; padding:17px 20px; border-radius:3px; color:var(--forest); background:var(--cream); font-size:13px; font-weight:700; text-align:center; }
  .mobile-menu.open .menu-backdrop { opacity:1; pointer-events:auto; }
  .mobile-menu.open .mobile-nav { transform:translateX(0); }
  body.menu-open { overflow:hidden; }
  .brand-logo { width:180px; height:56px; }
  .hero { min-height:760px; padding:80px 7vw 170px; align-items:flex-start; }
  .hero-photo { object-position:64% center; }
  .hero-content { margin-top:40px; } .hero-actions { align-items:flex-start; flex-direction:column; gap:22px; }
  .trust-strip { grid-template-columns:1fr; gap:14px; padding:18px 7vw; }
  .trust-strip b { display:inline; margin-right:5px; }
  .section-heading { grid-template-columns:1fr; gap:28px; }
  .gallery-intro { padding:80px 6vw; }
  .photo-grid { display:flex; flex-direction:column; } .photo-slot { min-height:260px; }
  .gallery-tip { margin:-12px 0 24px; }
  .house-video { padding:80px 7vw; grid-template-columns:1fr; gap:48px; }
  .video-frame { width:min(100%,360px); justify-self:center; }
  .full-gallery { grid-template-columns:1fr 1fr; gap:10px; }
  .gallery-card,.gallery-card.portrait { min-height:250px; }
  .gallery-card.landscape { grid-column:span 2; min-height:230px; }
  .gallery-card span { left:14px; right:14px; bottom:14px; font-size:14px; }
  .gallery-modal { padding:64px 12px 28px; }
  .gallery-modal figure { width:100%; height:78vh; }
  .modal-arrow { top:auto; bottom:24px; width:48px; height:48px; font-size:34px; }
  .modal-arrow.previous { left:18px; }.modal-arrow.next { right:18px; }
  .modal-close { top:12px; right:14px; }
  .photo-large { min-height:380px; } .photo-item { min-height:300px; }
  .about { grid-template-columns:1fr; } .about-visual { min-height:450px; } .about-copy { padding:80px 7vw; }
  .care,.experience,.visit-flow,.faq,.origin-story,.stays,.team { padding:80px 7vw; }
  .care-heading,.experience,.visit-flow,.faq,.origin-story { grid-template-columns:1fr; gap:45px; }
  .origin-title { position:static; }
  .aurora-honoree { grid-template-columns:1fr; }
  .honoree-photo { min-height:620px; max-height:780px; }
  .honoree-copy { padding:80px 7vw; }
  .care-grid { grid-template-columns:1fr; }
  .care-card+article { padding-left:0; border-left:0; border-top:1px solid rgba(255,255,255,.22); }
  .stays-heading { grid-template-columns:1fr; gap:24px; } .stay-cards { grid-template-columns:1fr; }
  .stay-cards article { padding:38px 28px; } .stay-cards article>p:not(.eyebrow) { min-height:auto; }
  .team-intro { grid-template-columns:1fr; gap:24px; }
  .professional-grid { grid-template-columns:1fr; }
  .professional-photo { height:430px; }
  .professional-copy h3 { min-height:auto; }
  .support-team { align-items:flex-start; flex-direction:column; gap:14px; }
  .support-team span { margin:0 0 8px; }
  .experience-collage .photo-item:first-child { height:300px; } .experience-collage .photo-item:last-child { height:280px; }
  .contact-preview { align-items:flex-start; flex-direction:column; }
  .contact-actions { width:100%; }
  .map-section iframe { height:360px; }
  .whatsapp-float { right:14px; bottom:14px; min-width:54px; height:54px; padding:0; }
  .whatsapp-float b { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  footer { grid-template-columns:1fr; } .footer-brand { width:185px; height:58px; } footer p:nth-child(2),footer p:last-child { text-align:left; }
}
