
:root{
  --bg:#001b18;
  --bg-2:#032824;
  --bg-3:#07332d;
  --panel:#062a26;
  --panel-2:#0a3530;
  --panel-3:#0e3d36;
  --cream:#f1ece3;
  --cream-2:#e8dfd2;
  --gold:#d5a249;
  --gold-2:#f1c76f;
  --gold-3:#b67a1e;
  --text:#f7f4ed;
  --muted:#b8c2bd;
  --dark:#161814;
  --line:rgba(226,177,83,.30);
  --line-soft:rgba(255,255,255,.08);
  --radius:16px;
  --shadow:0 18px 42px rgba(0,0,0,.30);
  --serif:Georgia,"Times New Roman",serif;
  --sans:"Segoe UI",Arial,sans-serif;
  --container:1360px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{max-width:100%;display:block}
.container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}
.gold{color:var(--gold-2)}
.eyebrow{font-size:14px;letter-spacing:.12em;font-weight:800;color:var(--gold-2);text-transform:uppercase}
.section-title{font:500 clamp(30px,3vw,46px)/1.04 var(--serif);margin:0 0 8px}
.section-title.gold-title{color:var(--gold-2)}
.section-sub{margin:0 0 20px;color:var(--muted);line-height:1.55}
.icon{width:25px;height:25px;stroke:currentColor;stroke-width:1.8;fill:none;flex:0 0 auto}
.icon.sm{width:18px;height:18px}
.paw-dot{width:8px;height:8px;background:var(--gold);border-radius:50%;display:inline-block}

