/* Pousada Terra · Kitchen & Breakfast · editorial redesign v0.3.49
   Scoped to this page, independent of theme/Elementor button defaults. */
.terra-internal-main.terra-breakfast-v2{
  --bf-ink:#3e2622;--bf-green:#2c4a3e;--bf-green-light:#3d6b52;
  --bf-paper:#f7f5ef;--bf-cream:#eee8dc;--bf-gold:#dcb82f;
  --bf-line:rgba(62,38,34,.16);
  background:var(--bf-paper);color:var(--bf-ink);
  padding:clamp(14px,2vw,30px) clamp(14px,3.1vw,50px) clamp(42px,6vw,80px);
  min-width:0;overflow:clip;
}
.terra-breakfast-v2 *{box-sizing:border-box}
.terra-breakfast-v2 .terra-breakfast-wrap{width:min(100%,1220px);margin:0 auto}
.terra-breakfast-v2 figure,.terra-breakfast-v2 p,.terra-breakfast-v2 h1,.terra-breakfast-v2 h2,.terra-breakfast-v2 h3{margin:0}
.terra-breakfast-v2 h1,.terra-breakfast-v2 h2,.terra-breakfast-v2 h3{
  font-family:"Fraunces","Cormorant Garamond",Georgia,serif;
  color:var(--bf-ink);font-weight:500;letter-spacing:-.03em;text-wrap:balance;
}
.terra-breakfast-v2 h1{font-size:clamp(43px,5.1vw,75px);line-height:1.07}
.terra-breakfast-v2 h2{font-size:clamp(30px,3.45vw,48px);line-height:1.13}
.terra-breakfast-v2 h3{font-size:clamp(29px,2.7vw,39px);line-height:1.15}
.terra-breakfast-v2 p{font-size:clamp(14px,1.15vw,16.5px);line-height:1.67;color:#5b4a42}
.terra-breakfast-v2 .terra-bf-kicker{
  color:var(--bf-green-light);font-family:inherit;font-weight:700;font-size:10.5px;
  letter-spacing:.19em;text-transform:uppercase;line-height:1.4;
}
/* No fixed-height image boxes: full source framing, even for portrait imagery. */
.terra-breakfast-v2 img{display:block;width:100%;max-width:100%;height:auto;object-fit:contain}
.terra-breakfast-v2 figure{min-width:0;overflow:hidden}
.terra-breakfast-v2 .terra-bf-hero{
  display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  align-items:center;gap:clamp(20px,3.6vw,58px);margin:0 0 clamp(26px,4.1vw,52px);
}
.terra-breakfast-v2 .terra-bf-hero-copy{padding:clamp(4px,2vw,28px) 0;min-width:0}
.terra-breakfast-v2 .terra-bf-hero h1{max-width:12ch;margin:17px 0 14px}
.terra-breakfast-v2 .terra-bf-lead{max-width:54ch}
.terra-breakfast-v2 .terra-bf-included{
  display:flex;align-items:center;gap:10px;margin:14px 0 0;font-size:12.5px;
  font-weight:700;color:var(--bf-green)!important;
}
.terra-breakfast-v2 .terra-bf-included span{color:#b18b17;font-size:19px}
.terra-breakfast-v2 .terra-bf-hero-photo{
  background:#e9dfcc;border-radius:12px;overflow:hidden;
  box-shadow:0 12px 36px rgba(62,38,34,.08);
}
.terra-breakfast-v2 .terra-bf-hero-photo img{width:100%;height:auto;display:block}
/* Buttons must win every WordPress theme hover, focus and visited colour. */
.terra-internal-main.terra-breakfast-v2 a.terra-bf-cta,
.terra-internal-main.terra-breakfast-v2 a.terra-bf-cta:link,
.terra-internal-main.terra-breakfast-v2 a.terra-bf-cta:visited{
  display:inline-flex;align-items:center;justify-content:center;gap:14px;
  min-height:46px;width:max-content;max-width:100%;margin:22px 0 0;
  padding:12px 23px;border:1px solid var(--bf-green);border-radius:100px;
  background:var(--bf-green)!important;color:#fff!important;text-decoration:none!important;
  font-family:inherit;font-size:12.5px;font-weight:700;line-height:1.25;letter-spacing:.015em;text-align:center;
  box-shadow:none;transition:background .2s ease,color .2s ease,transform .2s ease;
}
.terra-internal-main.terra-breakfast-v2 a.terra-bf-cta:hover,
.terra-internal-main.terra-breakfast-v2 a.terra-bf-cta:focus,
.terra-internal-main.terra-breakfast-v2 a.terra-bf-cta:active,
.terra-internal-main.terra-breakfast-v2 a.terra-bf-cta:focus-visible{
  background:var(--bf-green-light)!important;color:#fff!important;
  border-color:var(--bf-green-light)!important;transform:translateY(-1px);
}
.terra-internal-main.terra-breakfast-v2 a.terra-bf-cta:focus-visible,
.terra-internal-main.terra-breakfast-v2 .terra-bf-tab:focus-visible{
  outline:3px solid var(--bf-gold)!important;outline-offset:4px;
}
.terra-breakfast-v2 .terra-bf-cta span{font-size:18px;line-height:1}
/* Compact renovation strip, rather than a long section with empty columns. */
.terra-breakfast-v2 .terra-bf-renovation{
  display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);
  align-items:center;column-gap:clamp(20px,4vw,60px);row-gap:16px;
  padding:clamp(25px,3vw,42px) 0;border-top:1px solid var(--bf-line);border-bottom:1px solid var(--bf-line);
  margin:0 0 clamp(32px,4.5vw,58px);
}
.terra-breakfast-v2 .terra-bf-renovation h2{margin-top:9px;font-size:clamp(27px,2.8vw,40px);max-width:24ch}
.terra-breakfast-v2 .terra-bf-renovation>p{max-width:59ch}
.terra-breakfast-v2 .terra-bf-section-intro{margin-bottom:18px}
.terra-breakfast-v2 .terra-bf-section-intro h2{margin:8px 0 7px}
.terra-breakfast-v2 .terra-bf-section-intro>p:last-child{max-width:58ch}
.terra-breakfast-v2 .terra-bf-spaces{margin-bottom:clamp(32px,4.4vw,56px)}
.terra-breakfast-v2 .terra-bf-tablist{display:flex;align-items:stretch;gap:9px;flex-wrap:wrap;margin:19px 0 16px}
.terra-internal-main.terra-breakfast-v2 button.terra-bf-tab{
  appearance:none;-webkit-appearance:none;border:1px solid #c6d0c2!important;
  border-radius:100px;background:transparent!important;color:var(--bf-green)!important;
  padding:12px 18px;min-height:44px;font-family:inherit;font-weight:700;
  font-size:13px;line-height:1.3;cursor:pointer;box-shadow:none!important;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.terra-internal-main.terra-breakfast-v2 button.terra-bf-tab[aria-selected="true"],
.terra-internal-main.terra-breakfast-v2 button.terra-bf-tab.is-active,
.terra-internal-main.terra-breakfast-v2 button.terra-bf-tab[aria-selected="true"]:hover,
.terra-internal-main.terra-breakfast-v2 button.terra-bf-tab[aria-selected="true"]:focus{
  background:var(--bf-green)!important;border-color:var(--bf-green)!important;color:#fff!important;
}
.terra-internal-main.terra-breakfast-v2 button.terra-bf-tab[aria-selected="false"]:hover,
.terra-internal-main.terra-breakfast-v2 button.terra-bf-tab[aria-selected="false"]:focus{
  background:#e4e8de!important;border-color:#a0b4a0!important;color:var(--bf-green)!important;
}
.terra-breakfast-v2 .terra-bf-panel[hidden]{display:none!important}
.terra-breakfast-v2 .terra-bf-panel{
  display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  align-items:center;gap:clamp(18px,3.2vw,48px);
  padding:clamp(18px,2.7vw,36px);border:1px solid #e6e0d4;
  border-radius:14px;background:#f0eade;
}
.terra-breakfast-v2 .terra-bf-panel-copy{min-width:0}
.terra-breakfast-v2 .terra-bf-panel-copy h3{margin:11px 0 13px;max-width:18ch}
.terra-breakfast-v2 .terra-bf-panel-copy>p:not(.terra-bf-small-label){max-width:50ch}
.terra-breakfast-v2 .terra-bf-small-label{font-size:11px!important;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:var(--bf-green-light)!important}
.terra-breakfast-v2 .terra-bf-panel-note{display:block;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--bf-green-light);margin-top:18px}
.terra-breakfast-v2 .terra-bf-panel-photos{display:grid;grid-template-columns:1fr .65fr;gap:12px;align-items:center;min-width:0}
.terra-breakfast-v2 .terra-bf-panel-photos figure{border-radius:7px;background:#e4dbc9}
.terra-breakfast-v2 .terra-bf-panel-photos img{max-height:380px;height:auto;width:100%;object-fit:contain}
.terra-breakfast-v2 .terra-bf-panel-detail{align-self:center}
/* Food/ingredients with actual, restrained categories, not decorative filler. */
.terra-breakfast-v2 .terra-bf-flavors{
  display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);
  background:#e9eadf;border-radius:14px;overflow:hidden;
  align-items:stretch;gap:clamp(14px,2vw,28px);margin-bottom:clamp(32px,4.4vw,56px);
}
.terra-breakfast-v2 .terra-bf-flavors-copy{padding:clamp(22px,3vw,42px);min-width:0}
.terra-breakfast-v2 .terra-bf-flavors h2{margin:10px 0 12px;max-width:24ch}
.terra-breakfast-v2 .terra-bf-flavors-copy>p:not(.terra-bf-kicker){max-width:53ch}
.terra-breakfast-v2 .terra-bf-ingredient-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0 11px}
.terra-breakfast-v2 .terra-bf-ingredient-list>div{padding:14px 12px 8px 0;border-top:2px solid #abbcaa;min-width:0}
.terra-breakfast-v2 .terra-bf-ingredient-list strong{display:block;color:var(--bf-green);font-size:15px;margin-bottom:5px}
.terra-breakfast-v2 .terra-bf-ingredient-list span{display:block;font-size:12.5px;line-height:1.55;color:#514f43}
.terra-breakfast-v2 .terra-bf-variable{font-size:11.5px!important;color:#667063!important;margin-top:13px}
.terra-breakfast-v2 .terra-bf-flavors-photo{display:flex;align-items:center;justify-content:center;overflow:hidden;min-width:0;background:#b8a285}
.terra-breakfast-v2 .terra-bf-flavors-photo img{height:auto;max-height:470px;width:100%;object-fit:contain;object-position:center}
/* Gallery: identical gutters and margins, non-repeated photographs, full original ratios.
   On mobile this becomes one horizontal swipe row instead of 6 tall stacked blocks. */
.terra-breakfast-v2 .terra-bf-gallery{margin:0 0 clamp(32px,4.4vw,56px)}
.terra-breakfast-v2 .terra-bf-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:18px}
.terra-breakfast-v2 .terra-bf-gallery-heading h2{margin-top:8px}
.terra-breakfast-v2 .terra-bf-gallery-heading>p{font-size:11.5px;line-height:1.5;color:#687467;max-width:24ch}
.terra-breakfast-v2 .terra-bf-gallery-grid{columns:3;column-gap:14px}
.terra-breakfast-v2 .terra-bf-gallery-grid figure{
  display:block;break-inside:avoid;margin:0 0 14px;background:#eee6d9;
  border-radius:9px;overflow:hidden;
}
.terra-breakfast-v2 .terra-bf-gallery-grid img{width:100%;height:auto;max-height:none;object-fit:contain}
.terra-breakfast-v2 .terra-bf-closing{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  border-top:1px solid var(--bf-line);padding:25px 0 0;
}
.terra-breakfast-v2 .terra-bf-closing h2{font-size:clamp(26px,2.4vw,36px)}
.terra-breakfast-v2 .terra-bf-closing p{margin-top:7px;max-width:60ch}
.terra-internal-main.terra-breakfast-v2 a.terra-bf-cta-secondary{flex:0 0 auto;margin:0;background:var(--bf-green)!important;color:#fff!important}
@media(max-width:1000px){
 .terra-breakfast-v2 .terra-bf-hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px}
 .terra-breakfast-v2 .terra-bf-panel{grid-template-columns: minmax(0,1fr) minmax(0,1.06fr)}
 .terra-breakfast-v2 .terra-bf-panel-photos{grid-template-columns:1fr .5fr}
 .terra-breakfast-v2 .terra-bf-panel-photos img{max-height:330px}
 .terra-breakfast-v2 .terra-bf-ingredient-list{grid-template-columns:1fr;gap:5px;margin-top:14px}
 .terra-breakfast-v2 .terra-bf-ingredient-list>div{padding:8px 0;display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr);column-gap:10px}
}
@media(max-width:700px){
 .terra-internal-main.terra-breakfast-v2{padding:18px 15px 50px}
 .terra-breakfast-v2 .terra-bf-hero,.terra-breakfast-v2 .terra-bf-renovation,
 .terra-breakfast-v2 .terra-bf-panel,.terra-breakfast-v2 .terra-bf-flavors{grid-template-columns:1fr}
 .terra-breakfast-v2 .terra-bf-hero{gap:17px;margin-bottom:25px}
 .terra-breakfast-v2 .terra-bf-hero-copy{text-align:center;padding:3px 0 0}
 .terra-breakfast-v2 .terra-bf-hero h1{max-width:none;margin:9px auto;font-size:clamp(39px,9.7vw,55px)}
 .terra-breakfast-v2 .terra-bf-hero-copy p,.terra-breakfast-v2 .terra-bf-section-intro>p:last-child{text-align:center}
 .terra-breakfast-v2 .terra-bf-hero-copy .terra-bf-lead{margin:0 auto;max-width:49ch}
 .terra-breakfast-v2 .terra-bf-included{justify-content:center}
 .terra-internal-main.terra-breakfast-v2 .terra-bf-hero-copy .terra-bf-cta{margin:18px auto 0}
 .terra-breakfast-v2 .terra-bf-hero-photo{width:100%;margin:0 auto}
 .terra-breakfast-v2 .terra-bf-renovation{gap:10px;padding:19px 0;margin-bottom:30px;text-align:center}
 .terra-breakfast-v2 .terra-bf-renovation h2{margin:7px auto 0;max-width:none;font-size:clamp(28px,7.4vw,35px)}
 .terra-breakfast-v2 .terra-bf-renovation>p{margin:0 auto}
 .terra-breakfast-v2 .terra-bf-section-intro{text-align:center;margin-bottom:15px}
 .terra-breakfast-v2 .terra-bf-section-intro h2{margin:6px 0}
 .terra-breakfast-v2 .terra-bf-tablist{justify-content:center;margin:12px 0 14px;gap:8px}
 .terra-internal-main.terra-breakfast-v2 button.terra-bf-tab{min-height:42px;padding:11px 12px;font-size:12px}
 .terra-breakfast-v2 .terra-bf-panel{padding:17px;gap:17px}
 .terra-breakfast-v2 .terra-bf-panel-copy{text-align:center}
 .terra-breakfast-v2 .terra-bf-panel-copy h3{max-width:none;margin:7px 0;font-size:clamp(29px,7.4vw,36px)}
 .terra-breakfast-v2 .terra-bf-panel-copy>p:not(.terra-bf-small-label){margin:auto}
 .terra-breakfast-v2 .terra-bf-panel-note{margin-top:10px;font-size:10px}
 .terra-breakfast-v2 .terra-bf-panel-photos{grid-template-columns:1fr;gap:0;justify-items:center}
 .terra-breakfast-v2 .terra-bf-panel-primary{width:min(100%,330px);margin:0 auto}
 .terra-breakfast-v2 .terra-bf-panel-photos img{max-height:330px;height:auto;width:100%}
 .terra-breakfast-v2 .terra-bf-panel-detail{display:none}
 .terra-breakfast-v2 .terra-bf-spaces{margin-bottom:29px}
 .terra-breakfast-v2 .terra-bf-flavors{gap:0;margin-bottom:29px}
 .terra-breakfast-v2 .terra-bf-flavors-copy{padding:22px 19px 18px;text-align:center}
 .terra-breakfast-v2 .terra-bf-flavors h2{margin:7px auto;max-width:none}
 .terra-breakfast-v2 .terra-bf-flavors-copy>p:not(.terra-bf-kicker){margin:0 auto}
 .terra-breakfast-v2 .terra-bf-ingredient-list{margin-top:17px;text-align:left}
 .terra-breakfast-v2 .terra-bf-ingredient-list>div{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}
 .terra-breakfast-v2 .terra-bf-flavors-photo{height:auto;max-height:245px}
 .terra-breakfast-v2 .terra-bf-flavors-photo img{height:auto;max-height:245px;width:auto;max-width:100%;object-fit:contain}
 .terra-breakfast-v2 .terra-bf-gallery{margin-bottom:29px}
 .terra-breakfast-v2 .terra-bf-gallery-heading{display:block;text-align:center;margin-bottom:14px}
 .terra-breakfast-v2 .terra-bf-gallery-heading>p{margin:7px auto 0}
 .terra-breakfast-v2 .terra-bf-gallery-grid{
  display:flex;gap:12px;columns:auto;overflow-x:auto;overscroll-behavior-inline:contain;
  scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:0 1px 10px;
  scrollbar-width:thin;-webkit-overflow-scrolling:touch;
 }
 .terra-breakfast-v2 .terra-bf-gallery-grid figure{flex:0 0 min(77vw,300px);scroll-snap-align:start;display:flex;align-items:center;justify-content:center;height:320px;margin:0;border-radius:8px}
 .terra-breakfast-v2 .terra-bf-gallery-grid img{width:100%;height:100%;max-height:320px;object-fit:contain}
 .terra-breakfast-v2 .terra-bf-closing{flex-direction:column;text-align:center;gap:16px;padding-top:22px}
 .terra-internal-main.terra-breakfast-v2 a.terra-bf-cta-secondary{margin:0 auto}
}
@media(max-width:380px){
 .terra-breakfast-v2 .terra-bf-hero h1{font-size:38px}
 .terra-breakfast-v2 .terra-bf-gallery-grid figure{flex-basis:80vw;height:285px}
 .terra-breakfast-v2 .terra-bf-gallery-grid img{max-height:285px}
 .terra-internal-main.terra-breakfast-v2 button.terra-bf-tab{font-size:11.3px;padding:10px 11px}
}
@media(prefers-reduced-motion:reduce){
 .terra-breakfast-v2 *{scroll-behavior:auto!important;transition:none!important}
}
