:root{--ink:#202224;--muted:#6b7074;--paper:#f4f4f1;--white:#fff;--accent:#10b8c3;--dark:#17191b;--line:#d9dbd8;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-snap-type:y proximity}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.45}a{color:inherit;text-decoration:none}img{display:block;width:100%}.wrap{width:min(calc(100% - 64px),var(--max));margin:auto}
header{position:fixed;inset:0 0 auto 0;z-index:50;color:#fff;background:linear-gradient(180deg,rgba(0,0,0,.58),transparent);pointer-events:none}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:26px}.nav a,.menu-btn{pointer-events:auto}.brand{font-weight:800;font-size:31px;line-height:.9;letter-spacing:-.04em}.brand small{display:block;font-size:10px;letter-spacing:.34em;font-weight:500;margin-top:8px}.navlinks{display:flex;gap:30px;font-size:11px;letter-spacing:.16em}.menu-btn{display:none;border:0;background:none;color:#fff;font-size:24px}
.screen{min-height:100vh;scroll-snap-align:start;scroll-margin-top:0}.hero{display:flex;align-items:center;position:relative;color:#fff;background-size:cover;background-position:center}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.08) 68%),linear-gradient(0deg,rgba(0,0,0,.42),transparent 52%)}.hero-inner{position:relative;z-index:2;max-width:720px;padding-top:46px}.eyebrow{font-size:10px;letter-spacing:.24em;text-transform:uppercase}.hero h1{font-size:clamp(48px,5.2vw,76px);line-height:.9;letter-spacing:-.06em;margin:14px 0 22px}.hero p{font-size:clamp(17px,1.45vw,22px);max-width:620px;margin:0;color:rgba(255,255,255,.94)}
.home-hero,.oporto-hero{background-image:url('assets/oporto-hero.jpg')}.tronco-hero{background-image:url('assets/tronco-room.jpg')}.bessa-hero{background-image:url('assets/bessa-living.jpg')}
.section{padding:96px 0;display:flex;align-items:center}.section.white{background:#fff}.section.dark{background:var(--dark);color:#fff}.intro-grid,.split{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.big{font-size:clamp(40px,4.2vw,64px);line-height:.94;letter-spacing:-.055em;margin:10px 0 0}.lead{font-size:18px;color:var(--muted);margin:0;max-width:600px}.dark .lead{color:#c2c5c7}.pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.pill{border:1px solid var(--line);border-radius:999px;padding:9px 13px;font-size:10px;letter-spacing:.12em}.dark .pill{border-color:#3b3f42}
.feature{display:grid;grid-template-columns:1.05fr .95fr;background:#fff;min-height:100vh;scroll-snap-align:start}.feature-photo{min-height:100vh;background-size:cover;background-position:center}.feature-copy{display:flex;align-items:center}.feature-copy>div{padding:72px;max-width:610px}.kicker{color:var(--accent);font-size:10px;letter-spacing:.24em;text-transform:uppercase}.feature h2,.feature h3{font-size:clamp(42px,4.5vw,68px);line-height:.95;letter-spacing:-.055em;margin:12px 0 22px}.feature-copy p{font-size:17px}.facts{display:flex;flex-wrap:wrap;gap:10px 18px;margin:24px 0 30px;color:var(--muted);font-size:13px}.btn{display:inline-block;border-bottom:1px solid currentColor;padding:10px 0;font-size:10px;letter-spacing:.16em}.btn-solid{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid var(--ink);font-size:10px;letter-spacing:.14em}.btn-solid.primary{background:var(--ink);color:#fff}.dark .btn-solid{border-color:#fff;color:#fff}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.study-screen{padding-top:100px;padding-bottom:66px}.study-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:end;margin-bottom:34px}.study-head .big{font-size:clamp(38px,4vw,60px)}.cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.card{position:relative;height:min(58vh,520px);overflow:hidden;background:#333}.card img{height:100%;object-fit:cover;filter:brightness(.72);transition:transform .45s}.card:hover img{transform:scale(1.02)}.card-copy{position:absolute;inset:auto 0 0;padding:28px;background:linear-gradient(0deg,rgba(0,0,0,.88),transparent);color:#fff}.card h3{font-size:clamp(24px,2.2vw,34px);line-height:1;margin:8px 0 8px;letter-spacing:-.03em}.card p{margin:0;color:#ddd;font-size:13px}
.reviews{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px}.review-score{border-top:1px solid var(--line);padding:22px 0}.score{font-size:clamp(38px,4vw,54px);font-weight:800;letter-spacing:-.05em}.review-score p{color:var(--muted);margin:0 0 10px;font-size:14px}.platform-name{display:flex;align-items:center;gap:10px;margin:2px 0 7px;font-size:18px;font-weight:700}.platform-mark{width:28px;height:28px;border:1px solid var(--line);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;background:#fff}.note{font-size:11px;color:var(--muted);margin-top:14px}
.gallery{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:10px;margin-top:30px;height:min(62vh,560px)}.gallery img{height:100%;object-fit:cover;min-height:0}.gallery img:first-child{grid-row:span 2}.caption{font-size:11px;color:var(--muted);margin-top:12px}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:36px}.info{padding:20px 28px 20px 0;border-bottom:1px solid var(--line)}.info b{display:block;font-size:15px;margin-bottom:5px}.info span{font-size:12px;color:var(--muted)}.quote{font-size:clamp(26px,3.4vw,48px);line-height:1.05;letter-spacing:-.035em;max-width:980px;margin:0}.small-title{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
footer{padding:70px 0 40px;background:#111315;color:#fff;scroll-snap-align:start}.foot{display:grid;grid-template-columns:1fr auto;gap:40px}.foot-brand{font-size:clamp(38px,5vw,68px);font-weight:800;letter-spacing:-.06em}.foot-brand small{display:block;font-size:10px;letter-spacing:.28em;margin-top:10px;color:#999;font-weight:400}.legal{margin-top:42px;border-top:1px solid #333;padding-top:20px;color:#8b8f91;font-size:11px;display:flex;justify-content:space-between;gap:18px}.test-badge{position:fixed;left:16px;bottom:16px;z-index:70;background:#fff;color:#111;padding:8px 10px;border:1px solid #ddd;font-size:10px;letter-spacing:.12em}
/* KRETO-style persistent scroll cue */
.scroll-cue{position:fixed;z-index:65;left:50%;bottom:24px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;color:#fff;mix-blend-mode:difference;pointer-events:none;font-size:9px;letter-spacing:.22em;font-weight:700;text-transform:uppercase}.scroll-mouse{width:28px;height:42px;border:1.5px solid currentColor;border-radius:16px;margin-top:7px;position:relative}.scroll-dot{position:absolute;left:50%;top:8px;width:4px;height:4px;background:currentColor;border-radius:50%;transform:translateX(-50%);animation:wheel 1.6s ease-in-out infinite}@keyframes wheel{0%{transform:translate(-50%,0);opacity:.25}45%{opacity:1}100%{transform:translate(-50%,15px);opacity:0}}@media(prefers-reduced-motion:reduce){.scroll-dot{animation:none}}
@media(max-width:900px){html{scroll-snap-type:none}.wrap{width:min(calc(100% - 30px),var(--max))}.nav{height:74px}.navlinks{display:none}.menu-btn{display:block}.screen{min-height:0}.hero{min-height:720px}.hero-inner{padding-top:74px}.intro-grid,.split,.study-head{grid-template-columns:1fr;gap:34px}.section{min-height:0;padding:82px 0}.feature{grid-template-columns:1fr;min-height:0}.feature-photo{min-height:520px}.feature-copy>div{padding:52px 28px}.cards{grid-template-columns:1fr}.card{height:520px}.gallery{grid-template-columns:1fr 1fr;height:auto}.gallery img,.gallery img:first-child{height:300px;grid-row:auto}.info-grid{grid-template-columns:1fr 1fr}.reviews{grid-template-columns:1fr}.foot{grid-template-columns:1fr}.study-screen{padding-top:92px}.scroll-cue{bottom:18px}}
@media(max-width:560px){.brand{font-size:24px}.hero{min-height:660px}.hero h1{font-size:50px}.gallery{grid-template-columns:1fr}.gallery img,.gallery img:first-child{height:270px}.info-grid{grid-template-columns:1fr}.legal{flex-direction:column}.card{height:460px}.scroll-cue{display:none}}

/* ===== HOME V5 — identidade MYPORTUGAL 2026 ===== */
.home-v5 header{
  color:var(--ink);
  background:linear-gradient(180deg,rgba(244,244,241,.97),rgba(244,244,241,.84));
  border-bottom:1px solid rgba(32,34,36,.08);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.home-v5 .brand-image{display:flex;align-items:center;width:390px;max-width:41vw;line-height:1}
.home-v5 .brand-image img{width:100%;height:auto;display:block}
.home-v5 .navlinks{color:#202224;font-weight:600}
.home-v5 .menu-btn{color:#202224}

.home-v5 .feel-section{
  padding:0;
  display:grid;
  grid-template-columns:56% 44%;
  align-items:stretch;
  background:var(--paper);
}
.home-v5 .feel-copy{display:flex;align-items:center;min-width:0}
.home-v5 .feel-copy-inner{
  width:min(610px,calc(100% - 72px));
  margin-left:clamp(70px,10vw,190px);
  padding:110px 0 80px;
}
.home-v5 .feel-copy .big{font-size:clamp(46px,4.6vw,72px);margin-bottom:32px}
.home-v5 .feel-copy .lead{font-size:18px;max-width:560px}
.home-v5 .feel-photo{
  min-height:100vh;
  background-image:linear-gradient(180deg,rgba(13,43,69,.025),rgba(13,43,69,.055)),url('assets/porto-feel-at-home-v6.jpg');
  background-size:cover;
  background-position:center center;
}

.home-v5 .home-footer{background:#f4f4f1;color:#202224;padding-top:64px}
.home-v5 .home-foot{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.home-v5 .footer-logo-wrap{max-width:620px}
.home-v5 .footer-logo{width:min(520px,100%);height:auto}
.home-v5 .footer-contact{min-width:285px}
.home-v5 .footer-contact p{font-size:16px;line-height:1.85;margin:12px 0 0}
.home-v5 .footer-contact a{border-bottom:1px solid rgba(32,34,36,.18)}
.home-v5 .home-footer .legal{border-top-color:#d5d8d5;color:#6b7074}

@media(max-width:900px){
  .home-v5 .brand-image{width:240px;max-width:68vw}
  .home-v5 .feel-section{grid-template-columns:1fr;min-height:0}
  .home-v5 .feel-copy-inner{width:min(calc(100% - 48px),640px);margin:0 auto;padding:110px 0 76px}
  .home-v5 .feel-photo{min-height:54vw}
  .home-v5 .home-foot{grid-template-columns:1fr;gap:42px}
  .home-v5 .footer-contact{min-width:0}
}
@media(max-width:560px){
  .home-v5 .brand-image{width:205px;max-width:72vw}
  .home-v5 .feel-copy-inner{width:calc(100% - 30px);padding:94px 0 60px}
  .home-v5 .feel-photo{min-height:68vw}
  .home-v5 .footer-logo{width:100%}
}


/* ===== HOME V6 — ajustes 10/09/2026 ===== */
.home-v5 .nav{height:96px}
.home-v5 .brand-image{width:390px;max-width:42vw}
.home-v5 .brand-image img{object-fit:contain;object-position:left center}
.home-v5 .feel-section{grid-template-columns:53% 47%}
.home-v5 .feel-copy-inner{
  width:min(650px,calc(100% - 64px));
  margin-left:clamp(90px,11vw,210px);
  padding:118px 0 78px;
}
.home-v5 .feel-photo{background-position:center 54%;border:0!important}
.home-v5 .study-screen{
  min-height:100vh;
  padding-top:112px;
  padding-bottom:28px;
  align-items:flex-start;
}
.home-v5 .study-head{margin-bottom:22px;gap:60px}
.home-v5 .study-head .big{font-size:clamp(36px,3.65vw,54px)}
.home-v5 .study-head .lead{font-size:17px;line-height:1.42}
.home-v5 .study-screen .cards{gap:18px}
.home-v5 .study-screen .card{height:min(43vh,430px)}
.home-v5 .study-screen .card-copy{padding:22px 26px 20px}
.home-v5 .study-screen .card h3{font-size:clamp(23px,2vw,31px)}
.home-v5 .quote{margin-bottom:12px}
.home-v5 .quote-translation{
  margin:0;
  max-width:930px;
  font-size:15px;
  line-height:1.55;
  color:var(--muted);
  letter-spacing:.005em;
}
.home-v5 .info-grid{margin-top:30px}
.home-v5 .footer-logo-wrap{max-width:720px}
.home-v5 .footer-logo{width:min(660px,100%);height:auto}
@media(max-width:1100px){
  .home-v5 .brand-image{width:330px;max-width:45vw}
  .home-v5 .feel-copy-inner{margin-left:clamp(54px,7vw,100px)}
  .home-v5 .study-screen .card{height:min(40vh,390px)}
}
@media(max-width:900px){
  .home-v5 .nav{height:78px}
  .home-v5 .brand-image{width:270px;max-width:72vw}
  .home-v5 .feel-copy-inner{margin:0 auto}
  .home-v5 .study-screen{padding-top:90px;padding-bottom:70px}
  .home-v5 .study-screen .card{height:460px}
  .home-v5 .quote-translation{font-size:14px}
}

/* ===== V7 — normalização global + STAY / STUDY / ABOUT ===== */
body:not(.home-v5) header{color:var(--ink);background:linear-gradient(180deg,rgba(244,244,241,.97),rgba(244,244,241,.84));border-bottom:1px solid rgba(32,34,36,.08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
body:not(.home-v5) .brand-image{display:flex;align-items:center;width:390px;max-width:42vw;line-height:1}
body:not(.home-v5) .brand-image img{width:100%;height:auto;object-fit:contain;object-position:left center}
body:not(.home-v5) .navlinks{color:var(--ink);font-weight:600}
body:not(.home-v5) .menu-btn{color:var(--ink)}
.site-footer{background:#f4f4f1;color:#202224;padding-top:64px}
.site-foot{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.site-footer .footer-logo-wrap{max-width:720px}.site-footer .footer-logo{width:min(660px,100%);height:auto}.site-footer .footer-contact{min-width:285px}.site-footer .footer-contact p{font-size:16px;line-height:1.85;margin:12px 0 0}.site-footer .footer-contact a{border-bottom:1px solid rgba(32,34,36,.18)}.site-footer .legal{border-top-color:#d5d8d5;color:#6b7074}
.stay-intro .split{align-items:center}.stay-intro .split>div:first-child{display:flex;flex-direction:column;justify-content:center}.stay-intro .big{max-width:620px}
.reviews-centered .review-score{text-align:center}.reviews-centered .platform-name{justify-content:center}.reviews-centered .btn{margin-inline:auto}.reviews-centered+.note{text-align:center}
.location-section .split{align-items:center}.location-section .split>div{text-align:center}.location-section .lead{margin-inline:auto}.location-section .actions{justify-content:center}
body:not(.home-v5) .study-screen{min-height:100vh;padding-top:112px;padding-bottom:26px;align-items:flex-start}.study-screen .cards{gap:18px}.study-screen .card{height:min(41vh,390px)}.study-screen .card-copy{padding:20px 24px 18px}.study-screen .card h3{font-size:clamp(22px,1.9vw,30px)}
.student-living-section .quote{margin-bottom:12px}.quote-translation{margin:0;max-width:930px;font-size:15px;line-height:1.55;color:var(--muted)}.centered-info .info{text-align:center;padding-left:20px;padding-right:20px}
.about-page header{color:var(--ink)}.about-hero{display:grid;grid-template-columns:56% 44%;background:var(--paper);padding-top:96px}.about-portrait{background:url('assets/miguel-marta-about-v11.png') center center/cover no-repeat;min-height:calc(100vh - 96px)}.about-copy{display:flex;align-items:center;padding:72px}.about-copy h1{font-size:clamp(46px,4.7vw,72px);line-height:.92;letter-spacing:-.06em;margin:12px 0 28px}.about-body{font-size:17px;line-height:1.65;color:var(--muted);margin-top:30px}.about-city{position:relative;display:flex;align-items:flex-end;color:#fff;background:#111}.about-city-image{position:absolute;inset:0;background:url('assets/porto-sunset-about.jpg') center center/cover no-repeat}.about-city:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.03) 68%)}.about-city-copy{position:relative;z-index:2;width:min(calc(100% - 64px),var(--max));margin:0 auto;padding:0 0 84px}.about-city h2{font-size:clamp(48px,5vw,76px);line-height:.9;letter-spacing:-.06em;margin:12px 0 20px}.about-city p{font-size:18px;max-width:650px;margin:0;color:rgba(255,255,255,.9)}
@media(max-width:900px){body:not(.home-v5) .brand-image{width:270px;max-width:72vw}.site-foot{grid-template-columns:1fr;gap:42px}.site-footer .footer-contact{min-width:0}.study-screen .card{height:440px}.about-hero{grid-template-columns:1fr;padding-top:78px;min-height:0}.about-portrait{min-height:70vw}.about-copy{padding:64px 28px}.about-city{min-height:720px}.about-city-copy{width:calc(100% - 30px)}}
@media(max-width:560px){body:not(.home-v5) .brand-image{width:205px;max-width:72vw}.site-footer .footer-logo{width:100%}.about-portrait{min-height:92vw}.about-city{min-height:620px}}

/* ===== V8 — ajustes homepage + STAY ===== */
.home-v5 .hero-inner .eyebrow{max-width:520px}

.stay-page .oporto-hero{
  background-image:url('assets/oporto-stay-hero.jpg');
  background-position:center 55%;
}
.stay-page .oporto-hero:before{
  background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.12) 66%),linear-gradient(0deg,rgba(0,0,0,.34),transparent 55%);
}

.scenic-stay-section{padding:96px 0}
.scenic-stay-grid{
  width:100%;
  display:grid;
  grid-template-columns:.96fr 1.04fr;
  gap:52px;
  align-items:center;
}
.stay-copy-block{max-width:560px}
.stay-copy-block .big{margin-bottom:24px}
.stay-copy-block .lead{max-width:540px}
.stay-note{margin-top:24px;color:var(--muted);font-size:15px;line-height:1.6}
.stay-scenic-photo{
  min-height:560px;
  border-radius:2px;
  background:url('assets/douro-bridges-stay.jpg') center 42%/cover no-repeat;
  box-shadow:0 18px 44px rgba(0,0,0,.08);
}

.location-panorama{
  position:relative;
  overflow:hidden;
  background:#0f1215;
  color:#fff;
}
.location-panorama::before{
  content:"";
  position:absolute;
  inset:0;
  background:url('assets/douro-panorama-stay.jpg') center center/cover no-repeat;
  transform:scale(1.02);
}
.location-panorama::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(9,11,12,.82),rgba(9,11,12,.54) 42%,rgba(9,11,12,.66));
}
.location-panorama .wrap{position:relative;z-index:2}
.location-panorama .split{grid-template-columns:.8fr 1.2fr;min-height:100vh;gap:74px;align-items:center}
.location-panorama .split>div:last-child{text-align:center}
.location-panorama .lead{margin-inline:auto;max-width:680px;color:rgba(255,255,255,.92)}
.location-panorama .actions{justify-content:center}
.location-panorama .btn-solid{background:rgba(255,255,255,.06)}

@media(max-width:1100px){
  .scenic-stay-grid{grid-template-columns:1fr 1fr;gap:34px}
  .stay-scenic-photo{min-height:500px}
}
@media(max-width:900px){
  .stay-page .oporto-hero{background-position:center center}
  .scenic-stay-grid{grid-template-columns:1fr;gap:28px}
  .stay-copy-block{max-width:none}
  .stay-scenic-photo{min-height:420px}
  .location-panorama .split{grid-template-columns:1fr;gap:34px;min-height:0}
  .location-panorama{padding-top:30px;padding-bottom:30px}
}
@media(max-width:560px){
  .stay-scenic-photo{min-height:300px}
}

/* ===== V9 — correções de composição, STUDY e ABOUT ===== */
/* Corrige elementos que combinam .wrap com grelhas: não devem ocupar 100% do viewport. */
.wrap.split,
.wrap.scenic-stay-grid{
  width:min(calc(100% - 64px),var(--max));
  margin-left:auto;
  margin-right:auto;
}

/* STAY — alinhar o bloco YOUR PLACE com a grelha global e centrá-lo verticalmente. */
.scenic-stay-section{padding:0;min-height:100vh;display:flex;align-items:center}
.scenic-stay-grid{grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.stay-copy-block{max-width:590px;align-self:center;justify-self:start}
.stay-scenic-photo{min-height:min(68vh,610px);width:100%;background-position:center 42%}

/* STAY — LOCATION: crop mais largo, menos telhados e imagem mais clara. */
.location-panorama::before{
  background-image:url('assets/douro-location-v9.jpg');
  background-position:center center;
  background-size:cover;
  transform:scale(1.01);
  filter:brightness(1.06) saturate(1.03);
}
.location-panorama::after{
  background:linear-gradient(90deg,rgba(9,11,12,.62),rgba(9,11,12,.28) 48%,rgba(9,11,12,.44));
}
.location-panorama .split{min-height:100vh}

/* STUDY — cards ligeiramente mais compactos para caberem no ecrã. */
body:not(.home-v5) .study-screen .card{height:min(39vh,370px)}

/* Páginas individuais das residências — composição alinhada com os restantes momentos. */
.residence-intro .split,
body:has(.tronco-hero) main > .section:first-of-type .split,
body:has(.bessa-hero) main > .section:first-of-type .split{
  grid-template-columns:.9fr 1.1fr;
  gap:72px;
  align-items:center;
}
body:has(.tronco-hero) main > .section:first-of-type .split > div:first-child,
body:has(.bessa-hero) main > .section:first-of-type .split > div:first-child{
  align-self:center;
}
body:has(.tronco-hero) main > .section:first-of-type .split > div:last-child,
body:has(.bessa-hero) main > .section:first-of-type .split > div:last-child{
  align-self:center;
}

/* ABOUT — evitar texto encostado às margens e centrar verticalmente o momento. */
.about-story .wrap.split{
  grid-template-columns:.9fr 1.1fr;
  gap:72px;
  align-items:center;
}
.about-story .split > div{align-self:center}
.about-story .small-title{margin-bottom:8px}

@media(max-width:900px){
  .wrap.split,
  .wrap.scenic-stay-grid{width:min(calc(100% - 30px),var(--max))}
  .scenic-stay-section{padding:82px 0;min-height:0}
  .scenic-stay-grid{grid-template-columns:1fr;gap:34px}
  .stay-scenic-photo{min-height:420px}
  .location-panorama .split{min-height:0}
  body:not(.home-v5) .study-screen .card{height:440px}
}
/* V9 fallback sem depender de :has() */
.residence-page main > .section:first-of-type .wrap.split{
  grid-template-columns:.9fr 1.1fr;
  gap:72px;
  align-items:center;
}
.residence-page main > .section:first-of-type .wrap.split > div{align-self:center}
@media(max-width:900px){
  .residence-page main > .section:first-of-type .wrap.split{grid-template-columns:1fr;gap:34px}
}


/* ===== V11 — correções finais 10/09/2026 ===== */
.location-panorama.screen{min-height:82vh}
.location-panorama .split{min-height:82vh}
@media(max-width:900px){.location-panorama.screen{min-height:0}}

/* ===== V11.1 — retoques finais 10/09/2026 ===== */
/* Cartão Tronco com imagem de sala mais acolhedora e cortes mais limpos */
body:not(.home-v5) .study-screen .card:first-child img,
.home-v5 .study-screen .card:first-child img{
  object-position:center center;
}
/* Ajuste fino do momento FEEL AT HOME para mostrar menos céu e mais cidade */
.home-v5 .feel-photo{background-position:center 58%;}
/* Footer com mais folga inferior para o badge de teste não tapar o texto */
.home-v5 .home-footer, .site-footer{padding-bottom:64px;}
.home-v5 .home-footer .legal, .site-footer .legal{margin-top:34px;}
/* Cards STUDY ligeiramente mais baixos para o conjunto respirar melhor no portátil */
body:not(.home-v5) .study-screen .card, .home-v5 .study-screen .card{height:min(37vh,350px);}
/* Secção OPORTO FLAT na home com imagem mais bem centrada */
.feature-photo{background-position:center center;}
@media(max-width:900px){
  .home-v5 .home-footer, .site-footer{padding-bottom:88px;}
  body:not(.home-v5) .study-screen .card, .home-v5 .study-screen .card{height:420px;}
}

/* Offline language selector */
.nav{gap:20px}
.navlinks{margin-left:auto}
.language-switch{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex-shrink:0;min-height:44px;padding:0 10px;border:1px solid #aeb3b5;border-radius:5px;color:#202224;background:#fff;font-size:12px;font-weight:700;text-decoration:none}
.language-switch svg{width:24px;height:16px;display:block}
.language-switch:hover{background:#e9ece8}
.language-switch:focus-visible{outline:3px solid #12618a;outline-offset:4px}
@media(max-width:900px){.nav{gap:10px}.menu-btn{margin-left:auto;flex-shrink:0}body .nav .brand-image{width:270px;max-width:calc(100% - 126px)}.language-switch{padding:0 8px}}
@media(max-width:380px){.nav{gap:7px}.language-switch{gap:4px;padding:0 6px}}