/* Empty visual slots: no reference screenshots or photos are embedded */
.media-slot{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 30% 24%,rgba(242,198,107,.06),transparent 28%),
    linear-gradient(145deg,#0b2f2a,#061f1c 55%,#0a2925);
  border:1px solid rgba(229,177,78,.14);
}
.media-slot::before{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(120deg,transparent 0 45%,rgba(255,255,255,.025) 48%,transparent 51%),
    radial-gradient(circle at 75% 70%,rgba(0,0,0,.16),transparent 38%);
  pointer-events:none;
}
.media-slot.soft{background:linear-gradient(145deg,#102f2b,#08241f)}
.media-slot.cream{background:linear-gradient(145deg,#e6ddcf,#f5efe6);border-color:rgba(101,75,35,.16)}
.media-slot.map-slot{
  background:
    linear-gradient(20deg,transparent 46%,rgba(215,162,73,.08) 48%,transparent 50%),
    linear-gradient(110deg,transparent 47%,rgba(215,162,73,.08) 49%,transparent 51%),
    linear-gradient(145deg,#15332f,#0b2421);
}
.media-slot.map-slot::after{
  content:"";position:absolute;left:50%;top:50%;width:46px;height:46px;
  border-radius:50% 50% 50% 0;transform:translate(-50%,-62%) rotate(-45deg);
  background:linear-gradient(180deg,var(--gold-2),var(--gold-3));
  box-shadow:0 12px 26px rgba(0,0,0,.35);
}

/* Header */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(1,20,18,.91);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line-soft);
}
.header-inner{height:74px;display:flex;align-items:center;gap:26px}
.brand{display:flex;align-items:center;gap:12px;min-width:250px}
.brand img{width:48px;height:48px;object-fit:contain}
.brand-copy{line-height:1}
.brand-copy strong{display:block;font:700 25px/1 var(--serif);color:var(--gold-2);letter-spacing:.03em}
.brand-copy span{display:block;margin-top:4px;color:var(--gold);font-size:10px;letter-spacing:.22em;font-weight:800}
.nav{display:flex;align-items:center;justify-content:center;gap:26px;flex:1}
.nav a{font-size:14px;font-weight:600;position:relative;padding:4px 0;color:#f1eee7}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:2px;background:var(--gold);transform:scaleX(0);transition:.25s}
.nav a:hover,.nav a.active{color:var(--gold-2)}
.nav a:hover::after,.nav a.active::after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:12px}
.account{width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold-2)}
.hamburger{display:none;width:42px;height:42px;border-radius:10px;border:1px solid var(--line);background:transparent;color:#fff}
.btn{
  position:relative;overflow:hidden;border:1px solid transparent;border-radius:8px;
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:13px 20px;font-size:13px;font-weight:800;letter-spacing:.015em;
  transition:transform .25s,box-shadow .25s,filter .25s,border-color .25s;
}
.btn::after,.shine::after{
  content:"";position:absolute;inset:-90% 45% auto -40%;height:260%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.17),transparent);
  transform:translateX(-160%) rotate(18deg);transition:transform .75s;
  pointer-events:none
}
.btn:hover::after,.shine:hover::after{transform:translateX(260%) rotate(18deg)}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(0,0,0,.24)}
.btn-gold{background:linear-gradient(180deg,#efc46c,#d9a044);color:#171812;border-color:#e7bb5d}
.btn-dark{background:rgba(4,25,22,.62);color:#fff;border-color:#997333}
.btn-outline{background:transparent;color:var(--gold-2);border-color:var(--gold)}

/* Hero templates */
.hero{
  position:relative;background:linear-gradient(180deg,#011b18,#02211e);
  border-bottom:1px solid rgba(220,171,75,.25);
}
.hero-grid{display:grid;grid-template-columns:38% 62%;min-height:430px}
.hero-copy{padding:54px 24px 46px max(24px,calc((100vw - var(--container))/2));display:flex;flex-direction:column;justify-content:center}
.hero-copy h1{font:500 clamp(47px,5vw,72px)/.97 var(--serif);margin:12px 0 16px}
.hero-copy p{max-width:520px;color:#e2e6e3;line-height:1.55;margin:0 0 22px;font-size:16px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-visual{min-height:430px;border:0;border-left:1px solid rgba(229,178,79,.10)}
.hero-features{display:flex;gap:26px;flex-wrap:wrap;margin-top:20px}
.hero-feature{display:flex;gap:10px;align-items:center;font-size:13px;color:#fff}
.hero-feature .icon{color:var(--gold)}
.hero.compact .hero-grid{min-height:370px}
.hero.compact .hero-visual{min-height:370px}
.hero.compact .hero-copy{padding-top:38px;padding-bottom:38px}

/* Booking */
.booking-wrap{background:var(--bg);padding:0 0 14px}
.booking-panel{
  margin-top:-28px;position:relative;z-index:5;
  background:linear-gradient(180deg,#062925,#05231f);border:1px solid var(--line);
  border-radius:12px;padding:10px 14px;box-shadow:var(--shadow)
}
.booking-grid{display:grid;grid-template-columns:1fr 1fr .9fr .9fr 1.05fr;align-items:stretch}
.booking-field{display:flex;align-items:center;gap:11px;padding:10px 16px;border-right:1px solid var(--line-soft);min-height:64px}
.booking-field .icon{color:var(--gold)}
.booking-field label{display:flex;flex-direction:column;gap:3px;font-size:11px;color:#d4dbd7;text-transform:none}
.booking-field input,.booking-field select{background:transparent;border:0;outline:0;color:white;font-weight:700;font-size:14px;padding:0;max-width:140px}
.booking-submit{margin:6px 0 6px 14px}
.booking-meta{text-align:center;color:#aeb8b3;font-size:12px;padding-top:8px}

/* Strips */
.icon-strip{background:linear-gradient(180deg,#042824,#05211f);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:16px 0}
.icon-strip-grid{display:grid;grid-template-columns:repeat(6,1fr)}
.icon-strip-item{display:flex;gap:11px;padding:2px 18px;border-right:1px solid var(--line-soft);align-items:center}
.icon-strip-item:last-child{border-right:0}
.icon-strip-item .icon{color:var(--gold)}
.icon-strip-item strong{display:block;font-size:12px}
.icon-strip-item span{display:block;margin-top:3px;font-size:11px;color:var(--muted);line-height:1.35}
.stats-strip{background:#efe8dd;color:#2c2419;padding:18px 0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:0 22px;text-align:center;border-right:1px solid rgba(120,86,32,.24)}
.stat:last-child{border-right:0}.stat .icon{color:#b47b23;margin:0 auto 7px}.stat strong{display:block;font:500 38px/1 var(--serif);color:#b47b23}.stat span{font-size:12px;color:#55483a}

/* Sections and cards */
.section{padding:28px 0;background:var(--bg)}
.section.alt{background:linear-gradient(180deg,#052824,#03201d)}
.section.light{background:var(--cream);color:var(--dark)}
.card-grid{display:grid;gap:14px}
.cards-4{grid-template-columns:repeat(4,1fr)}
.cards-5{grid-template-columns:repeat(5,1fr)}
.cards-6{grid-template-columns:repeat(6,1fr)}
.card{
  position:relative;overflow:hidden;background:linear-gradient(180deg,#092e29,#06241f);
  border:1px solid var(--line);border-radius:12px;transition:.28s;box-shadow:0 12px 26px rgba(0,0,0,.20)
}
.card:hover{transform:translateY(-5px);border-color:rgba(239,193,99,.65);box-shadow:0 24px 46px rgba(0,0,0,.33)}
.card-media{height:185px;border:0;border-bottom:1px solid var(--line)}
.card-body{padding:14px}
.card h3{font:500 23px/1.05 var(--serif);margin:0 0 7px}
.card p{font-size:12px;line-height:1.45;color:#cbd4cf;margin:0 0 10px}
.card .meta{display:flex;justify-content:space-between;color:var(--gold-2);font-size:11px;gap:8px}
.card .price{font:600 24px/1 var(--serif);color:var(--gold-2)}
.card .card-actions{margin-top:12px;display:flex;gap:10px}
.badge{position:absolute;z-index:3;top:10px;right:10px;background:linear-gradient(180deg,#edc16c,#c98e2b);color:#171510;border-radius:6px;padding:6px 10px;font-size:10px;font-weight:900}
.featured{box-shadow:0 0 0 1px rgba(239,194,101,.35),0 18px 40px rgba(0,0,0,.3)}
.service-icon-card{text-align:center;padding:17px 12px;min-height:128px}
.service-icon-card .icon{color:var(--gold);width:34px;height:34px;margin:0 auto 8px}
.service-icon-card h3{font:500 19px/1 var(--serif);margin:0 0 5px}
.service-icon-card p{font-size:11px;margin:0;color:var(--muted)}
.filters{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:16px}
.filter-btn{border:1px solid var(--line);background:transparent;color:#fff;padding:9px 20px;border-radius:999px}
.filter-btn.active,.filter-btn:hover{background:linear-gradient(180deg,#e7bb65,#c99031);color:#19150f}

/* Home */
.home-suites{padding-top:30px}
.home-experiences .card-media{height:170px}
.tracking-box{
  display:grid;grid-template-columns:240px 1fr;gap:15px;
  border:1px solid var(--line);background:#062824;border-radius:12px;padding:14px
}
.tracking-side h2{font:500 30px/1 var(--serif);color:var(--gold-2);margin:0 0 10px}
.tracking-side p{font-size:12px;line-height:1.5;color:var(--muted)}
.checks{list-style:none;padding:0;margin:12px 0;display:grid;gap:7px;font-size:12px}.checks li{display:flex;gap:8px}.checks li::before{content:"✓";color:var(--gold)}
.pet-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.avatar-slot{width:46px;height:46px;border-radius:50%}
.pet-id{display:flex;align-items:center;gap:10px}.pet-id strong{display:block;font:500 23px var(--serif)}.pet-id small{color:var(--muted)}
.live-pill{font-size:11px;font-weight:800;color:#98e1a8}.live-pill::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#2ed459;margin-right:7px}
.timeline-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.timeline-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#082d28}
.timeline-card .card-media{height:112px}.timeline-card .copy{padding:9px}.timeline-card time{font-weight:900;color:var(--gold-2);font-size:12px}.timeline-card h4{margin:3px 0;font-size:13px}.timeline-card p{margin:0;font-size:10px;color:var(--muted)}
.testimonials{display:grid;grid-template-columns:220px 1fr;gap:12px}.testimonial-title{border:1px solid var(--line);border-radius:12px;padding:18px}.testimonial-title h2{font:500 28px/1 var(--serif);color:var(--gold-2);margin:0 0 10px}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.testimonial{border:1px solid var(--line);border-radius:12px;padding:14px;background:#072a26}.testimonial p{font-size:12px;line-height:1.45;color:#d8dedb}.testimonial strong{font-size:12px}.stars{color:var(--gold-2);letter-spacing:2px}
.pricing-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.plan{position:relative;padding:18px;border:1px solid var(--line);border-radius:12px;background:#082d28}.plan h3{font:500 25px var(--serif);margin:0}.plan .price{font:600 32px var(--serif);color:var(--gold-2);margin:12px 0}.plan ul{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:7px;color:#cbd5d0;font-size:12px}.plan li::before{content:"✓";color:#6fce89;margin-right:7px}
.cta-panel{border:1px solid var(--line);border-radius:14px;display:grid;grid-template-columns:42% 58%;overflow:hidden;background:#072723}.cta-panel .media-slot{min-height:250px;border:0;border-right:1px solid var(--line)}.cta-copy{padding:24px;display:flex;flex-direction:column;justify-content:center}.cta-copy h2{font:500 33px/1.02 var(--serif);color:var(--gold-2);margin:0 0 10px}.cta-copy p{font-size:12px;color:var(--muted);line-height:1.5}

/* About */
.about-history{display:grid;grid-template-columns:36% 64%}.history-copy{padding:42px 44px;background:var(--cream);color:#262018}.history-copy h2{font:500 42px/1 var(--serif);margin:12px 0 18px}.history-copy p{font-size:13px;line-height:1.65;color:#50483f}.history-visual{min-height:390px;border:0}
.values-band{background:#042824;padding:22px 0}.values-grid{display:grid;grid-template-columns:repeat(5,1fr)}.value{text-align:center;padding:8px 18px;border-right:1px solid var(--line)}.value:last-child{border-right:0}.value .icon{color:var(--gold);margin:0 auto 8px}.value-icon{height:42px;display:flex;align-items:center;justify-content:center;margin:0 auto 8px;overflow:visible}.value-icon img{display:block;width:auto;height:40px;max-width:52px;object-fit:contain;object-position:center;background:transparent}.value h3{font:500 18px var(--serif);margin:0 0 7px}.value p{font-size:11px;color:var(--muted);line-height:1.5}
.team-layout{display:grid;grid-template-columns:31% 69%;gap:24px}.team-copy h2{font:500 38px/1 var(--serif);margin:10px 0 14px}.team-copy p{font-size:12px;line-height:1.6;color:#514b43}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.team-card .card-media{height:220px}.team-card h3{font-size:18px}.team-card p{font-size:10px}
.infra-layout{display:grid;grid-template-columns:36% 64%}.infra-visual{min-height:280px;border:0}.infra-copy{padding:22px 28px}.infra-head{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.infra-head h2{font:500 38px/1 var(--serif);margin:8px 0}.infra-head p{font-size:12px;line-height:1.55;color:var(--muted)}.infra-grid{display:grid;grid-template-columns:repeat(5,1fr);margin-top:15px}.infra-item{padding:6px 14px;border-right:1px solid var(--line)}.infra-item:last-child{border-right:0}.infra-item .icon{color:var(--gold)}.infra-item h4{font:500 16px var(--serif);margin:5px 0}.infra-item p{font-size:10px;color:var(--muted);line-height:1.45}
.about-cta{display:grid;grid-template-columns:42% 58%;background:#062622}.about-cta .media-slot{min-height:230px;border:0}.about-cta .cta-copy{padding:30px}

/* Suites */
.detail-layout{display:grid;grid-template-columns:43% 20% 37%;gap:12px}.detail-main{min-height:360px}.detail-thumbs{display:grid;grid-template-rows:repeat(3,1fr);gap:8px}.detail-copy{padding:20px}.detail-copy h2{font:500 36px/1 var(--serif);margin:8px 0 12px}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin:16px 0}.feature-line{display:flex;gap:8px;font-size:11px;color:#d3dbd7}.feature-line .icon{color:var(--gold);width:18px;height:18px}
.amenity-strip{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.amenity{text-align:center;padding:14px 10px;border-right:1px solid var(--line-soft)}.amenity:last-child{border-right:0}.amenity .icon{color:var(--gold);margin:0 auto 6px}.amenity strong{font-size:11px}
.compare{width:100%;border-collapse:collapse;font-size:11px}.compare th,.compare td{padding:8px 10px;border:1px solid rgba(215,162,73,.25);text-align:center}.compare th{color:var(--gold-2)}.gallery-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.gallery-strip .media-slot{height:160px}

/* Services/Experiences/Acompanhe */
.hero-icon-menu{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#052824}.hero-icon-menu .service-icon-card{border-right:1px solid var(--line)}.hero-icon-menu .service-icon-card:last-child{border-right:0}
.split-showcase{display:grid;grid-template-columns:30% 36% 34%;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.split-showcase .copy{padding:28px}.split-showcase .copy h2{font:500 38px/1 var(--serif);margin:8px 0 12px}.split-showcase .copy p{font-size:12px;line-height:1.55;color:var(--muted)}.split-showcase>.media-slot{min-height:330px;border:0;border-left:1px solid var(--line)}.mini-gallery{display:grid;grid-template-rows:repeat(3,1fr);gap:6px;padding:6px}.mini-gallery .media-slot{border-radius:8px}
.process{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden}.process-step{display:flex;gap:12px;padding:15px;border-right:1px solid var(--line)}.process-step:last-child{border-right:0}.process-step .num{width:32px;height:32px;border-radius:50%;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold-2);font-weight:900}.process-step strong{font-size:12px}.process-step span{font-size:10px;color:var(--muted);display:block;margin-top:4px;line-height:1.35}
.phone-dashboard{display:grid;grid-template-columns:280px 1fr;gap:18px;align-items:stretch}.phone-slot{min-height:370px;border-radius:32px;border:6px solid #101313;background:#072a26}.dashboard{border:1px solid var(--line);border-radius:14px;background:#041f1c;padding:14px;display:grid;gap:12px}.dash-head{display:flex;justify-content:space-between;align-items:center}.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.dash-card{border:1px solid var(--line);border-radius:10px;padding:12px;background:#082d28}.dash-card strong{display:block;color:var(--gold-2);font:500 24px var(--serif)}.dash-card span{font-size:10px;color:var(--muted)}
.dashboard-summary{display:grid;grid-template-columns:1.2fr .8fr;gap:10px}.summary-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.summary-item{border:1px solid var(--line);border-radius:9px;padding:10px;text-align:center;font-size:10px}.summary-item .icon{color:var(--gold);margin:0 auto 5px}
.camera-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.camera-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#062622}.camera-card .media-slot{height:116px;border:0}.camera-card .copy{padding:8px}.camera-card strong{font-size:11px}.camera-card small{display:block;color:var(--muted);font-size:9px;margin-top:3px}
.update-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.update-card{border:1px solid var(--line);border-radius:10px;background:#062622;padding:10px}.update-card .media-slot{height:100px;border-radius:8px;margin-bottom:8px}.update-card strong{font-size:10px}.update-card p{font-size:9px;color:var(--muted);line-height:1.4}

/* Blog */
.blog-controls{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px}.blog-tabs{display:flex;gap:20px;flex-wrap:wrap}.blog-tabs button{border:0;background:transparent;color:#fff;padding:8px 2px;font-size:12px}.blog-tabs button.active{color:var(--gold-2)}.search-box{display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;padding:0 12px;min-width:260px}.search-box input{height:42px;flex:1;background:transparent;border:0;outline:0;color:#fff}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.blog-card .card-media{height:210px}.blog-card .tag{font-size:10px;color:var(--gold-2);font-weight:900}.blog-card h3{font-size:26px;margin-top:8px}.blog-card .article-meta{display:flex;justify-content:space-between;font-size:10px;color:#d4dbd7;margin-top:14px}
.newsletter-banner{border:1px solid var(--line);border-radius:16px;padding:20px 28px;display:grid;grid-template-columns:70px 1fr 360px;gap:20px;align-items:center}.newsletter-icon{width:58px;height:58px;border-radius:50%;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold)}.newsletter-banner h3{margin:0 0 4px;font-size:19px;color:var(--gold-2)}.newsletter-banner p{margin:0;font-size:11px;color:var(--muted)}.newsletter-form-inline{display:flex}.newsletter-form-inline input{flex:1;background:transparent;border:1px solid var(--line);border-right:0;border-radius:8px 0 0 8px;padding:0 12px;color:#fff}.newsletter-form-inline .btn{border-radius:0 8px 8px 0}

/* Contact */
.contact-main{background:var(--cream);color:#171815}.contact-two{display:grid;grid-template-columns:31% 69%;gap:28px;padding:32px 0}.contact-info{padding-right:28px;border-right:1px solid rgba(129,94,39,.18)}.contact-info h2,.message-form h2{font-size:16px;margin:0 0 18px}.contact-line{display:flex;gap:12px;margin-bottom:18px}.contact-line .icon{color:#b57b22}.contact-line strong{display:block;font-size:12px}.contact-line span{display:block;margin-top:4px;font-size:12px;line-height:1.45}.message-form form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.message-form label{display:grid;gap:7px;font-size:11px}.message-form input,.message-form select,.message-form textarea{border:0;border-bottom:1px solid rgba(170,116,29,.5);background:transparent;padding:10px 0;outline:0}.message-form textarea{grid-column:1/-1;height:120px;border:1px solid rgba(170,116,29,.45);padding:12px}.message-form .wide{grid-column:1/-1}.visit-layout{display:grid;grid-template-columns:32% 68%;gap:30px}.visit-copy h2{color:var(--gold-2);font-size:17px}.visit-copy p{font-size:12px;line-height:1.55;color:#d1d8d4}.map-box{height:240px;border-radius:12px}.map-button{display:flex;justify-content:center;margin-top:10px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px}.faq-item{border-bottom:1px solid var(--line);padding:12px 0}.faq-q{display:flex;justify-content:space-between;gap:12px;color:var(--gold-2);font-weight:800;font-size:12px;cursor:pointer}.faq-a{max-height:0;overflow:hidden;color:#c9d2cd;font-size:11px;line-height:1.55;transition:max-height .3s,padding .3s}.faq-item.open .faq-a{max-height:130px;padding-top:9px}

/* Footer */
.site-footer{background:linear-gradient(180deg,#04201d,#021512);border-top:1px solid var(--line);padding:24px 0 14px}
.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,.8fr) 1.05fr 1fr;gap:24px}
.footer-brand{display:flex;gap:10px;align-items:center}.footer-brand img{width:42px;height:42px}.footer-brand strong{display:block;font:700 23px var(--serif);color:var(--gold-2)}.footer-brand span{font-size:9px;letter-spacing:.18em;color:var(--gold)}
.footer-copy{font-size:11px;line-height:1.55;color:#c5cfca;max-width:210px}.socials{display:flex;gap:8px;margin-top:10px}.socials a{width:30px;height:30px;border-radius:50%;border:1px solid var(--line-soft);display:grid;place-items:center;font-size:11px}
.footer-col h4{color:var(--gold-2);font-size:11px;margin:0 0 10px}.footer-col{display:grid;align-content:start;gap:7px}.footer-col a{font-size:10px;color:#d2d8d4}.footer-col p{font-size:10px;color:#d2d8d4;margin:0}.footer-news{display:flex}.footer-news input{min-width:0;flex:1;background:transparent;border:1px solid var(--line);padding:0 10px;color:#fff}.footer-news .btn{padding-inline:12px;border-radius:0 7px 7px 0}.footer-news input{border-radius:7px 0 0 7px}
.footer-bottom{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line-soft);padding-top:12px;margin-top:16px;font-size:9px;color:#aab5af}

/* Functional overlay */
.modal{position:fixed;inset:0;display:none;place-items:center;background:rgba(0,10,9,.78);z-index:80;padding:20px;backdrop-filter:blur(8px)}.modal.open{display:grid}.modal-box{width:min(720px,100%);background:#072723;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--shadow)}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.modal-head h2{font:500 31px var(--serif);color:var(--gold-2);margin:0}.modal-close{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:transparent;color:white}.reserve-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reserve-form label{display:grid;gap:6px;font-size:11px;color:#d7ded9}.reserve-form input,.reserve-form select,.reserve-form textarea{background:#082e29;border:1px solid var(--line-soft);border-radius:8px;padding:10px;color:#fff}.reserve-form textarea{height:90px}.reserve-form .wide{grid-column:1/-1}.toast{position:fixed;right:18px;bottom:18px;z-index:90;background:#0a2e29;border:1px solid var(--line);border-radius:9px;padding:12px 15px;color:#fff;opacity:0;transform:translateY(10px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:none}

/* Responsive */
@media(max-width:1180px){
  .nav{gap:17px}.brand{min-width:220px}.container{width:min(calc(100% - 36px),var(--container))}
  .cards-6{grid-template-columns:repeat(3,1fr)}.cards-5{grid-template-columns:repeat(3,1fr)}
  .icon-strip-grid,.hero-icon-menu{grid-template-columns:repeat(3,1fr)}
  .booking-grid{grid-template-columns:1fr 1fr}.booking-submit{grid-column:1/-1;margin:8px 0}
  .booking-field:nth-child(2n){border-right:0}.tracking-box{grid-template-columns:1fr}.tracking-side{border-bottom:1px solid var(--line);padding-bottom:12px}
  .timeline-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1.3fr repeat(3,.8fr)}.footer-grid .footer-col:nth-last-child(-n+2){grid-column:auto}
  .footer-grid .newsletter-col{grid-column:1/-1}.pricing-layout{grid-template-columns:1fr}.plan-grid{grid-template-columns:repeat(3,1fr)}
  .team-layout{grid-template-columns:1fr}.team-grid{grid-template-columns:repeat(4,1fr)}
  .infra-layout{grid-template-columns:1fr}.infra-visual{min-height:240px}.detail-layout{grid-template-columns:1fr 35%}.detail-copy{grid-column:1/-1}
  .camera-grid,.update-grid{grid-template-columns:repeat(3,1fr)}.phone-dashboard{grid-template-columns:230px 1fr}
}
@media(max-width:900px){
  .header-inner{height:68px}.nav{display:none;position:fixed;top:68px;left:0;right:0;background:#041f1c;padding:12px 20px;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.nav a{padding:7px 0}.hamburger{display:block}.account{display:none}
  .hero-grid{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:42px 28px}.hero-visual{min-height:310px;border-left:0;border-top:1px solid var(--line)}
  .hero.compact .hero-grid{grid-template-columns:1fr}.hero.compact .hero-visual{min-height:280px}
  .cards-4{grid-template-columns:repeat(2,1fr)}.cards-5{grid-template-columns:repeat(2,1fr)}
  .testimonials{grid-template-columns:1fr}.testimonial-grid{grid-template-columns:repeat(2,1fr)}
  .plan-grid{grid-template-columns:1fr}.cta-panel,.about-cta{grid-template-columns:1fr}.cta-panel .media-slot{min-height:210px;border-right:0;border-bottom:1px solid var(--line)}
  .about-history{grid-template-columns:1fr}.history-visual{min-height:300px}.values-grid{grid-template-columns:repeat(3,1fr)}.team-grid{grid-template-columns:repeat(2,1fr)}
  .infra-head{grid-template-columns:1fr}.infra-grid{grid-template-columns:repeat(3,1fr)}.amenity-strip{grid-template-columns:repeat(3,1fr)}
  .split-showcase{grid-template-columns:1fr}.split-showcase>.media-slot{min-height:260px;border-left:0;border-top:1px solid var(--line)}
  .process{grid-template-columns:1fr 1fr}.process-step:nth-child(2){border-right:0}.phone-dashboard{grid-template-columns:1fr}.phone-slot{min-height:300px;width:220px;margin:auto}
  .dash-grid{grid-template-columns:repeat(2,1fr)}.summary-grid{grid-template-columns:repeat(3,1fr)}.blog-grid{grid-template-columns:repeat(2,1fr)}
  .newsletter-banner{grid-template-columns:60px 1fr}.newsletter-form-inline{grid-column:1/-1}.contact-two,.visit-layout{grid-template-columns:1fr}.contact-info{border-right:0;border-bottom:1px solid rgba(129,94,39,.18);padding-bottom:18px}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .container{width:min(calc(100% - 22px),var(--container))}.brand{min-width:auto;flex:1}.brand img{width:40px;height:40px}.brand-copy strong{font-size:20px}.header-actions>.btn{display:none}
  .hero-copy h1{font-size:42px}.hero-copy{padding:34px 18px}.hero-visual{min-height:240px}.hero-features{gap:14px}
  .booking-panel{margin-top:0;border-radius:0}.booking-grid{grid-template-columns:1fr}.booking-field{border-right:0;border-bottom:1px solid var(--line-soft)}
  .icon-strip-grid,.hero-icon-menu{grid-template-columns:1fr 1fr}.cards-4,.cards-5,.cards-6{grid-template-columns:1fr}.card-media{height:210px}
  .timeline-grid,.testimonial-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}
  .values-grid,.infra-grid{grid-template-columns:1fr}.value,.infra-item{border-right:0;border-bottom:1px solid var(--line)}.team-grid{grid-template-columns:1fr 1fr}
  .detail-layout{grid-template-columns:1fr}.detail-thumbs{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr}.detail-thumbs .media-slot{min-height:100px}
  .amenity-strip{grid-template-columns:1fr 1fr}.gallery-strip{grid-template-columns:1fr 1fr}.compare-wrap{overflow:auto}
  .process{grid-template-columns:1fr}.process-step{border-right:0;border-bottom:1px solid var(--line)}.camera-grid,.update-grid{grid-template-columns:1fr 1fr}
  .dashboard-summary{grid-template-columns:1fr}.blog-controls{align-items:stretch;flex-direction:column}.search-box{min-width:0}.blog-grid{grid-template-columns:1fr}.newsletter-banner{grid-template-columns:1fr}.newsletter-icon{margin:auto}.newsletter-banner{text-align:center}
  .message-form form{grid-template-columns:1fr}.message-form textarea,.message-form .wide{grid-column:auto}.faq-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}
  .reserve-form{grid-template-columns:1fr}.reserve-form .wide{grid-column:auto}
}


/* =========================================================
   PET ROYAL — PRECISION / ART-DIRECTION PASS V2
   Deep refinement for closer fidelity to the supplied refs.
   ========================================================= */

:root{
  --bg:#001b18;
  --bg-2:#03231f;
  --bg-3:#062c27;
  --panel:#062823;
  --panel-2:#082f29;
  --panel-3:#0b342d;
  --cream:#f2ece2;
  --cream-2:#e8ddce;
  --gold:#d39b3d;
  --gold-2:#efc66c;
  --gold-3:#a96d17;
  --gold-glow:rgba(237,190,94,.22);
  --line:rgba(218,160,62,.42);
  --line-soft:rgba(255,255,255,.065);
  --shadow:0 14px 34px rgba(0,0,0,.27);
  --radius:10px;
  --container:1280px;
}

body{
  background:
    radial-gradient(1200px 760px at 50% -180px,rgba(11,63,55,.24),transparent 68%),
    #001b18;
}
body::selection{background:var(--gold);color:#111}

/* Header becomes part of the cinematic hero, as in the references */
.site-header{
  position:fixed;
  width:100%;
  top:0;
  left:0;
  background:linear-gradient(180deg,rgba(0,12,11,.86),rgba(0,20,17,.42));
  border-bottom:1px solid rgba(234,184,83,.12);
  box-shadow:none;
  transition:background .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.site-header.scrolled{
  background:rgba(0,22,19,.96);
  box-shadow:0 10px 28px rgba(0,0,0,.28);
  border-bottom-color:rgba(234,184,83,.22);
}
.header-inner{height:62px;gap:18px}
.brand{min-width:192px;gap:9px}
.brand img{
  width:39px;height:39px;
  filter:drop-shadow(0 2px 6px rgba(223,165,56,.24));
}
.brand-copy strong{font-size:20px;letter-spacing:.045em}
.brand-copy span{font-size:8.2px;letter-spacing:.24em;margin-top:3px}
.nav{gap:19px}
.nav a{
  font-size:11px;
  font-weight:650;
  letter-spacing:.01em;
}
.nav a::after{bottom:-9px;height:1.5px}
.header-actions{gap:10px}
.account{width:34px;height:34px}
.account .icon{width:16px;height:16px}
.header-actions>.btn{
  padding:10px 15px;
  font-size:10px;
  border-radius:5px;
  min-width:128px;
}
.hamburger{width:36px;height:36px;border-radius:7px}

/* More faithful metallic gold buttons */
.btn{
  border-radius:6px;
  min-height:36px;
  padding:10px 18px;
  font-size:10.5px;
  letter-spacing:.02em;
  text-transform:uppercase;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}
.btn-gold{
  color:#17150f;
  background:
    linear-gradient(180deg,rgba(255,255,255,.28),transparent 35%),
    linear-gradient(180deg,#f3ca75 0%,#dca54a 52%,#c88625 100%);
  border-color:#efc269;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.42),
    inset 0 -1px 0 rgba(91,54,5,.35),
    0 5px 14px rgba(158,99,10,.12);
}
.btn-gold:hover{
  filter:brightness(1.045) saturate(1.03);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.48),
    inset 0 -1px 0 rgba(91,54,5,.3),
    0 10px 25px rgba(199,132,28,.23),
    0 0 18px rgba(237,190,94,.10);
}
.btn-dark{
  background:linear-gradient(180deg,rgba(9,39,34,.78),rgba(3,22,19,.88));
  border-color:rgba(218,160,62,.66);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.15);
}
.btn-outline{border-color:rgba(218,160,62,.68)}
.btn:active{transform:translateY(0) scale(.985)}
.btn .icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}

/* Golden line-art treatment */
.icon{
  stroke-linecap:round;
  stroke-linejoin:round;
}
.icon-strip-item .icon,
.hero-feature .icon,
.service-icon-card .icon,
.value .icon,
.infra-item .icon,
.amenity .icon,
.stat .icon,
.summary-item .icon,
.contact-line .icon{
  color:var(--gold-2);
  filter:drop-shadow(0 0 5px rgba(223,168,65,.10));
}
.service-icon-card .icon{
  width:42px;height:42px;
  padding:7px;
  border:1px solid rgba(231,180,79,.32);
  border-radius:50%;
  background:radial-gradient(circle,rgba(230,177,78,.08),transparent 68%);
}

/* Media locations remain genuinely empty */
.media-slot{
  background:
    linear-gradient(180deg,rgba(10,42,37,.82),rgba(4,28,24,.96));
  border-color:rgba(218,160,62,.16);
}
.media-slot::before{
  background:
    linear-gradient(90deg,rgba(255,255,255,.012),transparent 18% 82%,rgba(255,255,255,.012)),
    radial-gradient(circle at 50% 50%,rgba(232,184,87,.022),transparent 54%);
}
.media-slot:not(.map-slot)::after{
  content:"";
  position:absolute;inset:9px;
  border:1px solid rgba(220,168,66,.035);
  border-radius:inherit;
  pointer-events:none;
}

/* Hero proportions/density */
.hero{
  padding-top:62px;
  background:
    radial-gradient(650px 430px at 70% 40%,rgba(16,61,53,.16),transparent 70%),
    linear-gradient(180deg,#011b18,#031f1c);
}
.hero-grid{min-height:390px;grid-template-columns:36.5% 63.5%}
.hero-copy{
  padding:
    34px 18px 32px
    max(28px,calc((100vw - var(--container))/2));
}
.hero-copy h1{
  font-size:clamp(39px,4.2vw,58px);
  line-height:.98;
  letter-spacing:-.018em;
  margin:8px 0 13px;
}
.hero-copy p{
  max-width:455px;
  font-size:12.5px;
  line-height:1.56;
  color:#e9e8e1;
  margin-bottom:18px;
}
.eyebrow{font-size:10.5px;letter-spacing:.11em;margin-bottom:5px}
.hero-actions{gap:10px}
.hero-visual{min-height:390px}
.hero.compact .hero-grid,.hero.compact .hero-visual{min-height:330px}
.hero.compact .hero-copy{padding-top:22px;padding-bottom:22px}
.hero-features{gap:22px;margin-top:16px}
.hero-feature{font-size:10.5px;gap:8px}
.hero-feature .icon{width:22px;height:22px}

/* Different references use slightly different hero heights */
.page-home .hero-grid,.page-home .hero-visual{min-height:405px}
.page-about .hero-grid,.page-about .hero-visual{min-height:330px}
.page-suites .hero-grid,.page-suites .hero-visual{min-height:335px}
.page-services .hero-grid,.page-services .hero-visual{min-height:335px}
.page-experiences .hero-grid,.page-experiences .hero-visual{min-height:330px}
.page-track .hero-grid,.page-track .hero-visual{min-height:310px}
.page-contact .hero-grid,.page-contact .hero-visual{min-height:330px}
.page-blog .hero-grid,.page-blog .hero-visual{min-height:350px}
.page-blog .hero-copy h1{font-size:40px}

/* About hero image insertion */
.about-hero-media{
  background:#071f1c;
}
.about-hero-media::before,
.about-hero-media::after{display:none!important}
.about-hero-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 38%;
  display:block;
}


/* Booking panel: lower, thinner, more precise */
.booking-wrap{padding-bottom:10px}
.booking-panel{
  margin-top:-22px;
  border-radius:9px;
  padding:7px 10px 6px;
  box-shadow:0 12px 30px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.025);
  background:linear-gradient(180deg,rgba(5,39,34,.98),rgba(3,31,27,.99));
}
.booking-grid{grid-template-columns:1fr 1fr .9fr .9fr 1.08fr}
.booking-field{
  padding:7px 14px;
  min-height:55px;
  gap:9px;
}
.booking-field .icon{width:20px;height:20px}
.booking-field label{font-size:9px;gap:2px}
.booking-field input,.booking-field select{font-size:11px}
.booking-submit{margin:4px 0 4px 10px;min-height:43px;font-size:10px}
.booking-meta{font-size:9px;padding-top:6px}

/* Tighter strips */
.icon-strip{padding:12px 0}
.icon-strip-item{padding:0 13px;gap:9px}
.icon-strip-item .icon{width:22px;height:22px}
.icon-strip-item strong{font-size:9.4px}
.icon-strip-item span{font-size:8.3px;margin-top:2px}
.stats-strip{padding:14px 0}
.stat{padding:0 16px}
.stat .icon{width:25px;height:25px;margin-bottom:5px}
.stat strong{font-size:30px}
.stat span{font-size:9px}

/* Section rhythm exactly closer to the references */
.section{padding:21px 0}
.section-title{font-size:clamp(25px,2.55vw,35px);margin-bottom:5px}
.section-title.gold-title{font-size:25px;letter-spacing:.02em}
.section-sub{font-size:10.5px;margin-bottom:13px}
.card-grid{gap:10px}
.card{
  border-radius:8px;
  border-color:rgba(218,160,62,.42);
  box-shadow:0 8px 20px rgba(0,0,0,.21);
  background:
    linear-gradient(180deg,rgba(8,48,42,.96),rgba(4,28,25,.99));
}
.card::after,.plan::after,.testimonial::after,.timeline-card::after,.camera-card::after,.update-card::after{
  content:"";
  position:absolute;
  left:-90%;top:-70%;
  width:36%;height:250%;
  transform:rotate(17deg);
  background:linear-gradient(90deg,transparent,rgba(255,224,160,.11),transparent);
  transition:left .72s ease;
  pointer-events:none;
}
.card:hover::after,.plan:hover::after,.testimonial:hover::after,.timeline-card:hover::after,.camera-card:hover::after,.update-card:hover::after{left:150%}
.card:hover{
  transform:translateY(-3px);
  border-color:rgba(240,192,95,.8);
  box-shadow:
    0 12px 26px rgba(0,0,0,.29),
    0 0 0 1px rgba(240,192,95,.06),
    0 0 16px rgba(220,166,64,.06);
}
.card-media{height:148px}
.card-body{padding:10px 11px 11px}
.card h3{font-size:17px;margin-bottom:5px}
.card p{font-size:9.4px;line-height:1.38;margin-bottom:7px}
.card .meta{font-size:8.4px}
.card .price{font-size:19px}
.card .card-actions{margin-top:8px}
.card .card-actions .btn{width:100%;min-height:30px;padding:7px 10px;font-size:8.6px}
.badge{top:7px;right:7px;border-radius:4px;padding:5px 8px;font-size:8px}
.featured{
  box-shadow:
    0 0 0 1px rgba(240,192,95,.24),
    0 9px 23px rgba(0,0,0,.25),
    0 0 17px rgba(220,166,64,.08);
}

/* Home fidelity */
.home-suites{padding-top:22px}
.page-home .home-suites .card-media{height:135px}
.page-home .home-experiences .card-media{height:145px}
.service-icon-card{
  padding:13px 8px 11px;
  min-height:102px;
}
.service-icon-card h3{font-size:14px;margin:0 0 3px}
.service-icon-card p{font-size:8.5px}
.tracking-box{
  grid-template-columns:205px 1fr;
  padding:10px;
  gap:10px;
  border-radius:9px;
}
.tracking-side h2{font-size:23px;margin-bottom:7px}
.tracking-side p{font-size:9px}
.checks{font-size:9px;gap:5px;margin:8px 0}
.pet-head{margin-bottom:8px}
.avatar-slot{width:37px;height:37px}
.pet-id{gap:8px}.pet-id strong{font-size:17px}.pet-id small{font-size:8px}
.timeline-grid{gap:7px}
.timeline-card{position:relative;border-radius:7px}
.timeline-card .card-media{height:82px}
.timeline-card .copy{padding:7px}
.timeline-card time{font-size:9px}.timeline-card h4{font-size:10px;margin:2px 0}.timeline-card p{font-size:7.6px}
.testimonials{grid-template-columns:185px 1fr;gap:8px}
.testimonial-title{border-radius:8px;padding:13px}
.testimonial-title h2{font-size:21px;margin-bottom:7px}
.testimonial-grid{gap:8px}
.testimonial{position:relative;border-radius:8px;padding:10px;overflow:hidden}
.testimonial p{font-size:9px;line-height:1.38;margin:0 0 6px}
.testimonial strong{font-size:9px}
.stars{font-size:12px;letter-spacing:1.4px}
.pricing-layout{gap:11px}
.plan-grid{gap:8px}
.plan{
  overflow:hidden;
  padding:13px;
  border-radius:8px;
}
.plan h3{font-size:19px}.plan .price{font-size:23px;margin:8px 0}.plan ul{font-size:8.5px;gap:5px;margin-bottom:10px}.plan .btn{width:100%;font-size:8.5px;min-height:30px;padding:7px}
.cta-panel{border-radius:9px;grid-template-columns:44% 56%}
.cta-panel .media-slot{min-height:190px}
.cta-copy{padding:16px}
.cta-copy h2{font-size:24px;margin-bottom:7px}
.cta-copy p{font-size:9px}

/* About page fidelity */
.about-history{grid-template-columns:35% 65%}
.history-copy{padding:30px 34px}
.history-copy .eyebrow{font-size:9px}
.history-copy h2{font-size:31px;margin:8px 0 13px}
.history-copy p{font-size:9.7px;line-height:1.55}
.history-visual{min-height:320px}
.values-band{padding:17px 0}
.value{padding:6px 12px}
.value .icon{width:26px;height:26px}.value-icon{height:34px;margin-bottom:6px}.value-icon img{height:33px;max-width:43px}
.value h3{font-size:14px;margin:0 0 5px}
.value p{font-size:8.5px}
.team-layout{grid-template-columns:30% 70%;gap:17px}
.team-copy h2{font-size:29px;margin:7px 0 10px}
.team-copy p{font-size:9px}
.team-copy .btn{margin-top:5px}
.team-grid{gap:7px}
.team-card .card-media{height:174px}
.team-card .card-body{padding:8px}
.team-card h3{font-size:14px}
.team-card p{font-size:8px}
.infra-layout{grid-template-columns:36% 64%}
.infra-visual{min-height:225px}
.infra-copy{padding:16px 20px}
.infra-head{gap:14px}
.infra-head h2{font-size:27px;margin:5px 0}
.infra-head p{font-size:8.8px}
.infra-grid{margin-top:10px}
.infra-item{padding:4px 9px}
.infra-item .icon{width:22px;height:22px}
.infra-item h4{font-size:12px;margin:4px 0}
.infra-item p{font-size:7.7px}
.about-cta .media-slot{min-height:190px}
.about-cta .cta-copy{padding:21px 25px}

/* Suites precision */
.page-suites .section-title[style*="text-align"]{font-size:29px}
.filters{gap:8px;margin-bottom:12px}
.filter-btn{font-size:8.5px;padding:7px 17px}
.page-suites .card-media{height:145px}
.detail-layout{grid-template-columns:42% 20% 38%;gap:8px}
.detail-main{min-height:280px}
.detail-thumbs{gap:5px}
.detail-copy{padding:13px 16px}
.detail-copy h2{font-size:27px;margin:6px 0 9px}
.detail-copy .section-sub{font-size:8.8px}
.feature-list{gap:7px 10px;margin:10px 0}
.feature-line{font-size:8.5px}
.feature-line .icon{width:15px;height:15px}
.amenity{padding:10px 6px}.amenity .icon{width:21px;height:21px}.amenity strong{font-size:8px}
.compare{font-size:8.5px}.compare th,.compare td{padding:5px 7px}
.gallery-strip{gap:5px}.gallery-strip .media-slot{height:110px}

/* Services / experiences density */
.hero-icon-menu .service-icon-card{min-height:92px}
.split-showcase .copy{padding:20px}
.split-showcase .copy h2{font-size:28px;margin:5px 0 9px}
.split-showcase .copy p{font-size:8.8px}
.split-showcase>.media-slot{min-height:255px}
.mini-gallery{gap:4px;padding:4px}
.process-step{padding:10px;gap:8px}
.process-step .num{width:25px;height:25px;font-size:10px}
.process-step strong{font-size:9px}.process-step span{font-size:7.4px}
.phone-dashboard{grid-template-columns:210px 1fr;gap:12px}
.phone-slot{min-height:290px;border-width:4px}
.dash-grid{gap:7px}.dash-card{padding:8px;border-radius:7px}.dash-card strong{font-size:17px}.dash-card span{font-size:7px}
.summary-grid{gap:5px}.summary-item{padding:7px;font-size:7px}
.camera-grid,.update-grid{gap:5px}
.camera-card,.update-card{position:relative;overflow:hidden;border-radius:7px}
.camera-card .media-slot{height:82px}
.camera-card .copy{padding:6px}.camera-card strong{font-size:8px}.camera-card small{font-size:6.6px}
.update-card{padding:7px}.update-card .media-slot{height:72px;margin-bottom:5px}.update-card strong{font-size:7.5px}.update-card p{font-size:6.5px}

/* Blog closer to reference */
.blog-controls{margin-bottom:14px}
.blog-tabs{gap:18px}
.blog-tabs button{font-size:9px}
.search-box{min-width:225px;padding:0 10px}
.search-box input{height:34px;font-size:9px}
.blog-grid{gap:11px}
.blog-card .card-media{height:170px}
.blog-card .tag{font-size:7.8px}
.blog-card h3{font-size:20px;margin-top:6px}
.blog-card .article-meta{font-size:7.5px;margin-top:10px}
.newsletter-banner{border-radius:11px;padding:14px 19px;grid-template-columns:52px 1fr 300px;gap:14px}
.newsletter-icon{width:44px;height:44px}
.newsletter-banner h3{font-size:14px}.newsletter-banner p{font-size:8.5px}
.newsletter-form-inline input{font-size:9px}

/* Contact closer to reference */
.contact-two{padding:25px 0;gap:22px}
.contact-info{padding-right:22px}
.contact-info h2,.message-form h2{font-size:12px}
.contact-line{gap:9px;margin-bottom:13px}
.contact-line .icon{width:19px;height:19px}
.contact-line strong,.contact-line span{font-size:9px}
.message-form form{gap:12px}
.message-form label{font-size:8.5px}
.message-form input,.message-form select{padding:8px 0;font-size:9px}
.message-form textarea{height:92px;font-size:9px}
.visit-layout{gap:22px}
.visit-copy h2{font-size:13px}.visit-copy p{font-size:8.8px}
.map-box{height:175px}
.faq-grid{gap:7px 20px}
.faq-item{padding:9px 0}
.faq-q{font-size:9px}.faq-a{font-size:8px}

/* Footer much closer to compact reference proportions */
.site-footer{padding:17px 0 9px}
.footer-grid{gap:17px}
.footer-brand{gap:8px}.footer-brand img{width:34px;height:34px}
.footer-brand strong{font-size:18px}.footer-brand span{font-size:7px}
.footer-copy{font-size:8px;max-width:175px}
.socials{gap:6px;margin-top:7px}.socials a{width:24px;height:24px;font-size:8px}
.footer-col{gap:5px}.footer-col h4{font-size:8.5px;margin-bottom:6px}.footer-col a,.footer-col p{font-size:7.7px}
.footer-news input{font-size:7.7px;min-height:30px}
.footer-news .btn{font-size:7.5px;min-height:30px;padding:6px 9px}
.footer-bottom{margin-top:11px;padding-top:8px;font-size:7px}

/* Responsive keeps desktop proportions while adapting gracefully */
@media(max-width:1120px) and (min-width:901px){
  .brand{min-width:172px}
  .brand-copy strong{font-size:18px}
  .nav{gap:13px}
  .nav a{font-size:9.8px}
  .header-actions>.btn{min-width:112px;padding-inline:11px;font-size:8.8px}
  .account{width:31px;height:31px}
}
@media(max-width:900px){
  .site-header{position:fixed;background:rgba(0,22,19,.97)}
  .header-inner{height:64px}
  .nav{top:64px}
  .hero{padding-top:64px}
  .hero-grid,.page-home .hero-grid,.page-about .hero-grid,.page-suites .hero-grid,.page-services .hero-grid,.page-experiences .hero-grid,.page-track .hero-grid,.page-contact .hero-grid,.page-blog .hero-grid{grid-template-columns:1fr;min-height:auto}
  .hero-visual,.page-home .hero-visual,.page-about .hero-visual,.page-suites .hero-visual,.page-services .hero-visual,.page-experiences .hero-visual,.page-track .hero-visual,.page-contact .hero-visual,.page-blog .hero-visual{min-height:245px}
  .hero-copy{padding:34px 24px 24px}
  .hero-copy h1{font-size:42px}
  .booking-panel{margin-top:0;border-radius:0}
  .team-layout{grid-template-columns:1fr}
}
@media(max-width:600px){
  .hero-copy h1{font-size:36px}
  .hero-copy p{font-size:11px}
  .section-title{font-size:25px}
  .card h3{font-size:18px}
  .card p{font-size:10px}
  .page-home .home-suites .card-media,.page-home .home-experiences .card-media,.card-media{height:175px}
  .tracking-box,.testimonials{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:1fr 1fr}
  .team-grid{grid-template-columns:1fr 1fr}
  .phone-dashboard{grid-template-columns:1fr}
  .newsletter-banner{grid-template-columns:1fr}
}

/* ===== HOME V4 — AFINAÇÃO DE ALTA FIDELIDADE ===== */
/* Afinação exclusiva da homepage com base na comparação direta da referência. */
.page-home{
  --home-gold:#e6b653;
  --home-gold-2:#f0c76d;
  --home-teal:#0a5b51;
  --home-bg:#03231f;
  --home-panel:#062c27;
  --home-panel-2:#082f2a;
}
.page-home .container{width:min(calc(100% - 62px),1180px)}

/* HEADER — mais próximo da altura, escala e alinhamento da referência */
.page-home .site-header{height:56px;background:linear-gradient(180deg,rgba(0,15,13,.90),rgba(0,20,18,.58));border-bottom:1px solid rgba(229,179,78,.13)}
.page-home .header-inner{height:56px;gap:18px}
.page-home .brand{min-width:220px;gap:10px}
.page-home .brand img{width:40px;height:40px}
.page-home .brand-copy strong{font-size:21px;letter-spacing:.04em}
.page-home .brand-copy span{font-size:8px;letter-spacing:.23em;margin-top:3px}
.page-home .nav{gap:22px}
.page-home .nav a{font-size:12px;font-weight:650}
.page-home .nav a::after{bottom:-9px}
.page-home .account{width:36px;height:36px}
.page-home .header-actions>.btn{min-width:140px;min-height:36px;padding:9px 15px;font-size:10px}

/* HERO — fundo único, sem divisão vertical; posição do texto corrigida */
.page-home .home-hero-real{
  height:clamp(390px,calc(28vw + 126px),485px);
  padding-top:56px;
  position:relative;overflow:visible;background:#03211e;border:0;
}
.page-home .home-hero-media{position:absolute;inset:0;border:0;border-radius:0;background:radial-gradient(ellipse at 62% 42%,rgba(15,67,57,.20),transparent 52%),linear-gradient(90deg,#001b18 0%,#032a25 51%,#062a25 100%)}
.page-home .home-hero-media::after{display:none}
.page-home .home-hero-real::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,17,15,.78) 0%,rgba(0,17,15,.47) 31%,rgba(0,17,15,.13) 52%,rgba(0,17,15,.04) 100%)}
.page-home .home-hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:flex-start}
.page-home .home-hero-copy{width:42%;margin-left:clamp(36px,4vw,52px);padding-top:40px}
.page-home .home-hero-copy h1{font:500 clamp(38px,3.5vw,46px)/.98 var(--serif);letter-spacing:-.02em;margin:0 0 14px;color:#f4f1e9;text-shadow:0 3px 18px rgba(0,0,0,.35)}
.page-home .home-hero-copy p{font-size:13px;line-height:1.5;margin:0 0 16px;color:#f1efe9}
.page-home .hero-actions{gap:11px}
.page-home .hero-actions .btn{min-width:150px;min-height:38px;padding:9px 14px;font-size:10.5px}

/* BARRA DE RESERVA — largura/altura quase idênticas à referência */
.page-home .home-booking{position:absolute;z-index:4;width:min(75%,950px);left:50%;transform:translateX(-50%);bottom:9px;background:linear-gradient(180deg,rgba(5,40,35,.99),rgba(3,31,28,.99));border:1px solid rgba(10,86,76,.95);border-radius:10px;box-shadow:0 14px 32px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.035);padding:8px 11px 6px}
.page-home .home-booking-row{display:grid;grid-template-columns:1fr 1fr .92fr .88fr 1.18fr;align-items:center}
.page-home .home-book-field{min-height:51px;display:flex;align-items:center;gap:10px;padding:5px 14px;border-right:1px solid rgba(255,255,255,.09);color:var(--home-gold)}
.page-home .home-book-field .icon{width:22px;height:22px}
.page-home .home-book-field label{font-size:10px;color:#dfe5e1;font-weight:700;display:grid;gap:2px;line-height:1.1}
.page-home .home-book-field input,.page-home .home-book-field select{background:transparent;border:0;outline:0;color:#fff;font-size:13px;font-weight:800;padding:0;max-width:125px}
.page-home .home-book-submit{margin-left:10px;min-height:40px;padding-inline:13px;font-size:10px}
.page-home .home-book-meta{border-top:1px solid rgba(255,255,255,.035);margin-top:4px;padding-top:5px;display:flex;justify-content:center;gap:12px;color:#bcc7c1;font-size:9px}

/* BENEFÍCIOS — altura e tipografia aumentadas para leitura normal */
.page-home .home-benefits{height:clamp(58px,5.6vw,72px);background:linear-gradient(180deg,#032724,#052c27);border-top:1px solid rgba(11,86,76,.85);border-bottom:1px solid rgba(11,86,76,.85)}
.page-home .home-benefits-grid{height:100%;display:grid;grid-template-columns:repeat(6,1fr);align-items:center}
.page-home .home-benefit{display:flex;align-items:center;gap:10px;padding:0 14px;border-right:1px solid rgba(255,255,255,.08)}
.page-home .home-benefit:last-child{border-right:0}
.page-home .home-benefit .icon{width:26px;height:26px;color:var(--home-gold)}
.page-home .home-benefit .benefit-icon-img{width:40px;height:40px;object-fit:contain;display:block;flex:0 0 40px;image-rendering:auto;filter:drop-shadow(0 1px 2px rgba(0,0,0,.22))} 
.page-home .home-benefit strong{display:block;font-size:10.9px;line-height:1.08}
.page-home .home-benefit span{display:block;margin-top:3px;color:#c9d2cd;font-size:8.8px;line-height:1.18}

/* RITMO DAS SECÇÕES */
.page-home .home-section{background:linear-gradient(180deg,#052a26,#03221f);padding:14px 0}
.page-home .home-section h2{font:600 22px/1 var(--serif);letter-spacing:.01em;color:var(--home-gold);margin:0 0 4px}
.page-home .home-kicker{font-size:11px;color:#cbd3ce;margin:0 0 10px;line-height:1.3}

/* SUÍTES */
.page-home .home-suites-v3{padding-top:15px;padding-bottom:13px}
.page-home .home-suite-wrap{position:relative}
.page-home .home-suite-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}
.page-home .home-suite-card{min-height:188px;position:relative;overflow:visible;background:linear-gradient(180deg,#092f2a,#041f1c);border:1px solid rgba(211,155,61,.48);border-radius:7px;box-shadow:0 8px 18px rgba(0,0,0,.24);transition:.25s}
.page-home .home-suite-card:hover{transform:translateY(-3px);border-color:rgba(235,188,89,.82);box-shadow:0 12px 24px rgba(0,0,0,.3),0 0 18px rgba(224,171,70,.08)}
.page-home .home-suite-media{height:108px;border:0;border-bottom:1px solid rgba(211,155,61,.28);border-radius:6px 6px 0 0}
.page-home .home-suite-body{padding:8px 9px 9px}
.page-home .home-suite-body h3{font:600 14px var(--serif);margin:0 0 4px;color:#fff}
.page-home .home-suite-info{display:flex;justify-content:space-between;gap:8px;align-items:flex-end}
.page-home .home-suite-info p{font-size:9px;line-height:1.3;margin:0;color:#cdd6d1}
.page-home .home-suite-info small{font-size:8px;color:#c6b68f;display:block;text-align:right}
.page-home .home-suite-info strong{font:600 17px var(--serif);color:var(--home-gold);white-space:nowrap}
.page-home .home-suite-info em{font:400 9px var(--sans);font-style:normal}
.page-home .home-outline-btn,.page-home .home-gold-btn{min-height:29px;margin-top:7px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:900}
.page-home .home-outline-btn{border:1px solid rgba(210,160,64,.65);color:#fff;background:#05231f}
.page-home .home-gold-btn{border:1px solid #e9ba5f;color:#16140e;background:linear-gradient(#efc66f,#d89f40)}
.page-home .home-featured{border-color:#edbb5c;box-shadow:0 0 0 2px rgba(228,180,82,.14),0 0 22px rgba(226,173,67,.14)}
.page-home .home-badge{position:absolute;z-index:3;top:-12px;left:50%;transform:translateX(-50%);background:linear-gradient(#efca79,#dba64e);color:#1d170d;padding:5px 17px;border-radius:4px;font-size:8px;font-weight:900;white-space:nowrap}
.page-home .home-round-arrow{position:absolute;z-index:4;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:#082823;color:#fff;font-size:20px}
.page-home .home-round-arrow.left{left:-25px}.page-home .home-round-arrow.right{right:-25px}

/* EXPERIÊNCIAS */
.page-home .home-experiences-v3{padding-top:13px;padding-bottom:11px}
.page-home .home-experience-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.page-home .home-experience-grid article{height:150px;position:relative;overflow:hidden;border:1px solid #0c5a50;border-radius:5px;background:#062823}
.page-home .home-experience-grid .media-slot{position:absolute;inset:0;border:0;border-radius:0}
.page-home .home-experience-grid .media-slot img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center;transition:transform .35s ease;image-rendering:auto}
.page-home .home-experience-grid article:hover .media-slot img{transform:scale(1.025)}
.page-home .home-experience-grid article:nth-child(1) .media-slot img{object-position:center 52%}
.page-home .home-experience-grid article:nth-child(2) .media-slot img{object-position:center 50%}
.page-home .home-experience-grid article:nth-child(3) .media-slot img{object-position:center 46%}
.page-home .home-experience-grid article:nth-child(4) .media-slot img{object-position:center 43%}
.page-home .home-experience-grid article:nth-child(5) .media-slot img{object-position:center 52%}
.page-home .home-experience-grid article:nth-child(6) .media-slot img{object-position:center 48%}
.page-home .home-experience-grid article::after{content:"";position:absolute;inset:auto 0 0;height:50%;background:linear-gradient(transparent,rgba(1,24,21,.96));pointer-events:none}
.page-home .home-experience-grid h3,.page-home .home-experience-grid p{position:absolute;z-index:2;left:9px;right:8px}
.page-home .home-experience-grid h3{bottom:25px;font:600 12px var(--serif);color:#fff;margin:0}
.page-home .home-experience-grid p{bottom:9px;font-size:9px;color:#cbd5cf;margin:0}
.page-home .home-slider-dots{height:9px;display:flex;justify-content:center;gap:3px;align-items:flex-end}
.page-home .home-slider-dots b,.page-home .home-slider-dots span{height:2px;border-radius:3px;background:#536b65;width:7px}.page-home .home-slider-dots b{width:17px;background:#fff}

/* SERVIÇOS — 7 cards, proporção e legibilidade corrigidas */
.page-home .home-services-v3{padding-top:12px;padding-bottom:14px}
.page-home .home-services-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.page-home .home-service-card{height:94px;border:1px solid #0b5c51;border-radius:6px;background:linear-gradient(180deg,#082e29,#05231f);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;transition:.25s;position:relative;overflow:hidden}
.page-home .home-service-card:hover{transform:translateY(-3px);border-color:#138072;box-shadow:0 9px 20px rgba(0,0,0,.25)}
.page-home .home-icon-halo{width:72px;height:52px;border-radius:50%;display:grid;place-items:center;margin-bottom:2px;background:radial-gradient(ellipse,rgba(14,77,67,.78),rgba(5,38,33,.04) 72%)}
.page-home .home-icon-halo .icon{width:34px;height:34px;color:#e0ad49;filter:drop-shadow(0 2px 4px rgba(0,0,0,.28))}
.page-home .home-icon-halo .service-icon-img{width:50px;height:50px;object-fit:contain;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.26))}
.page-home .home-service-card h3{font:700 11.5px var(--sans);color:#fff;margin:1px 0 2px}
.page-home .home-service-card p{font-size:9px;line-height:1.16;color:#d2dbd5;margin:0}

/* ACOMPANHE */
.page-home .home-tracking-v3{padding:0 0 9px}
.page-home .home-track-layout{display:grid;grid-template-columns:22% 78%;gap:8px}
.page-home .home-track-side{min-height:214px;padding:14px 16px 11px;border:1px solid #0a574e;border-radius:8px;background:linear-gradient(100deg,#073b34,#052925)}
.page-home .home-track-side h2{font:600 20px/1.02 var(--serif);margin:0 0 7px;color:var(--home-gold)}
.page-home .home-track-side p{font-size:10px;line-height:1.35;color:#cbd4cf;margin:0 0 9px}
.page-home .home-track-side ul{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.page-home .home-track-side li{font-size:9.5px;color:#e7e9e6}.page-home .home-track-side li span{display:inline-grid;place-items:center;width:13px;height:13px;margin-right:6px;border:1px solid #b99348;border-radius:50%;color:#e4b452;font-size:8px}
.page-home .home-app-badges{display:flex;gap:6px;margin-top:11px}.page-home .home-app-badges b{height:27px;min-width:76px;border:1px solid rgba(255,255,255,.2);border-radius:4px;background:#040b0b;display:flex;align-items:center;justify-content:center;gap:4px;font-size:9px;font-weight:700}.page-home .home-app-badges i{font-style:normal;font-size:8.5px}
.page-home .home-track-main{min-height:214px;border:1px solid #0a574e;border-radius:8px;background:linear-gradient(180deg,#062d28,#04231f);padding:9px 11px 9px;position:relative}
.page-home .home-track-head{height:38px;display:flex;justify-content:space-between;align-items:center}.page-home .home-pet{display:flex;align-items:center;gap:8px}.page-home .home-avatar{width:38px;height:38px;border-radius:50%;border:1px solid #b88c3f}.page-home .home-pet strong{display:block;font:600 17px var(--serif);line-height:1}.page-home .home-pet span{font-size:9px;color:#cbd4ce}.page-home .home-track-actions{display:flex;align-items:center;gap:15px}.page-home .home-live{font-size:9px;font-weight:900}.page-home .home-live::before{content:"";display:inline-block;width:7px;height:7px;background:#29cf56;border-radius:50%;margin-right:5px}.page-home .home-camera-btn{border:1px solid #a07b3c;border-radius:3px;padding:7px 12px;font-size:9px;font-weight:900}
.page-home .home-timeline-rail{height:18px;position:relative;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;margin:0 8px}.page-home .home-timeline-rail::before{content:"";position:absolute;left:9%;right:9%;height:1px;background:#6b7d76;top:50%}.page-home .home-timeline-rail span{position:relative;z-index:2;justify-self:center;width:9px;height:9px;border-radius:50%;background:#082a26;border:2px solid #b98d42}
.page-home .home-timeline-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.page-home .home-time-card{height:128px;border:1px solid #0b5148;border-radius:6px;overflow:hidden;background:#07302b;position:relative}.page-home .home-time-copy{padding:6px 7px 4px}.page-home .home-time-copy time{display:block;color:#dcb25d;font:600 12px var(--serif);line-height:1}.page-home .home-time-copy h3{font:700 10.5px var(--sans);margin:2px 0 1px;color:#fff}.page-home .home-time-copy p{font-size:8.5px;color:#c8d2cc;margin:0}.page-home .home-time-media{height:57px;margin:0 5px;border-radius:4px;border:0}.page-home .home-status{height:17px;display:flex;align-items:center;padding:0 7px;color:#65cf7b;font-size:8.5px}.page-home .home-status.live{color:#fff;background:transparent;font-weight:900}.page-home .home-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.45);background:rgba(0,0,0,.28);color:#f2c56b}.page-home .home-play .icon{width:17px;height:17px}

/* DEPOIMENTOS */
.page-home .home-testimonials-v3{padding:0 0 8px}.page-home .home-testimonial-layout{display:grid;grid-template-columns:18.5% 1fr 1fr 1fr 30px;gap:8px;align-items:stretch}.page-home .home-test-title,.page-home .home-review{height:90px;border:1px solid #0a574e;border-radius:6px;background:#062c27}.page-home .home-test-title{padding:11px 14px}.page-home .home-test-title h2{font:600 17px/1.05 var(--serif);margin:0 0 7px;color:var(--home-gold)}.page-home .home-test-title div{color:#e7b44e;letter-spacing:2px;font-size:12px}.page-home .home-review{padding:8px 9px 8px 58px;position:relative}.page-home .home-review-avatar{position:absolute;left:9px;top:9px;width:41px;height:41px;border-radius:50%;border:1px solid #a47c3b}.page-home .home-review p{font-size:9.5px;line-height:1.32;margin:0 0 4px;color:#e1e4df}.page-home .home-review strong,.page-home .home-review span{display:block;font-size:8.7px}.page-home .home-review span{color:#cbd3ce}.page-home .home-review b{position:absolute;left:9px;bottom:6px;color:#e2ae47;font-size:8.5px;letter-spacing:1px}.page-home .home-review-next{align-self:center;width:28px;height:28px;border-radius:50%;border:1px solid #6c7b74;background:#072a26;color:#fff}

/* PLANOS + CTA */
.page-home .home-pricing-v3{padding:9px 0 4px}.page-home .home-price-layout{display:grid;grid-template-columns:58.5% 41.5%;gap:16px;align-items:end}.page-home .home-price-left>h2{font:600 21px var(--serif);color:var(--home-gold);margin:0 0 3px}.page-home .home-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.page-home .home-plan{height:180px;position:relative;padding:11px;border:1px solid rgba(211,155,61,.53);border-radius:6px;background:linear-gradient(180deg,#082e29,#05231f)}.page-home .home-plan h3{font:700 14px var(--sans);color:#fff;margin:0 0 2px}.page-home .home-plan>p{font-size:9.5px;color:#c9d1cd;margin:0;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.08)}.page-home .home-plan-price{font:600 20px var(--serif);color:#e2ad47;margin:7px 0}.page-home .home-plan-price em{font:400 9px var(--sans);font-style:normal}.page-home .home-plan ul{list-style:none;padding:0;margin:0;display:grid;gap:4px}.page-home .home-plan li{font-size:9px;color:#d7ded9}.page-home .home-plan li::before{content:"✓";color:#7ccc87;margin-right:5px}.page-home .home-plan .home-outline-btn,.page-home .home-plan .home-gold-btn{position:absolute;left:10px;right:10px;bottom:8px;margin:0}.page-home .home-popular{border-color:#e6b353;box-shadow:0 0 0 2px rgba(229,180,81,.10),0 0 18px rgba(224,168,62,.10)}.page-home .home-plan-badge{position:absolute;left:50%;top:-11px;transform:translateX(-50%);background:linear-gradient(#efcb78,#d9a44c);color:#17140d;padding:5px 18px;border-radius:4px;font-size:8px;font-weight:900;white-space:nowrap}
.page-home .home-final-cta{height:196px;display:grid;grid-template-columns:44% 56%;overflow:hidden;position:relative;background:linear-gradient(105deg,#07352f,#062823);border:1px solid #bb8c3d;border-radius:18px 6px 18px 6px;box-shadow:inset 0 0 0 1px rgba(238,191,94,.08),0 10px 24px rgba(0,0,0,.24)}.page-home .home-final-cta::before,.page-home .home-final-cta::after{content:"";position:absolute;width:23px;height:23px;background:#03231f;z-index:3}.page-home .home-final-cta::before{left:-13px;top:-13px;border-radius:50%;border:1px solid #bb8c3d}.page-home .home-final-cta::after{right:-13px;bottom:-13px;border-radius:50%;border:1px solid #bb8c3d}.page-home .home-cta-media{min-height:196px;border:0;border-radius:0;background:linear-gradient(180deg,#0a352f,#072923)}.page-home .home-cta-media::after{display:none}.page-home .home-final-copy{padding:20px 16px 13px 11px;display:flex;flex-direction:column;justify-content:center}.page-home .home-final-copy h2{font:600 19px/1.03 var(--serif);color:#e3b252;margin:0 0 9px}.page-home .home-final-copy p{font-size:10px;line-height:1.4;color:#e0e4df;margin:0 0 9px}.page-home .home-final-copy .btn{align-self:flex-start;min-width:155px;padding:8px 13px;font-size:10px}.page-home .home-whatsapp{display:flex;gap:7px;align-items:center;margin-top:8px;color:#36c96b;font-size:9px}.page-home .home-whatsapp strong{font-size:13px;color:#e2b24e}

/* FOOTER */
.page-home .home-footer{padding:12px 0 8px}.page-home .home-footer-grid{display:grid;grid-template-columns:1.3fr .82fr .82fr .82fr 1.25fr;gap:27px}.page-home .home-footer .footer-brand img{width:34px;height:34px}.page-home .home-footer .footer-brand strong{font-size:17px}.page-home .home-footer .footer-brand span{font-size:7px}.page-home .home-footer .footer-copy{font-size:9px;line-height:1.45}.page-home .home-footer .footer-col h4{font-size:9px}.page-home .home-footer .footer-col a,.page-home .home-footer .footer-col p{font-size:8.7px}.page-home .home-footer .socials a{width:23px;height:23px}.page-home .home-newsletter .footer-news input{height:29px;font-size:9px}.page-home .home-newsletter .footer-news .btn{height:29px;min-height:29px;font-size:8px}.page-home .home-footer-bottom{margin-top:9px;padding-top:7px;border-top:1px solid rgba(255,255,255,.06);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:#adb8b2;font-size:8px}.page-home .home-footer-bottom .home-paw-footer{grid-column:2;color:#dba648}.page-home .home-footer-bottom span:last-child{grid-column:3;text-align:right}.page-home .home-footer-bottom b{color:#d85050}

/* Laptop */
@media(max-width:1050px) and (min-width:821px){
  .page-home .container{width:min(calc(100% - 62px),1180px)}
  .page-home .home-hero-real{height:405px}
  .page-home .home-hero-copy{margin-left:38px;padding-top:40px}
  .page-home .home-hero-copy h1{font-size:38px}
  .page-home .home-booking{width:75%;max-width:710px}
  .page-home .home-benefits{height:54px}
  .page-home .home-benefit{padding-inline:9px;gap:7px}
  .page-home .home-benefit .icon{width:22px;height:22px}
  .page-home .home-benefit .benefit-icon-img{width:34px;height:34px;flex-basis:34px}
  .page-home .home-benefit strong{font-size:9px}.page-home .home-benefit span{font-size:8px}
  .page-home .home-suite-card{min-height:187px}.page-home .home-suite-media{height:105px}
  .page-home .home-service-card{height:92px}.page-home .home-track-layout{grid-template-columns:22% 78%}
}

/* Tablet/mobile */
@media(max-width:820px){
  .page-home .site-header{height:64px}.page-home .header-inner{height:64px}
  .page-home .home-hero-real{height:auto;padding-top:64px}.page-home .home-hero-inner{min-height:430px}.page-home .home-hero-copy{width:72%;margin-left:0;padding-top:70px;padding-bottom:120px}.page-home .home-hero-copy h1{font-size:42px}
  .page-home .home-booking{position:relative;left:auto;bottom:auto;transform:none;width:calc(100% - 30px);max-width:none;margin:0 auto -1px}.page-home .home-booking-row{grid-template-columns:1fr 1fr}.page-home .home-book-submit{grid-column:1/-1;margin:6px 0}.page-home .home-benefits{height:auto}.page-home .home-benefits-grid{grid-template-columns:repeat(3,1fr);padding:9px 0}.page-home .home-benefit{min-height:56px}
  .page-home .home-suite-grid{grid-template-columns:repeat(2,1fr)}.page-home .home-experience-grid{grid-template-columns:repeat(3,1fr)}.page-home .home-services-grid{grid-template-columns:repeat(4,1fr)}.page-home .home-track-layout{grid-template-columns:1fr}.page-home .home-testimonial-layout{grid-template-columns:1fr 1fr}.page-home .home-test-title{grid-column:1/-1}.page-home .home-review-next{display:none}.page-home .home-price-layout{grid-template-columns:1fr}.page-home .home-footer-grid{grid-template-columns:1fr 1fr}.page-home .home-newsletter{grid-column:1/-1}
}
@media(max-width:560px){
  .page-home .container{width:min(calc(100% - 24px),1180px)}.page-home .home-hero-copy{width:100%;padding-top:52px;padding-bottom:85px}.page-home .home-hero-copy h1{font-size:38px}.page-home .home-booking-row{grid-template-columns:1fr}.page-home .home-book-field{border-right:0;border-bottom:1px solid rgba(255,255,255,.06)}.page-home .home-benefits-grid{grid-template-columns:1fr 1fr}.page-home .home-suite-grid{grid-template-columns:1fr}.page-home .home-experience-grid{grid-template-columns:1fr 1fr}.page-home .home-services-grid{grid-template-columns:1fr 1fr}.page-home .home-timeline-grid{grid-template-columns:1fr}.page-home .home-timeline-rail{display:none}.page-home .home-time-card{height:auto}.page-home .home-time-media{height:110px}.page-home .home-testimonial-layout{grid-template-columns:1fr}.page-home .home-plan-grid{grid-template-columns:1fr}.page-home .home-plan{height:180px}.page-home .home-final-cta{grid-template-columns:1fr;height:auto}.page-home .home-cta-media{min-height:150px}.page-home .home-footer-grid{grid-template-columns:1fr}
}

/* ===== HOME V5 — PIXEL REFINEMENT AGAINST 941×1672 REFERENCE ===== */
.page-home .nav a{white-space:nowrap}

@media (min-width:821px) and (max-width:1050px){
  /* HEADER: preserve one-line navigation exactly like the reference */
  .page-home .site-header,.page-home .header-inner{height:50px}
  .page-home .brand{min-width:188px;gap:8px}
  .page-home .brand img{width:36px;height:36px}
  .page-home .brand-copy strong{font-size:19px}
  .page-home .brand-copy span{font-size:7.4px}
  .page-home .nav{gap:15px}
  .page-home .nav a{font-size:10.5px;line-height:1;white-space:nowrap}
  .page-home .account{width:32px;height:32px}
  .page-home .header-actions{gap:8px}
  .page-home .header-actions>.btn{min-width:124px;min-height:32px;padding:7px 11px;font-size:9px}

  /* HERO: same 390 px structural envelope; title closer to reference scale */
  .page-home .home-hero-real{height:390px;padding-top:50px}
  .page-home .home-hero-copy{width:43%;margin-left:38px;padding-top:39px}
  .page-home .home-hero-copy h1{font-size:41px;line-height:.98;margin-bottom:13px}
  .page-home .home-hero-copy p{font-size:11.6px;line-height:1.48;margin-bottom:15px}
  .page-home .hero-actions .btn{min-width:134px;min-height:34px;padding:8px 12px;font-size:9.4px}

  /* BOOKING: y≈300–377 in the reference; compact and non-overlapping */
  .page-home .home-booking{width:75%;max-width:710px;bottom:13px;padding:6px 9px 5px;border-radius:9px}
  .page-home .home-book-field{min-height:43px;padding:3px 11px;gap:8px}
  .page-home .home-book-field .icon{width:19px;height:19px}
  .page-home .home-book-field label{font-size:8.8px;line-height:1.05}
  .page-home .home-book-field input,.page-home .home-book-field select{font-size:11.4px;max-width:110px}
  .page-home .home-book-submit{min-height:34px;margin-left:8px;padding-inline:10px;font-size:8.7px}
  .page-home .home-book-meta{margin-top:2px;padding-top:3px;font-size:7.6px;gap:9px}

  .page-home .home-benefits{height:54px}
  .page-home .home-benefit{padding-inline:9px;gap:7px}
  .page-home .home-benefit .icon{width:21px;height:21px}
  .page-home .home-benefit .benefit-icon-img{width:32px;height:32px;flex-basis:32px}
  .page-home .home-benefit strong{font-size:9.5px}
  .page-home .home-benefit span{font-size:8px}

  /* Shared heading rhythm: readable but compact */
  .page-home .home-section{padding-left:0;padding-right:0}
  .page-home .home-section h2{font-size:21px;line-height:1;margin-bottom:3px}
  .page-home .home-kicker{font-size:9.4px;line-height:1.18;margin-bottom:7px}

  /* SUITES: target section 438–686px (~248px) */
  .page-home .home-suites-v3{height:248px;padding-top:13px;padding-bottom:8px;overflow:visible}
  .page-home .home-suite-grid{gap:10px}
  .page-home .home-suite-card{height:187px;min-height:187px}
  .page-home .home-suite-media{height:98px}
  .page-home .home-suite-body{height:87px;padding:7px 8px 7px;display:grid;grid-template-rows:auto 1fr 25px}
  .page-home .home-suite-body h3{font-size:12.3px;margin:0 0 2px}
  .page-home .home-suite-info{align-items:start;gap:6px}
  .page-home .home-suite-info p{font-size:7.9px;line-height:1.22}
  .page-home .home-suite-info small{font-size:7px}
  .page-home .home-suite-info strong{font-size:16px}
  .page-home .home-suite-info em{font-size:7.5px}
  .page-home .home-outline-btn,.page-home .home-gold-btn{min-height:25px;height:25px;margin-top:3px;font-size:7.8px}
  .page-home .home-badge{top:-11px;font-size:7.4px;padding:5px 15px}
  .page-home .home-round-arrow{width:28px;height:28px;font-size:18px}

  /* EXPERIENCES: target section ~203px */
  .page-home .home-experiences-v3{height:203px;padding-top:9px;padding-bottom:5px;overflow:hidden}
  .page-home .home-experience-grid{height:141px;gap:7px}
  .page-home .home-experience-grid article{height:141px}
  .page-home .home-experience-grid h3{bottom:19px;font-size:10.3px}
  .page-home .home-experience-grid p{bottom:7px;font-size:7.5px}
  .page-home .home-slider-dots{height:6px}

  /* SERVICES: target section ~147px, seven cards */
  .page-home .home-services-v3{height:157px;padding-top:8px;padding-bottom:6px;overflow:hidden}
  .page-home .home-services-grid{height:94px;gap:7px}
  .page-home .home-service-card{height:94px}
  .page-home .home-icon-halo{width:64px;height:44px}
  .page-home .home-icon-halo .icon{width:30px;height:30px}
  .page-home .home-icon-halo .service-icon-img{width:42px;height:42px}
  .page-home .home-service-card h3{font-size:10px;margin:0 0 2px}
  .page-home .home-service-card p{font-size:7.6px;line-height:1.1}

  /* TRACKING: target section ~208px */
  .page-home .home-tracking-v3{height:208px;padding:0 0 6px;overflow:hidden}
  .page-home .home-track-layout{height:202px;grid-template-columns:22% 78%;gap:7px}
  .page-home .home-track-side,.page-home .home-track-main{height:196px;min-height:196px}
  .page-home .home-track-side{padding:11px 13px 8px}
  .page-home .home-track-side h2{font-size:17.2px;margin-bottom:6px}
  .page-home .home-track-side p{font-size:8.1px;margin-bottom:7px}
  .page-home .home-track-side ul{gap:4px}
  .page-home .home-track-side li{font-size:7.6px}
  .page-home .home-app-badges{margin-top:8px;gap:5px}
  .page-home .home-app-badges b{height:23px;min-width:64px;font-size:7px}
  .page-home .home-app-badges i{font-size:6.8px}
  .page-home .home-track-main{padding:8px 10px 8px}
  .page-home .home-track-head{height:34px}
  .page-home .home-avatar{width:32px;height:32px}
  .page-home .home-pet strong{font-size:15.5px}
  .page-home .home-pet span{font-size:7px}
  .page-home .home-camera-btn{padding:6px 10px;font-size:7px}
  .page-home .home-live{font-size:7.5px}
  .page-home .home-timeline-rail{height:16px}
  .page-home .home-timeline-grid{gap:7px}
  .page-home .home-time-card{height:111px}
  .page-home .home-time-copy{padding:5px 6px 3px}
  .page-home .home-time-copy time{font-size:10.7px}
  .page-home .home-time-copy h3{font-size:9px}
  .page-home .home-time-copy p{font-size:7.1px}
  .page-home .home-time-media{height:49px;margin:0 4px}
  .page-home .home-status{height:15px;padding:0 5px;font-size:7.3px}
  .page-home .home-play{width:31px;height:31px}

  /* TESTIMONIALS: near-reference ~95px */
  .page-home .home-testimonials-v3{height:95px;padding:0 0 5px;overflow:hidden}
  .page-home .home-testimonial-layout{height:90px;gap:7px}
  .page-home .home-test-title,.page-home .home-review{height:86px}
  .page-home .home-test-title{padding:9px 11px}
  .page-home .home-test-title h2{font-size:15px;margin-bottom:6px}
  .page-home .home-test-title div{font-size:10px}
  .page-home .home-review{padding:7px 7px 7px 50px}
  .page-home .home-review-avatar{left:7px;top:7px;width:36px;height:36px}
  .page-home .home-review p{font-size:7.9px;line-height:1.22;margin-bottom:3px}
  .page-home .home-review strong,.page-home .home-review span{font-size:7.3px}
  .page-home .home-review b{left:7px;bottom:5px;font-size:7.5px}

  /* PRICING: target ~216px */
  .page-home .home-pricing-v3{height:216px;padding:7px 0 4px;overflow:hidden}
  .page-home .home-price-layout{height:205px;grid-template-columns:58.5% 41.5%;gap:14px;align-items:end}
  .page-home .home-price-left>h2{font-size:19px;margin-bottom:2px}
  .page-home .home-plan-grid{height:158px;gap:7px}
  .page-home .home-plan{height:158px;padding:9px}
  .page-home .home-plan h3{font-size:12px}
  .page-home .home-plan>p{font-size:8px;padding-bottom:4px}
  .page-home .home-plan-price{font-size:17px;margin:5px 0}
  .page-home .home-plan-price em{font-size:7.5px}
  .page-home .home-plan ul{gap:2px}
  .page-home .home-plan li{font-size:7.6px}
  .page-home .home-plan .home-outline-btn,.page-home .home-plan .home-gold-btn{left:8px;right:8px;bottom:7px;height:23px;min-height:23px;font-size:7.2px}
  .page-home .home-plan-badge{top:-10px;padding:4px 15px;font-size:7px}
  .page-home .home-final-cta{height:174px}
  .page-home .home-cta-media{min-height:174px}
  .page-home .home-final-copy{padding:15px 13px 10px 9px}
  .page-home .home-final-copy h2{font-size:16px;margin-bottom:7px}
  .page-home .home-final-copy p{font-size:8.2px;margin-bottom:7px}
  .page-home .home-final-copy .btn{min-width:132px;min-height:30px;padding:6px 10px;font-size:8px}
  .page-home .home-whatsapp{margin-top:6px;font-size:7.5px}
  .page-home .home-whatsapp strong{font-size:11px}

  /* FOOTER: compact 117px target while retaining readable text */
  .page-home .home-footer{height:117px;padding:7px 0 5px;overflow:hidden}
  .page-home .home-footer-grid{height:82px;gap:20px}
  .page-home .home-footer .footer-brand img{width:30px;height:30px}
  .page-home .home-footer .footer-brand strong{font-size:15px}
  .page-home .home-footer .footer-brand span{font-size:6.5px}
  .page-home .home-footer .footer-copy{font-size:7.5px;line-height:1.3;margin:5px 0}
  .page-home .home-footer .socials{margin-top:4px}
  .page-home .home-footer .socials a{width:19px;height:19px;font-size:7px}
  .page-home .home-footer .footer-col{gap:3px}
  .page-home .home-footer .footer-col h4{font-size:7.8px;margin-bottom:3px}
  .page-home .home-footer .footer-col a,.page-home .home-footer .footer-col p{font-size:7.2px;line-height:1.15}
  .page-home .home-newsletter .footer-news input{height:24px;font-size:7.2px}
  .page-home .home-newsletter .footer-news .btn{height:24px;min-height:24px;font-size:7px;padding:4px 8px}
  .page-home .home-footer-bottom{height:18px;margin-top:3px;padding-top:3px;font-size:7px}
}

/* ===== HOME V5.1 — FINAL GEOMETRY/TYPOGRAPHY PASS ===== */
@media (min-width:821px) and (max-width:1050px){
  /* Hero typography follows the reference's tighter three-line serif rhythm. */
  .page-home .home-hero-copy{padding-top:51px}
  .page-home .home-hero-copy h1{font-size:40px;line-height:.82;margin-bottom:12px}
  .page-home .home-hero-copy p{font-size:11.2px;line-height:1.35;margin-bottom:14px}
  .page-home .hero-actions .btn{min-height:32px;height:32px}

  /* Booking height increased upward, while keeping the same bottom anchor. */
  .page-home .home-book-field{min-height:48px}
  .page-home .home-book-meta{height:15px;align-items:center}

  /* Suite badge/card top relationship exactly closer to target. */
  .page-home .home-badge{top:-18px}

  /* Experiences use more of their section height instead of leaving dead space. */
  .page-home .home-experiences-v3{padding-top:6px}
  .page-home .home-experiences-v3 .home-kicker{margin-bottom:3px}
  .page-home .home-experience-grid{height:149px}
  .page-home .home-experience-grid article{height:149px}
  .page-home .home-slider-dots{height:5px}

  /* Services cards reach the same visual depth as the reference. */
  .page-home .home-services-v3{padding-top:10px}
  .page-home .home-services-v3 .home-kicker{margin-bottom:4px}
  .page-home .home-services-grid{height:93px}
  .page-home .home-service-card{height:96px}
  .page-home .home-icon-halo{height:44px}
  .page-home .home-icon-halo .icon{width:32px;height:32px}
  .page-home .home-icon-halo .service-icon-img{width:44px;height:44px}
  .page-home .home-service-card h3{font-size:10.4px}
  .page-home .home-service-card p{font-size:7.8px}

  /* Tracking: fill the lower portion like the original cards do. */
  .page-home .home-track-head{height:37px}
  .page-home .home-timeline-rail{height:19px}
  .page-home .home-time-card{height:122px}
  .page-home .home-time-media{height:56px}
  .page-home .home-time-copy time{font-size:11.2px}
  .page-home .home-time-copy h3{font-size:9.4px}
  .page-home .home-time-copy p{font-size:7.4px}

  /* Pricing content begins slightly higher and CTA gets the reference depth. */
  .page-home .home-price-layout{height:211px}
  .page-home .home-final-cta{height:184px}
  .page-home .home-cta-media{min-height:184px}
  .page-home .home-final-copy h2{font-size:16.8px}
}

/* ===== HOME V5.2 — CTA / FOOTER MICRO-FINISH ===== */
@media (min-width:821px) and (max-width:1050px){
  .page-home .home-final-cta{height:180px}
  .page-home .home-cta-media{min-height:180px;background:radial-gradient(circle at 60% 55%,rgba(14,62,54,.18),transparent 60%)}
  .page-home .home-final-copy{padding:12px 13px 9px 9px}
  .page-home .home-final-copy h2{font-size:15.8px;margin-bottom:6px}
  .page-home .home-final-copy p{font-size:7.9px;line-height:1.32;margin-bottom:6px}
  .page-home .home-final-copy .btn{min-height:29px;height:29px}
  .page-home .home-whatsapp{margin-top:4px;font-size:7.2px;line-height:1.15}
  .page-home .home-whatsapp strong{font-size:10.5px}
  .page-home .home-paw-footer{grid-column:2;width:13px;height:13px;color:#dba648;justify-self:center}
}

/* Empty photo slots: clean neutral surfaces, without decorative diagonals. */
.page-home .home-suite-media,
.page-home .home-experience-grid .media-slot,
.page-home .home-time-media,
.page-home .home-avatar,
.page-home .home-review-avatar,
.page-home .home-cta-media{
  background:#082b27;
}
.page-home .home-suite-media::before,.page-home .home-suite-media::after,
.page-home .home-experience-grid .media-slot::before,.page-home .home-experience-grid .media-slot::after,
.page-home .home-time-media::before,.page-home .home-time-media::after,
.page-home .home-avatar::before,.page-home .home-avatar::after,
.page-home .home-review-avatar::before,.page-home .home-review-avatar::after,
.page-home .home-cta-media::before,.page-home .home-cta-media::after{display:none!important}


/* ===== HOME V6 — correções de fidelidade solicitadas ===== */
.page-home .home-hero-media{
  background-color:#071e1a;
  background-image:
    linear-gradient(90deg,rgba(0,17,15,.90) 0%,rgba(0,17,15,.66) 24%,rgba(0,17,15,.28) 47%,rgba(0,17,15,.06) 100%),
    url("../images/hero-home.png");
  background-size:100% 100%, auto 100%;
  background-position:left top, right center;
  background-repeat:no-repeat,no-repeat;
}
.page-home .home-hero-real::after{display:none}
.page-home .home-hero-copy{position:relative;z-index:2}

.page-home .home-booking{bottom:11px}
.page-home .home-book-field{min-height:53px}
.page-home .home-book-field label{font-size:10.2px}
.page-home .home-book-field input,
.page-home .home-book-field select{font-size:13.5px}
.page-home .home-book-meta{font-size:8.8px;gap:11px}

.page-home .home-benefits-grid{grid-template-columns:.97fr .97fr 1.14fr 1fr .96fr .96fr}
.page-home .home-benefit{gap:8px;padding:0 11px}
.page-home .home-benefit .icon{width:24px;height:24px}
.page-home .home-benefit .benefit-icon-img{width:36px;height:36px;flex-basis:36px}
.page-home .home-benefit strong{font-size:10px;line-height:1.05;white-space:nowrap;letter-spacing:-.01em}
.page-home .home-benefit span{font-size:8.1px;line-height:1.15}

.page-home .home-pricing-v3{padding-top:12px;padding-bottom:10px}
.page-home .home-price-layout{grid-template-columns:58% 42%;gap:12px;align-items:start}
.page-home .home-price-left>h2{font-size:21px;margin-bottom:4px}
.page-home .home-plan-grid{gap:10px;align-items:stretch}
.page-home .home-plan{min-height:206px;height:auto;padding:13px 12px 46px;border-radius:8px}
.page-home .home-plan h3{font-size:15px;margin:0 0 3px}
.page-home .home-plan>p{font-size:10px;padding-bottom:7px}
.page-home .home-plan-price{font-size:21px;margin:8px 0 7px}
.page-home .home-plan-price em{font-size:9px}
.page-home .home-plan ul{gap:5px}
.page-home .home-plan li{font-size:9.4px;line-height:1.2}
.page-home .home-plan .home-outline-btn,
.page-home .home-plan .home-gold-btn{left:11px;right:11px;bottom:10px;height:30px;min-height:30px;font-size:8.6px}
.page-home .home-plan-badge{top:-12px;padding:5px 18px;font-size:8px}

.page-home .home-final-cta{min-height:206px;height:auto;grid-template-columns:43% 57%;border-radius:18px;overflow:hidden}
.page-home .home-cta-media{min-height:206px;position:relative;background:radial-gradient(circle at 50% 52%,rgba(16,78,67,.25),transparent 62%),linear-gradient(180deg,#0a342f,#062823)}
.page-home .home-cta-dog{position:absolute;left:14px;bottom:0;width:84%;max-width:none;height:auto;object-fit:contain;filter:drop-shadow(0 10px 22px rgba(0,0,0,.28))}
.page-home .home-final-copy{padding:18px 18px 14px 6px;justify-content:center}
.page-home .home-final-copy h2{font-size:19px;line-height:1.04;margin-bottom:9px}
.page-home .home-final-copy p{font-size:10px;line-height:1.38;margin-bottom:9px}
.page-home .home-final-copy .btn{min-width:165px;min-height:35px;padding:9px 14px;font-size:10px}
.page-home .home-whatsapp{margin-top:9px;font-size:9px;line-height:1.25}
.page-home .home-whatsapp strong{font-size:13px}

@media (min-width:1100px){
  .page-home .container{width:min(calc(100% - 42px),1180px)}
}
@media (min-width:821px) and (max-width:1050px){
  .page-home .home-benefit strong{font-size:8.7px}
  .page-home .home-benefit span{font-size:7px}
  .page-home .home-plan{min-height:196px;padding:11px 10px 42px}
  .page-home .home-plan h3{font-size:13px}
  .page-home .home-plan>p{font-size:8.6px}
  .page-home .home-plan li{font-size:8.1px}
  .page-home .home-plan .home-outline-btn,.page-home .home-plan .home-gold-btn{height:26px;min-height:26px;font-size:7.5px}
  .page-home .home-final-cta{min-height:194px;grid-template-columns:44% 56%}
  .page-home .home-cta-media{min-height:194px}
  .page-home .home-cta-dog{left:10px;width:88%}
  .page-home .home-final-copy{padding:14px 14px 11px 4px}
  .page-home .home-final-copy h2{font-size:16.8px}
  .page-home .home-final-copy p{font-size:8.3px}
  .page-home .home-whatsapp{font-size:7.5px}
  .page-home .home-whatsapp strong{font-size:10.8px}
}


/* ===== HOME V8 — manter hero e ampliar apenas o cão com coroa no bloco inferior ===== */
.page-home .home-final-cta{
  min-height:214px;
  height:auto;
  grid-template-columns:44% 56%;
  overflow:hidden;
}
.page-home .home-cta-media{
  min-height:214px;
  position:relative;
  overflow:visible;
  background:radial-gradient(circle at 44% 42%,rgba(13,74,64,.22),transparent 60%),linear-gradient(180deg,#0a342f,#062823);
}
.page-home .home-cta-dog{
  width:97%;
  max-width:none;
  left:-4px;
  bottom:0;
  z-index:2;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.26));
}
.page-home .home-final-copy{
  padding:17px 16px 14px 6px;
}
.page-home .home-final-copy h2{font-size:18px;line-height:1.04;margin-bottom:9px}
.page-home .home-final-copy p{font-size:10px;line-height:1.36;margin-bottom:10px;max-width:290px}
.page-home .home-whatsapp{margin-top:8px}
@media (min-width:821px) and (max-width:1050px){
  .page-home .home-final-cta{min-height:204px;grid-template-columns:44% 56%}
  .page-home .home-cta-media{min-height:204px}
  .page-home .home-cta-dog{width:99%;left:-7px}
}


/* V10: mostrar imagem do topo inteira sem corte */
.page-home .home-hero{overflow:hidden}

/* ===== V21 MASTER SHELL — HEADER/FOOTER GLOBAL ===== */
.master-shell .site-header{
  height:56px;
  position:fixed;top:0;left:0;width:100%;z-index:50;
  background:linear-gradient(180deg,rgba(0,12,11,.86),rgba(0,20,17,.42));
  border-bottom:1px solid rgba(234,184,83,.12);
  box-shadow:none;
}
.master-shell .site-header.scrolled{background:rgba(0,22,19,.96);box-shadow:0 10px 28px rgba(0,0,0,.28);border-bottom-color:rgba(234,184,83,.22)}
.master-shell .header-inner{height:56px;gap:18px}
.master-shell .brand{min-width:220px;gap:10px}
.master-shell .brand img{width:40px;height:40px;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(223,165,56,.24))}
.master-shell .brand-copy strong{font-size:21px;letter-spacing:.04em}
.master-shell .brand-copy span{font-size:8px;letter-spacing:.23em;margin-top:3px}
.master-shell .nav{gap:22px}
.master-shell .nav a{font-size:12px;font-weight:650;line-height:1;white-space:nowrap;letter-spacing:.01em}
.master-shell .nav a::after{bottom:-9px;height:1.5px}
.master-shell .header-actions{gap:10px}
.master-shell .account{width:34px;height:34px}
.master-shell .account .icon{width:16px;height:16px}
.master-shell .header-actions>.btn{min-width:140px;min-height:36px;padding:9px 15px;font-size:10px;border-radius:5px}

.master-shell .master-footer{padding:12px 0 8px;background:linear-gradient(180deg,#04201d,#021512);border-top:1px solid var(--line)}
.master-shell .master-footer .home-footer-grid{display:grid;grid-template-columns:1.3fr .82fr .82fr .82fr 1.25fr;gap:27px}
.master-shell .master-footer .footer-brand img{width:34px;height:34px}
.master-shell .master-footer .footer-brand strong{font-size:17px}
.master-shell .master-footer .footer-brand span{font-size:7px}
.master-shell .master-footer .footer-copy{font-size:9px;line-height:1.45;max-width:210px}
.master-shell .master-footer .footer-col h4{font-size:9px}
.master-shell .master-footer .footer-col a,.master-shell .master-footer .footer-col p{font-size:8.7px}
.master-shell .master-footer .socials a{width:23px;height:23px}
.master-shell .master-footer .home-newsletter .footer-news input{height:29px;font-size:9px}
.master-shell .master-footer .home-newsletter .footer-news .btn{height:29px;min-height:29px;font-size:8px}
.master-shell .master-footer .home-footer-bottom{margin-top:9px;padding-top:7px;border-top:1px solid rgba(255,255,255,.06);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:#adb8b2;font-size:8px}
.master-shell .master-footer .home-footer-bottom .home-copyright{grid-column:1;text-align:left}
.master-shell .master-footer .home-footer-bottom .home-paw-footer{grid-column:2;color:#dba648}
.master-shell .master-footer .home-footer-bottom span:last-child{grid-column:3;text-align:right}
.master-shell .master-footer .home-footer-bottom b{color:#d85050}
.master-shell .official-contact-link{color:inherit;text-decoration:none}
.master-shell .official-contact-link:hover{color:#b47b23}
.master-shell a.home-whatsapp{text-decoration:none}

@media (min-width:821px) and (max-width:1050px){
  .master-shell .site-header,.master-shell .header-inner{height:50px}
  .master-shell .brand{min-width:188px;gap:8px}
  .master-shell .brand img{width:36px;height:36px}
  .master-shell .brand-copy strong{font-size:19px}
  .master-shell .brand-copy span{font-size:7.4px}
  .master-shell .nav{gap:15px}
  .master-shell .nav a{font-size:10.5px;line-height:1;white-space:nowrap}
  .master-shell .account{width:32px;height:32px}
  .master-shell .header-actions{gap:8px}
  .master-shell .header-actions>.btn{min-width:124px;min-height:32px;padding:7px 11px;font-size:9px}
  .master-shell .master-footer{height:117px;padding:7px 0 5px;overflow:hidden}
  .master-shell .master-footer .home-footer-grid{height:82px;gap:20px}
  .master-shell .master-footer .footer-brand img{width:30px;height:30px}
  .master-shell .master-footer .footer-brand strong{font-size:15px}
  .master-shell .master-footer .footer-brand span{font-size:6.5px}
  .master-shell .master-footer .footer-copy{font-size:7.5px;line-height:1.3;margin:5px 0}
  .master-shell .master-footer .socials{margin-top:4px}
  .master-shell .master-footer .socials a{width:19px;height:19px;font-size:7px}
  .master-shell .master-footer .footer-col{gap:3px}
  .master-shell .master-footer .footer-col h4{font-size:7.8px;margin-bottom:3px}
  .master-shell .master-footer .footer-col a,.master-shell .master-footer .footer-col p{font-size:7.2px;line-height:1.15}
  .master-shell .master-footer .home-newsletter .footer-news input{height:24px;font-size:7.2px}
  .master-shell .master-footer .home-newsletter .footer-news .btn{height:24px;min-height:24px;font-size:7px;padding:4px 8px}
  .master-shell .master-footer .home-footer-bottom{height:18px;margin-top:3px;padding-top:3px;font-size:7px}
}

@media(max-width:820px){
  .master-shell .site-header,.master-shell .header-inner{height:64px}
  .master-shell .nav{top:64px}
  .master-shell .master-footer{height:auto;overflow:visible;padding:18px 0 10px}
  .master-shell .master-footer .home-footer-grid{height:auto;grid-template-columns:1fr 1fr;gap:22px}
  .master-shell .master-footer .home-newsletter{grid-column:1/-1}
  .master-shell .master-footer .home-footer-bottom{font-size:8px;gap:10px}
}
@media(max-width:560px){
  .master-shell .brand{min-width:auto;flex:1}
  .master-shell .brand img{width:40px;height:40px}
  .master-shell .brand-copy strong{font-size:20px}
  .master-shell .header-actions>.btn{display:none}
  .master-shell .master-footer .home-footer-grid{grid-template-columns:1fr}
  .master-shell .master-footer .home-newsletter{grid-column:auto}
  .master-shell .master-footer .home-footer-bottom{grid-template-columns:1fr;gap:7px;text-align:center}
  .master-shell .master-footer .home-footer-bottom .home-copyright,
  .master-shell .master-footer .home-footer-bottom .home-paw-footer,
  .master-shell .master-footer .home-footer-bottom span:last-child{grid-column:1;text-align:center}
}


/* ===== V32 — SOBRE NÓS: bloco NOSSA HISTÓRIA com fotografia oficial ===== */
.page-about .about-history{
  display:grid;
  grid-template-columns:34% 66%;
  min-height:405px;
  align-items:stretch;
  overflow:hidden;
}
.page-about .history-copy{
  min-width:0;
  min-height:405px;
  padding:42px 38px 40px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:var(--cream);
}
.page-about .history-copy h2{
  margin-top:8px;
  margin-bottom:15px;
}
.page-about .history-copy p{
  max-width:100%;
}
.page-about .about-history-media{
  position:relative;
  min-width:0;
  min-height:405px;
  height:100%;
  padding:0;
  margin:0;
  border:0;
  background:#071d1a;
  overflow:hidden;
}
.page-about .about-history-media::before,
.page-about .about-history-media::after{
  display:none!important;
  content:none!important;
}
.page-about .about-history-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:center center;
  display:block;
}

@media(max-width:900px){
  .page-about .about-history{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .page-about .history-copy{
    min-height:auto;
    padding:34px 28px;
  }
  .page-about .about-history-media{
    min-height:310px;
    height:310px;
  }
}
@media(max-width:600px){
  .page-about .history-copy{
    padding:30px 20px;
  }
  .page-about .about-history-media{
    min-height:235px;
    height:235px;
  }
}

/* ===== V33 — SOBRE NÓS: NOSSA EQUIPE com fotografias oficiais ===== */
.page-about #equipe.section.light{
  background:#f5efe4;
}
.page-about #equipe .team-layout{
  grid-template-columns:31% 69%;
  gap:18px;
  align-items:stretch;
}
.page-about #equipe .team-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  align-items:stretch;
}
.page-about #equipe .team-card{
  position:relative;
  min-width:0;
  height:260px;
  margin:0;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(156,111,31,.72);
  border-radius:6px;
  background:#082a25;
  box-shadow:0 6px 16px rgba(10,21,18,.13);
}
.page-about #equipe .team-card .team-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  padding:0;
  margin:0;
  border:0;
  background:#082a25;
  overflow:hidden;
}
.page-about #equipe .team-card .team-photo::before,
.page-about #equipe .team-card .team-photo::after{
  display:none!important;
  content:none!important;
}
.page-about #equipe .team-card .team-photo img{
  width:100%;
  height:100%;
  max-width:none;
  display:block;
  object-fit:cover;
  object-position:center 28%;
  transform:scale(1.015);
}
.page-about #equipe .team-card::after{
  content:"";
  position:absolute;
  z-index:1;
  left:0;right:0;bottom:0;
  height:42%;
  pointer-events:none;
  background:linear-gradient(to top,rgba(0,19,17,.94) 0%,rgba(0,19,17,.68) 42%,rgba(0,19,17,0) 100%);
}
.page-about #equipe .team-card .card-body{
  position:absolute;
  z-index:2;
  left:0;right:0;bottom:0;
  padding:10px 11px 11px;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.page-about #equipe .team-card h3{
  margin:0 0 3px;
  color:#fff!important;
  font-family:var(--serif);
  font-size:16px;
  font-weight:500;
  line-height:1.08;
  text-shadow:0 1px 2px rgba(0,0,0,.45);
}
.page-about #equipe .team-card p{
  margin:0;
  color:#f8f4ea!important;
  font-size:8.7px;
  line-height:1.28;
  text-shadow:0 1px 2px rgba(0,0,0,.45);
}

@media(max-width:1100px) and (min-width:901px){
  .page-about #equipe .team-card{height:235px}
  .page-about #equipe .team-card h3{font-size:14px}
  .page-about #equipe .team-card p{font-size:7.8px}
}
@media(max-width:900px){
  .page-about #equipe .team-layout{grid-template-columns:1fr;gap:20px}
  .page-about #equipe .team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .page-about #equipe .team-card{height:320px}
}
@media(max-width:600px){
  .page-about #equipe .team-grid{grid-template-columns:1fr 1fr;gap:9px}
  .page-about #equipe .team-card{height:245px}
  .page-about #equipe .team-card .card-body{padding:9px}
  .page-about #equipe .team-card h3{font-size:14px}
  .page-about #equipe .team-card p{font-size:8px}
}
@media(max-width:420px){
  .page-about #equipe .team-grid{grid-template-columns:1fr}
  .page-about #equipe .team-card{height:390px}
}

/* ===== V34 — SOBRE NÓS: imagens finais da infraestrutura e CTA ===== */
/* Intervenção localizada: preserva hero, história, valores, equipe, header e footer. */
.page-about .infra-layout{
  display:grid;
  grid-template-columns:36% 64%;
  min-height:225px;
  align-items:stretch;
  overflow:hidden;
  background:#052a25;
}
.page-about .infra-visual{
  position:relative;
  min-width:0;
  min-height:225px;
  height:100%;
  padding:0;
  margin:0;
  border:0;
  background:#082823;
  overflow:hidden;
}
.page-about .infra-visual::before,
.page-about .infra-visual::after,
.page-about .about-cta-media::before,
.page-about .about-cta-media::after{
  display:none!important;
  content:none!important;
}
.page-about .infra-visual img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  display:block;
  object-fit:cover;
  object-position:center 53%;
}
.page-about .infra-copy{
  min-width:0;
  min-height:225px;
  padding:16px 20px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.page-about .infra-head{
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:20px;
  align-items:start;
}
.page-about .infra-head h2{
  max-width:315px;
  font-size:29px;
  line-height:1.02;
  margin:5px 0 0;
}
.page-about .infra-head>p{
  max-width:440px;
  margin:7px 0 0;
}
.page-about .infra-grid{
  width:100%;
  margin-top:13px;
}

.page-about .about-cta{
  display:grid;
  grid-template-columns:48% 52%;
  min-height:198px;
  align-items:stretch;
  overflow:hidden;
  background:#062622;
}
.page-about .about-cta-media{
  position:relative;
  min-width:0;
  min-height:198px;
  height:100%;
  padding:0;
  margin:0;
  border:0;
  background:#062622;
  overflow:hidden;
}
.page-about .about-cta-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  display:block;
  object-fit:cover;
  object-position:center 52%;
}
.page-about .about-cta .cta-copy{
  min-width:0;
  min-height:198px;
  padding:24px 38px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
}
.page-about .about-cta .cta-copy h2{
  max-width:520px;
  margin:0 0 10px;
  color:#f7f4ed;
  font-size:clamp(27px,2.45vw,34px);
  line-height:1.03;
}
.page-about .about-cta .cta-copy p{
  max-width:470px;
  margin:0 0 13px;
  color:#e0e4df;
  line-height:1.45;
}
.page-about .about-cta .cta-copy .btn{
  width:auto;
  min-width:205px;
  align-self:flex-start;
  padding-inline:24px;
}

@media(max-width:1180px) and (min-width:901px){
  .page-about .infra-layout{grid-template-columns:38% 62%;min-height:218px}
  .page-about .infra-visual,.page-about .infra-copy{min-height:218px}
  .page-about .infra-copy{padding:15px 18px}
  .page-about .infra-head{gap:14px}
  .page-about .infra-head h2{font-size:26px;max-width:285px}
  .page-about .infra-item{padding-inline:7px}
  .page-about .about-cta{grid-template-columns:47% 53%;min-height:190px}
  .page-about .about-cta-media,.page-about .about-cta .cta-copy{min-height:190px}
  .page-about .about-cta .cta-copy{padding:22px 30px}
}
@media(max-width:900px){
  .page-about .infra-layout{grid-template-columns:1fr;min-height:auto}
  .page-about .infra-visual{height:310px;min-height:310px}
  .page-about .infra-copy{min-height:auto;padding:28px 26px}
  .page-about .infra-head{grid-template-columns:1fr;gap:10px}
  .page-about .infra-head h2{max-width:100%;font-size:34px}
  .page-about .infra-head>p{max-width:650px;margin-top:0}
  .page-about .about-cta{grid-template-columns:1fr;min-height:auto}
  .page-about .about-cta-media{height:250px;min-height:250px}
  .page-about .about-cta .cta-copy{min-height:auto;padding:28px 28px 30px}
  .page-about .about-cta .cta-copy h2{font-size:32px}
}
@media(max-width:600px){
  .page-about .infra-visual{height:230px;min-height:230px}
  .page-about .infra-visual img{object-position:center 50%}
  .page-about .infra-copy{padding:24px 18px}
  .page-about .infra-head h2{font-size:30px}
  .page-about .about-cta-media{height:205px;min-height:205px}
  .page-about .about-cta-media img{object-position:58% center}
  .page-about .about-cta .cta-copy{padding:24px 20px 26px}
  .page-about .about-cta .cta-copy h2{font-size:29px}
  .page-about .about-cta .cta-copy .btn{min-width:180px}
}

/* ===== V35 — SOBRE NÓS: refinamento pixel-perfect faixa estatística + CTA ===== */
/* Intervenção exclusivamente na faixa "Por que escolher" e CTA final. Footer/header preservados. */
.page-about .stats-strip{
  background:#f2ece2;
  color:#2b241b;
  padding:0;
  min-height:154px;
  display:flex;
  align-items:stretch;
  border:0;
}
.page-about .stats-strip .container{
  width:min(calc(100% - 80px),1080px);
  margin-inline:auto;
  padding:0;
}
.page-about .stats-grid{
  display:grid;
  grid-template-columns:1.55fr 1.01fr .94fr 1.29fr;
  min-height:154px;
  align-items:stretch;
}
.page-about .stats-grid .stat{
  position:relative;
  min-width:0;
  padding:20px 26px 17px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-right:1px solid rgba(151,111,54,.38);
}
.page-about .stats-grid .stat:last-child{border-right:0}
.page-about .stats-grid .stat .icon{
  width:27px;
  height:27px;
  flex:0 0 27px;
  color:#bf8630;
  margin:0 0 7px;
  stroke-width:1.55;
}
.page-about .stats-grid .stat strong{
  display:block;
  margin:0 0 6px;
  font:500 34px/.95 var(--serif);
  color:#b77c24;
  white-space:nowrap;
  letter-spacing:-.015em;
}
.page-about .stats-grid .stat span{
  display:block;
  color:#4c4339;
  font-size:10.4px;
  line-height:1.38;
  font-weight:500;
}
.page-about .stats-grid .stat-intro{
  justify-content:flex-start;
  padding-top:22px;
}
.page-about .stats-grid .stat-intro h3{
  width:100%;
  max-width:214px;
  margin:0 auto 13px;
  color:#24221f;
  font-family:var(--sans);
  font-size:11.5px;
  line-height:1.15;
  font-weight:800;
  letter-spacing:.01em;
  text-align:left;
  white-space:nowrap;
}
.page-about .stats-grid .stat-intro .icon{
  width:29px;
  height:29px;
  flex-basis:29px;
  margin-bottom:8px;
}
.page-about .stats-grid .stat-intro span{
  font-size:10.4px;
  line-height:1.34;
}

.page-about .about-cta{
  display:grid;
  grid-template-columns:47% 53%;
  min-height:210px;
  align-items:stretch;
  overflow:hidden;
  background:#062622;
  border-top:1px solid rgba(190,137,47,.46);
  border-bottom:1px solid rgba(190,137,47,.42);
}
.page-about .about-cta-media{
  position:relative;
  min-width:0;
  min-height:210px;
  height:210px;
  padding:0;
  margin:0;
  border:0;
  background:#061f1c;
  overflow:hidden;
}
.page-about .about-cta-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  display:block;
  object-fit:cover;
  object-position:center 15%;
  transform:none;
}
.page-about .about-cta .cta-copy{
  position:relative;
  min-width:0;
  min-height:210px;
  padding:22px 38px 22px 18px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
}
.page-about .about-cta .cta-copy h2{
  max-width:530px;
  margin:0 0 13px;
  color:#f5f1e7;
  font:500 32px/1.04 var(--serif);
  letter-spacing:-.01em;
}
.page-about .about-cta .cta-copy h2 .gold{color:#d9a341}
.page-about .about-cta .cta-copy p{
  max-width:315px;
  margin:0 0 15px;
  color:#e7e8e2;
  font-size:10.7px;
  line-height:1.5;
}
.page-about .about-cta .cta-copy .btn{
  width:auto;
  min-width:205px;
  height:41px;
  padding:0 24px;
  align-self:flex-start;
  font-size:10px;
  border-radius:4px;
}
@media(max-width:1180px) and (min-width:901px){
  .page-about .stats-strip .container{width:min(calc(100% - 34px),1180px)}
  .page-about .stats-grid{grid-template-columns:1.42fr 1fr 1fr 1fr;min-height:148px}
  .page-about .stats-strip{min-height:148px}
  .page-about .stats-grid .stat{padding:18px 18px 15px}
  .page-about .stats-grid .stat-intro{padding-top:20px}
  .page-about .stats-grid .stat-intro h3{font-size:10.8px;max-width:230px;margin-bottom:11px}
  .page-about .stats-grid .stat strong{font-size:31px}
  .page-about .about-cta{grid-template-columns:47% 53%;min-height:204px}
  .page-about .about-cta-media{height:204px;min-height:204px}
  .page-about .about-cta .cta-copy{min-height:204px;padding:21px 30px 21px 18px}
  .page-about .about-cta .cta-copy h2{font-size:30px}
}
@media(max-width:900px){
  .page-about .stats-strip{min-height:auto}
  .page-about .stats-strip .container{width:min(calc(100% - 28px),760px)}
  .page-about .stats-grid{grid-template-columns:1fr 1fr;min-height:auto}
  .page-about .stats-grid .stat{min-height:142px;padding:19px 16px;border-right:1px solid rgba(151,111,54,.32);border-bottom:1px solid rgba(151,111,54,.24)}
  .page-about .stats-grid .stat:nth-child(2){border-right:0}
  .page-about .stats-grid .stat:nth-child(3),
  .page-about .stats-grid .stat:nth-child(4){border-bottom:0}
  .page-about .stats-grid .stat:nth-child(4){border-right:0}
  .page-about .stats-grid .stat-intro{justify-content:center;padding-top:19px}
  .page-about .stats-grid .stat-intro h3{text-align:center;margin-bottom:10px}
  .page-about .about-cta{grid-template-columns:1fr;min-height:auto}
  .page-about .about-cta-media{height:300px;min-height:300px}
  .page-about .about-cta-media img{object-position:center 45%}
  .page-about .about-cta .cta-copy{min-height:auto;padding:30px 30px 34px}
  .page-about .about-cta .cta-copy h2{font-size:32px}
}
@media(max-width:600px){
  .page-about .stats-strip .container{width:100%}
  .page-about .stats-grid .stat{min-height:132px;padding:16px 12px}
  .page-about .stats-grid .stat-intro h3{font-size:10.5px;max-width:190px;white-space:normal;text-align:center}
  .page-about .stats-grid .stat strong{font-size:28px}
  .page-about .stats-grid .stat span{font-size:9.3px}
  .page-about .stats-grid .stat .icon{width:25px;height:25px;flex-basis:25px}
  .page-about .about-cta-media{height:235px;min-height:235px}
  .page-about .about-cta-media img{object-position:58% 45%}
  .page-about .about-cta .cta-copy{padding:25px 20px 30px}
  .page-about .about-cta .cta-copy h2{font-size:29px;line-height:1.06}
  .page-about .about-cta .cta-copy p{font-size:10px}
  .page-about .about-cta .cta-copy .btn{min-width:180px;height:39px}
}


/* ===== HOME V39 — SUÍTES COM FOTOGRAFIAS (ALTERAÇÃO CIRÚRGICA) =====
   Escopo exclusivo: secção SUÍTES EXCLUSIVAS da homepage.
   Mantém textos, preços, botões, badge, bordas, dimensões e JavaScript existentes. */
.page-home .home-suites-v3 .home-suite-card{
  isolation:isolate;
}
.page-home .home-suites-v3 .home-suite-photo{
  position:absolute;
  inset:0;
  z-index:0;
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  border-radius:6px;
  pointer-events:none;
  user-select:none;
}
.page-home .home-suites-v3 .home-suite-photo-classic{object-position:50% 50%}
.page-home .home-suites-v3 .home-suite-photo-deluxe{object-position:50% 50%}
.page-home .home-suites-v3 .home-suite-photo-royal{object-position:50% 50%}
.page-home .home-suites-v3 .home-suite-photo-presidencial{object-position:50% 50%}

/* Gradiente contínuo: fotografia permanece visível atrás de título, descrição e preço. */
.page-home .home-suites-v3 .home-suite-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:6px;
  background:linear-gradient(
    to bottom,
    rgba(0,18,16,.02) 20%,
    rgba(0,18,16,.10) 36%,
    rgba(0,18,16,.44) 54%,
    rgba(0,16,14,.80) 72%,
    rgba(0,13,12,.95) 100%
  );
  pointer-events:none;
}

/* Neutraliza somente o fundo interno dos textos / slot visual das suítes. */
.page-home .home-suites-v3 .home-suite-media,
.page-home .home-suites-v3 .home-suite-body{
  position:relative;
  z-index:2;
  background:transparent;
}
.page-home .home-suites-v3 .home-suite-media{
  border-bottom-color:transparent;
}
.page-home .home-suites-v3 .home-suite-body h3,
.page-home .home-suites-v3 .home-suite-info p,
.page-home .home-suites-v3 .home-suite-info small,
.page-home .home-suites-v3 .home-suite-info strong{
  text-shadow:0 1px 3px rgba(0,0,0,.62);
}

/* O destaque Royal continua acima da fotografia/gradiente. */
.page-home .home-suites-v3 .home-badge{z-index:4}


/* ==========================================================================\n   V40 — REFINAMENTO CIRÚRGICO DE BOTÕES E ALINHAMENTO\n   Mantém layout, textos e imagens. Apenas interação, acessibilidade e o\n   alinhamento estrutural dos 6 CTAs da página Experiências.\n   ========================================================================== */

/* 1) Experiências: todos os seis CTAs ocupam a mesma linha inferior. */
.page-experiences .cards-6 > .card{
  display:flex;
  flex-direction:column;
}
.page-experiences .cards-6 > .card > .card-body{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  min-height:0;
}
.page-experiences .cards-6 > .card > .card-body > p{
  margin-bottom:8px;
}
.page-experiences .cards-6 > .card > .card-body > .btn{
  margin-top:auto;
  align-self:flex-start;
}

/* 2) Base interativa: não altera dimensões no hover. */
button,
.btn,
.home-outline-btn,
.home-gold-btn,
.home-camera-btn,
.home-round-arrow,
.home-review-next,
.home-play,
.filter-btn,
.blog-tabs button,
.account,
.socials a,
.socials button,
.hamburger,
.modal-close,
[data-blog-open],
.hero-icon-menu .service-icon-card{
  cursor:pointer;
}

.btn,
.home-outline-btn,
.home-gold-btn,
.home-camera-btn,
.filter-btn,
.account,
.socials a,
.socials button,
.hamburger,
.modal-close{
  transition:transform .20s ease, background .25s ease, border-color .25s ease,
             box-shadow .25s ease, color .25s ease, filter .25s ease;
}

/* Brilho atravessando CTAs que não usam o pseudo-elemento original .btn::after. */
.home-outline-btn,
.home-gold-btn,
.home-camera-btn,
.filter-btn{
  position:relative;
  overflow:hidden;
}
.home-outline-btn::before,
.home-gold-btn::before,
.home-camera-btn::before,
.filter-btn::before{
  content:"";
  position:absolute;
  top:-20%;
  bottom:-20%;
  left:-75%;
  width:46%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);
  transform:skewX(-20deg);
  transition:left .55s ease;
  pointer-events:none;
}
.home-outline-btn:hover::before,
.home-gold-btn:hover::before,
.home-camera-btn:hover::before,
.filter-btn:hover::before{
  left:135%;
}

/* Dourado já existente: apenas acende e ganha profundidade. */
.btn-gold:hover,
.home-gold-btn:hover{
  background:
    linear-gradient(180deg,rgba(255,255,255,.34),transparent 34%),
    linear-gradient(135deg,#c78320 0%,#e7a92d 35%,#ffd36a 66%,#df8d1c 100%);
  border-color:#ffd36a;
  color:#17140d;
  filter:brightness(1.05) saturate(1.07);
  transform:translateY(-2px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.50),
    0 0 8px rgba(255,183,45,.55),
    0 0 18px rgba(255,166,31,.30),
    0 7px 18px rgba(0,0,0,.24);
}

/* Escuros/outline mantêm o estado normal e acendem somente no hover. */
.btn-dark:hover,
.btn-outline:hover,
.home-outline-btn:hover,
.home-camera-btn:hover,
.filter-btn:hover,
.filter-btn.active{
  background:linear-gradient(135deg,#b87818 0%,#e5a72b 42%,#ffd36a 68%,#e49520 100%);
  border-color:#ffd36a;
  color:#17140d;
  filter:none;
  transform:translateY(-2px);
  box-shadow:
    0 0 8px rgba(255,183,45,.48),
    0 0 16px rgba(255,166,31,.26),
    0 6px 16px rgba(0,0,0,.22);
}

/* Clique/pressed — feedback curto sem reflow. */
.btn:active,
.home-outline-btn:active,
.home-gold-btn:active,
.home-camera-btn:active,
.filter-btn:active{
  transform:translateY(1px) scale(.98);
  box-shadow:0 0 6px rgba(255,177,41,.35), inset 0 2px 5px rgba(0,0,0,.22);
}

/* Setas e controlos circulares. Preserva translates necessários ao layout. */
.page-home .home-round-arrow,
.page-home .home-review-next,
.page-home .home-play,
.account,
.socials a,
.socials button,
.hamburger,
.modal-close{
  transition:transform .18s ease, background .22s ease, border-color .22s ease,
             box-shadow .22s ease, color .22s ease;
}
.page-home .home-round-arrow:hover{
  background:linear-gradient(135deg,#e5a72b,#ffd36a,#e49520);
  border-color:#ffd36a;
  color:#17140d;
  transform:translateY(-50%) scale(1.06);
  box-shadow:0 0 12px rgba(255,183,45,.45);
}
.page-home .home-round-arrow:active{
  transform:translateY(-50%) scale(.94);
}
.page-home .home-review-next:hover,
.account:hover,
.socials a:hover,
.socials button:hover,
.hamburger:hover,
.modal-close:hover{
  background:linear-gradient(135deg,#d59222,#ffd36a,#e49520);
  border-color:#ffd36a;
  color:#17140d;
  transform:scale(1.06);
  box-shadow:0 0 11px rgba(255,183,45,.38);
}
.page-home .home-review-next:active,
.account:active,
.socials a:active,
.socials button:active,
.hamburger:active,
.modal-close:active{
  transform:scale(.94);
}
.page-home .home-play:hover{
  background:linear-gradient(135deg,#d59222,#ffd36a,#e49520);
  border-color:#ffd36a;
  color:#17140d;
  transform:translate(-50%,-50%) scale(1.08);
  box-shadow:0 0 14px rgba(255,183,45,.42);
}
.page-home .home-play:active{
  transform:translate(-50%,-50%) scale(.94);
}

/* Social placeholders became semantic buttons; this reset preserves the footer look. */
.socials button{
  padding:0;
  font:inherit;
  background:transparent;
  color:inherit;
  border:1px solid var(--line-soft);
  width:30px;
  height:30px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:11px;
}
.page-home .home-footer .socials button,
.master-shell .master-footer .socials button{
  width:23px;
  height:23px;
}

/* Navegação principal mantém seu estilo discreto e ganha foco por teclado. */
.nav a:focus-visible{
  color:var(--gold-2);
  outline:2px solid #ffd36a;
  outline-offset:6px;
  border-radius:2px;
}
.nav a:focus-visible::after{transform:scaleX(1)}

/* Foco acessível para todos os controlos interativos. */
.btn:focus-visible,
.home-outline-btn:focus-visible,
.home-gold-btn:focus-visible,
.home-camera-btn:focus-visible,
.home-round-arrow:focus-visible,
.home-review-next:focus-visible,
.home-play:focus-visible,
.filter-btn:focus-visible,
.account:focus-visible,
.socials a:focus-visible,
.socials button:focus-visible,
.hamburger:focus-visible,
.modal-close:focus-visible,
[data-blog-open]:focus-visible,
.hero-icon-menu .service-icon-card:focus-visible,
.faq-q:focus-visible{
  outline:2px solid #ffd36a;
  outline-offset:3px;
}

/* Itens que já eram clicáveis pelo JS ficam claramente interativos sem mudar layout. */
[data-blog-open],
.hero-icon-menu .service-icon-card,
.faq-q{cursor:pointer}
[data-blog-open]:focus-visible{border-color:#ffd36a}
.interaction-pulse{
  animation:petRoyalPulse .55s ease;
}
@keyframes petRoyalPulse{
  0%{box-shadow:0 0 0 0 rgba(255,195,80,.46)}
  100%{box-shadow:0 0 0 12px rgba(255,195,80,0)}
}

/* Laptop/mobile: preservar tamanhos compactos já definidos no projeto. */
@media(max-width:820px){
  .page-experiences .cards-6 > .card > .card-body > .btn{align-self:stretch}
}
@media(max-width:1050px){
  .page-home .home-footer .socials button,
  .master-shell .master-footer .socials button{width:19px;height:19px;font-size:7px}
}

@media(prefers-reduced-motion:reduce){
  .btn,.home-outline-btn,.home-gold-btn,.home-camera-btn,.home-round-arrow,
  .home-review-next,.home-play,.filter-btn,.account,.socials a,.socials button,
  .hamburger,.modal-close{transition:none!important}
  .btn::after,.home-outline-btn::before,.home-gold-btn::before,.home-camera-btn::before,
  .filter-btn::before{display:none}
  .interaction-pulse{animation:none}
}

/* Semantic account button reset after replacing the old href="#" placeholder. */
.account{background:transparent;padding:0;font:inherit}

/* ========================================================================== */
/* V42 — WHITE STRUCTURAL THEME (cirurgical theme migration)                  */
/* Only structural surfaces + directly affected text. Components stay dark.   */
/* ========================================================================== */
:root{
  --white-page:#ffffff;
  --white-page-soft:#fcfbf8;
  --white-text:#171717;
  --white-muted:#4f4f4f;
  --white-muted-2:#666666;
  --white-gold:#b77a12;
  --white-line:rgba(166,111,18,.20);
}

/* Global structural canvas — do not change component tokens. */
body{background:var(--white-page)}
main{background:var(--white-page)}

/* Global header: white surface, dark navigation, gold interaction. */
.site-header,
.page-home .site-header{
  background:rgba(255,255,255,.97);
  border-bottom-color:var(--white-line);
  box-shadow:0 4px 20px rgba(0,0,0,.045);
}
.site-header .nav a{color:#1b1b1b}
.site-header .nav a:hover,
.site-header .nav a.active{color:var(--gold-3)}
.site-header .hamburger{color:#1b1b1b;border-color:rgba(166,111,18,.28)}
.site-header .account{color:var(--gold-3)}

/* Generic page surfaces. Hero / image compositions are intentionally excluded. */
.section,
.section.alt{background:var(--white-page);color:var(--white-text)}
.booking-wrap{background:var(--white-page)}
.section > .container > .section-title:not(.gold-title){color:var(--white-text)}
.section > .container > .section-sub{color:var(--white-muted)}
.section > .container > .eyebrow{color:var(--white-gold)}
.section > .container > .checks{color:var(--white-text)}

/* Preserve dark/premium components after their structural parent becomes white. */
.card,
.booking-panel,
.icon-strip,
.hero-icon-menu,
.split-showcase,
.process,
.dashboard,
.dash-card,
.summary-item,
.timeline-card,
.camera-card,
.update-card,
.testimonial,
.cta-panel,
.newsletter-banner,
.detail-copy,
.amenity-strip,
.compare-wrap{
  color:var(--text);
}
.card h3,
.timeline-card h4,
.camera-card strong,
.update-card strong,
.testimonial strong,
.dashboard,
.dash-card,
.summary-item,
.detail-copy,
.amenity-strip,
.compare-wrap{color:var(--text)}
.split-showcase .copy h2,
.split-showcase .copy,
.split-showcase .checks{color:var(--text)}
.split-showcase .copy p{color:var(--muted)}
.process{background:#052824}
.newsletter-banner{background:#062622}
.compare-wrap{background:#062622}
.detail-copy{background:#062622}
.amenity-strip{background:#052824}

/* Filtering/search controls are components; restore their original dark context. */
.filters{background:#052824}
.blog-controls{background:#052824;color:var(--text)}

/* Contact page structural text on white. */
.visit-copy p{color:var(--white-muted)}
.visit-copy .checks{color:var(--white-text)}
.faq-a{color:var(--white-muted)}

/* Blog: outer canvas white; cards/newsletter stay dark. */
.blog-controls .blog-tabs button{color:#fff}
.blog-controls .search-box input{color:#fff}
.blog-card.card{color:var(--text)}
.blog-card.card h3{color:var(--text)}

/* Home: only structural bands become white. Existing cards/panels remain dark. */
.page-home{background:var(--white-page)}
.page-home .home-benefits{
  background:var(--white-page);
  border-top-color:var(--white-line);
  border-bottom-color:var(--white-line);
}
.page-home .home-benefit{color:var(--white-text);border-right-color:var(--white-line)}
.page-home .home-benefit strong{color:var(--white-text)}
.page-home .home-benefit span{color:var(--white-muted)}
.page-home .home-section{background:var(--white-page);color:var(--white-text)}
.page-home .home-kicker{color:var(--white-muted)}
.page-home .home-section > .container > p:not([class]){color:var(--white-muted)}

/* Home dark components explicitly preserved. */
.page-home .home-suite-card,
.page-home .home-experience-grid article,
.page-home .home-service-card,
.page-home .home-track-side,
.page-home .home-track-main,
.page-home .home-time-card,
.page-home .home-test-title,
.page-home .home-review,
.page-home .home-plan,
.page-home .home-final-cta{
  color:#fff;
}
.page-home .home-track-side p,
.page-home .home-pet span,
.page-home .home-time-copy p,
.page-home .home-review p,
.page-home .home-review span,
.page-home .home-plan>p,
.page-home .home-plan li,
.page-home .home-final-copy p{color:inherit}
.page-home .home-track-side p{color:#cbd4cf}
.page-home .home-pet span{color:#cbd4ce}
.page-home .home-time-copy p{color:#c8d2cc}
.page-home .home-review p{color:#e1e4df}
.page-home .home-review span{color:#cbd3ce}
.page-home .home-plan>p{color:#c9d1cd}
.page-home .home-plan li{color:#d7ded9}
.page-home .home-final-copy p{color:#e0e4df}

/* About: values are structural content; photo/premium panels stay untouched. */
.page-about{background:var(--white-page)}
.page-about .values-band{background:var(--white-page);color:var(--white-text);border-top:1px solid var(--white-line);border-bottom:1px solid var(--white-line)}
.page-about .values-band .eyebrow{color:var(--white-gold)}
.page-about .value h3{color:var(--white-text)}
.page-about .value p{color:var(--white-muted)}
.page-about .value{border-right-color:var(--white-line)}
.page-about .infra-layout,
.page-about .about-cta{color:var(--text)}

/* Global footer: white structure, gold headings, dark readable content. */
.site-footer,
.home-footer,
.master-footer{
  background:var(--white-page-soft);
  border-top-color:var(--white-line);
  color:var(--white-text);
}
.site-footer .footer-copy{color:#555}
.site-footer .footer-col a,
.site-footer .footer-col p{color:#343434}
.site-footer .footer-col a:hover{color:var(--gold-3)}
.site-footer .footer-col h4{color:var(--white-gold)}
.site-footer .footer-news input{color:#333;border-color:rgba(166,111,18,.32)}
.site-footer .footer-news input::placeholder{color:#777}
.site-footer .socials a{color:#333;border-color:rgba(166,111,18,.22)}
.site-footer .footer-bottom,
.page-home .home-footer-bottom{color:#686868;border-top-color:var(--white-line)}

/* Responsive header/menu white theme. */
@media(max-width:900px){
  .site-header,
  .page-home .site-header{background:rgba(255,255,255,.985)}
  .site-header .nav{background:rgba(255,255,255,.99);border-bottom:1px solid var(--white-line)}
  .site-header .nav a{color:#1b1b1b}
}

/* V42 contrast refinements for gold-on-white and preserved composite panels. */
.site-header .brand-copy strong{color:#9b650f}
.site-header .brand-copy span{color:#b77a12}
.site-footer .footer-brand strong{color:#9b650f}
.site-footer .footer-brand span{color:#b77a12}
.split-showcase{background:#052824}
.page-home .home-section > .container > h2,
.page-home .home-price-left > h2{color:var(--white-gold)}
.page-contact .section > .container > .gold-title,
.page-contact .visit-copy h2{color:var(--white-gold)}

/* V42 master-shell specificity locks (V21 shell must also become white). */
.master-shell .site-header,
.master-shell .site-header.scrolled{
  background:rgba(255,255,255,.975);
  border-bottom-color:var(--white-line);
  box-shadow:0 4px 20px rgba(0,0,0,.055);
}
.master-shell .master-footer{
  background:var(--white-page-soft);
  border-top-color:var(--white-line);
  color:var(--white-text);
}
.master-shell .master-footer .home-footer-bottom{
  color:#686868;
  border-top-color:var(--white-line);
}
@media(max-width:900px){
  .master-shell .site-header,
  .master-shell .site-header.scrolled{background:rgba(255,255,255,.99)}
  .master-shell .nav{background:rgba(255,255,255,.995)}
}
.site-footer .socials button,
.master-shell .master-footer .socials button{color:#333;border-color:rgba(166,111,18,.22);background:transparent}
