/*
Theme Name: Quinta Arca
Theme URI: https://dimaitech.com/
Author: DIMAI TECH
Description: Tema institucional responsivo para a Quinta Arca, com personalização de logótipo, imagens, contactos e pedidos de reserva.
Version: 2.1.3
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: quinta-arca
*/
:root{--qa-green:#b65336;--qa-green-dark:#4b2c20;--qa-gold:#a58b78;--qa-cream:#f5efe5;--qa-ink:#33251f;--qa-muted:#77665d;--qa-white:#fff;--qa-radius:4px;--qa-terracotta:#b65336;--qa-ivory:#f5efe5;--qa-taupe:#a58b78;--qa-olive:#55583a;--qa-walnut:#4b2c20}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--qa-ink);line-height:1.65;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.wrap{width:min(1180px,calc(100% - 44px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #e8e7e0}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-weight:750;color:var(--qa-green);letter-spacing:.02em}.brand img,.brand .custom-logo{width:auto;height:auto;max-height:92px;max-width:250px;object-fit:contain}.brand{flex:0 0 auto;gap:0}.brand-text{display:none!important}.brand-text{font-family:Georgia,serif;font-size:1.35rem}.nav{display:flex;align-items:center;gap:26px;font-size:.91rem;font-weight:600}.nav a:hover{color:#9b7a41}.nav .nav-cta,.btn{background:var(--qa-green);color:white;padding:13px 21px;display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--qa-green);transition:.2s;letter-spacing:.01em;font-weight:650}.nav .nav-cta:hover,.btn:hover{background:var(--qa-gold);border-color:var(--qa-gold);color:#17271d}.menu-toggle{display:none;background:none;border:1px solid #ddd;padding:9px 12px;font-size:1.2rem}.hero{position:relative;min-height:680px;display:flex;align-items:center;color:white;background:linear-gradient(90deg,rgba(8,28,20,.76),rgba(8,28,20,.24)),var(--hero-image) center/cover no-repeat}.hero-content{padding:100px 0;max-width:760px}.eyebrow{display:inline-block;color:var(--qa-gold);font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px}.hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(2.8rem,6vw,5.6rem);line-height:1.04;letter-spacing:-.035em;margin:0 0 24px;max-width:760px}.hero p{font-size:clamp(1rem,1.6vw,1.2rem);max-width:600px;color:#f0f1eb;margin:0 0 30px}.btn-light{background:var(--qa-gold);border-color:var(--qa-gold);color:#17271d}.btn-light:hover{background:white;border-color:white}.section{padding:94px 0}.section-soft{background:var(--qa-cream)}.section-head{max-width:720px;margin:0 auto 42px;text-align:center}.section-head .eyebrow{color:#9b7a41}.section h2,.page-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.1rem,4vw,3.55rem);font-weight:400;line-height:1.12;margin:0 0 18px;color:var(--qa-green)}.section-head p{color:var(--qa-muted);margin:0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.intro-photo{height:520px;object-fit:cover;width:100%}.intro-copy p{color:var(--qa-muted)}.text-link{display:inline-block;margin-top:12px;color:var(--qa-green);font-weight:750;border-bottom:1px solid var(--qa-gold);padding-bottom:5px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:white;box-shadow:0 12px 40px rgba(23,61,45,.07)}.card img{width:100%;height:255px;object-fit:cover}.card-body{padding:25px}.card h3{font:400 1.65rem Georgia,serif;color:var(--qa-green);margin:0 0 10px}.card p{color:var(--qa-muted);margin:0 0 18px}.feature-band{background:var(--qa-green-dark);color:white;padding:70px 0}.feature-inner{display:flex;justify-content:space-between;align-items:center;gap:32px}.feature-band h2{color:white;margin:0 0 10px}.feature-band p{margin:0;color:#d7dfd7}.page-hero{background:var(--qa-green);color:white;padding:85px 0 75px}.page-hero h1{color:white;max-width:850px}.page-hero p{max-width:680px;color:#e2e8e0}.content-area{padding:65px 0 90px;min-height:300px}.content-area h2,.content-area h3{color:var(--qa-green);font-family:Georgia,serif;font-weight:400}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:45px}.contact-panel{background:var(--qa-cream);padding:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-field{display:flex;flex-direction:column;gap:7px}.form-field.full{grid-column:1/-1}.form-field label{font-weight:650;font-size:.9rem}.form-field input,.form-field select,.form-field textarea{width:100%;padding:13px;border:1px solid #d8d9d2;background:white;font:inherit;border-radius:0}.form-field textarea{min-height:130px}.form-submit{cursor:pointer;margin-top:18px}.notice{padding:15px;background:#e8f4e8;border-left:4px solid #2b744b;margin-bottom:22px}.site-footer{background:#0c281d;color:white;padding:58px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:35px;padding-bottom:42px}.footer-brand{font:400 1.8rem Georgia,serif;color:var(--qa-gold);margin-bottom:12px}.site-footer p,.site-footer a{color:#d3ddd5;font-size:.92rem}.site-footer h3{font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:var(--qa-gold);margin:0 0 16px}.footer-links{display:grid;gap:8px}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding-top:20px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:.82rem;color:#bac9be}.footer-bottom a{color:var(--qa-gold)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-grid img{width:100%;height:280px;object-fit:cover}.post-content{max-width:850px;margin:auto}.post-content p{color:#50584f}.wp-block-image img{height:auto}.screen-reader-text{position:absolute;left:-9999px}
@media(max-width:900px){.nav{gap:14px}.nav a{font-size:.83rem}.hero{min-height:600px}.intro-grid{gap:35px}.footer-grid{grid-template-columns:1fr 1fr}.cards{gap:16px}}
@media(max-width:680px){.wrap{width:min(100% - 32px,1180px)}.header-inner{min-height:76px}.brand img,.brand .custom-logo{max-height:72px;max-width:180px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:76px;left:0;right:0;padding:20px 22px 24px;background:white;border-bottom:1px solid #ddd;flex-direction:column;align-items:stretch;gap:15px}.nav.is-open{display:flex}.nav .nav-cta{text-align:center}.hero{min-height:590px;background-position:58% center}.hero-content{padding:75px 0}.section{padding:66px 0}.intro-grid,.contact-grid{grid-template-columns:1fr;gap:28px}.intro-photo{height:350px}.cards{grid-template-columns:1fr}.card img{height:245px}.feature-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr;gap:24px}.gallery-grid{grid-template-columns:1fr 1fr;gap:9px}.gallery-grid img{height:170px}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.page-hero{padding:60px 0 52px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}}

/* Menus e regras da estadia */
.menu-download-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:34px 0 28px}.menu-download-card{padding:32px;background:var(--qa-cream);border-top:3px solid var(--qa-gold)}.menu-download-card h3{font:400 1.8rem Georgia,serif;color:var(--qa-green);margin:8px 0 12px}.menu-download-card p,.menu-note{color:var(--qa-muted)}.menu-icon{font-size:1.8rem;color:var(--qa-gold)}.menu-download-card .text-link{display:block;width:max-content}.pdf-preview{margin-top:58px}.pdf-preview h2{margin-bottom:18px}.pdf-preview iframe{display:block;width:100%;height:760px;border:1px solid #ddd;background:#f8f8f5}.menu-note{margin:24px 0}.rules-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:42px}.rules-content h2{margin-top:34px}.rules-content h2:first-child{margin-top:0}.rules-content li{padding:0 0 10px 5px}.rules-content li::marker{color:var(--qa-gold)}.rules-aside{align-self:start;background:var(--qa-cream);padding:28px;position:sticky;top:115px}.rules-aside h3{font:400 1.6rem Georgia,serif;color:var(--qa-green);margin-top:0}
@media(max-width:680px){.menu-download-grid,.rules-layout{grid-template-columns:1fr}.menu-download-card{padding:24px}.pdf-preview iframe{height:560px}.rules-aside{position:static}}


/* Animações discretas de entrada e interação */
html{scroll-behavior:smooth}.btn,.card,.menu-download-card,.gallery-grid img{transition:transform .28s ease,box-shadow .28s ease,background-color .2s ease}.card:hover,.menu-download-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(23,61,45,.12)}.gallery-grid img:hover{transform:scale(1.015)}.qa-reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease;transition-delay:var(--qa-reveal-delay,0ms)}.qa-reveal.qa-is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.qa-reveal{opacity:1;transform:none}}

/* Ajustes Quinta Arca: navegação limpa, alojamentos e cartões animados */
.nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:26px}.nav li{list-style:none;margin:0;padding:0}.nav li::marker{content:""}.nav ul li a{display:inline-flex}.qa-room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.qa-room-card{background:#fff;border:1px solid #e7e6df;box-shadow:0 12px 35px rgba(23,61,45,.08);overflow:hidden;transition:transform .35s ease,box-shadow .35s ease;border-radius:5px}.qa-room-card:hover{transform:translateY(-7px);box-shadow:0 20px 48px rgba(23,61,45,.16)}.qa-room-card>img{width:100%;height:260px;object-fit:cover;transition:transform .55s ease}.qa-room-card:hover>img{transform:scale(1.035)}.qa-room-body{padding:25px}.qa-room-body h3{font:400 1.7rem Georgia,serif;color:var(--qa-green);margin:0 0 10px}.qa-room-body p{color:var(--qa-muted)}.qa-room-meta{font-size:.9rem;font-weight:650}.qa-admin-wrap{max-width:1200px}.qa-admin-panel{background:#fff;border:1px solid #e3e8e2;border-radius:12px;padding:25px;margin:24px 0;box-shadow:0 8px 28px rgba(20,55,39,.05)}.qa-admin-panel h2{margin-top:0}.qa-admin-panel input,.qa-admin-panel textarea{max-width:100%;padding:9px;border:1px solid #cbd5cc;border-radius:6px}.qa-admin-panel .button-primary{background:#173d2d;border-color:#173d2d;padding:4px 18px}.qa-admin-shortcuts a{border-radius:8px;padding:15px;background:#f7f4ed}.qa-admin-shortcuts a:hover{background:#eae2d1}
@media(max-width:900px){.qa-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nav ul{gap:14px}}@media(max-width:680px){.qa-room-grid{grid-template-columns:1fr}.nav ul{display:flex;flex-direction:column;align-items:stretch;gap:15px}.brand img,.brand .custom-logo{max-height:72px;max-width:180px}}

/* Regras da estadia apresentadas directamente no formulário de reservas */
.qa-booking-rules{margin:28px 0;padding:22px 24px;border:1px solid rgba(198,162,95,.45);border-radius:14px;background:#f8f5ee;color:#243126}
.qa-booking-rules h3{margin:0 0 12px;font-size:1.2rem}
.qa-booking-rules ul{margin:0 0 12px;padding-left:22px}
.qa-booking-rules li{margin:0 0 8px;line-height:1.6}

/* Language selector */
.header-inner{gap:18px}.qa-language-switcher{flex:0 0 auto;display:flex;align-items:center}.qa-language-switcher select{appearance:auto;background:#173D2B;color:#fff;border:1px solid #C6A25F;border-radius:6px;padding:8px 10px;font:inherit;font-size:14px;cursor:pointer;max-width:100px}.qa-language-switcher select:focus{outline:2px solid #C6A25F;outline-offset:2px}@media(max-width:760px){.qa-language-switcher{margin-left:auto;margin-right:8px}.qa-language-switcher select{padding:7px 6px;font-size:12px}.header-inner{gap:8px}}

/* Reserva estruturada: calendário, disponibilidade e totais em meticais */
.qa-booking-form{max-width:1000px;margin:0 auto}.qa-booking-step{display:flex;align-items:flex-start;gap:16px;margin:34px 0 18px;padding-bottom:14px;border-bottom:1px solid rgba(23,61,43,.16)}.qa-step-number{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:50%;background:#173D2B;color:#fff;font-weight:700}.qa-booking-step h2{margin:0 0 5px;color:#173D2B}.qa-booking-step p{margin:0;color:#6c746d}.qa-availability-status{margin:16px 0;padding:13px 16px;border-radius:8px;background:#f5f1e8;color:#173D2B}.qa-room-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.qa-booking-room{display:block;position:relative;cursor:pointer}.qa-booking-room>input{position:absolute;top:18px;left:16px;accent-color:#173D2B}.qa-room-choice{display:flex;flex-direction:column;gap:8px;height:100%;padding:18px 18px 18px 42px;border:1px solid #d8d7cd;border-radius:10px;background:#fff;transition:border-color .2s,box-shadow .2s}.qa-booking-room:has(input:checked) .qa-room-choice{border-color:#C6A25F;box-shadow:0 0 0 2px rgba(198,162,95,.2)}.qa-booking-room.is-unavailable{cursor:not-allowed;opacity:.68}.qa-booking-room.is-unavailable .qa-room-choice{background:#f3f1ed}.qa-room-choice strong{font-size:1.08rem;color:#173D2B}.qa-room-rate{font-weight:700;color:#173D2B}.qa-room-status{align-self:flex-start;padding:4px 9px;border-radius:20px;background:#e5f1e8;color:#20633a;font-size:.82rem;font-style:normal;font-weight:700}.is-unavailable .qa-room-status{background:#f9e5e2;color:#9c3028}.qa-booking-total{margin:24px 0;padding:20px;border:1px solid #C6A25F;border-radius:10px;background:#f5f1e8}.qa-booking-total>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0}.qa-booking-total strong{color:#173D2B;text-align:right}.qa-booking-total small{display:block;margin-top:10px;color:#626a63}.qa-booking-message{padding:15px;border-left:4px solid #C6A25F;background:#f5f1e8}.qa-booking-form input[type=date],.qa-booking-form input[type=number]{min-height:48px}.qa-booking-rules{margin:24px 0;padding:20px;background:#f5f1e8;border-radius:10px}.qa-booking-rules h3{margin-top:0;color:#173D2B}@media(max-width:650px){.qa-room-results{grid-template-columns:1fr}.qa-booking-total>div{align-items:flex-start;flex-direction:column;gap:3px}.qa-booking-total strong{text-align:left}}

/* Reserva em três etapas: calendário duplo, seleção de quarto e dados do hóspede */
.qa-progress{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:18px 0 28px;padding:8px;background:#f4f1e9;border-radius:12px}
.qa-progress span{flex:1;text-align:center;padding:12px 8px;border-radius:8px;color:#68746b;font-size:.92rem;font-weight:700}
.qa-progress span.is-current{background:#173D2B;color:#fff}.qa-progress span.is-done{background:#e0ebdf;color:#173D2B}
.qa-step-panel{margin-bottom:24px}.qa-step-panel[hidden]{display:none!important}.qa-step-panel.is-active{animation:qaStepIn .22s ease-out}@keyframes qaStepIn{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}
.qa-calendar-shell{border:1px solid #e2dfd5;border-radius:14px;background:#fff;padding:20px;box-shadow:0 8px 28px rgba(23,61,43,.06)}
.qa-calendar-top{display:grid;grid-template-columns:44px 1fr 44px;gap:12px;align-items:center;text-align:center;margin-bottom:20px}.qa-calendar-top strong,.qa-calendar-top small{display:block}.qa-calendar-top small{margin-top:5px;color:#737a72;font-size:.88rem}.qa-calendar-top button{height:42px;border:1px solid #dcd8cd;background:#f7f5ef;color:#173D2B;border-radius:8px;font-size:26px;cursor:pointer}.qa-calendar-top button:disabled{opacity:.3;cursor:not-allowed}
.qa-calendar-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.qa-calendar-month h4{text-align:center;margin:0 0 14px;color:#173D2B;font-size:1.05rem}.qa-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.qa-calendar-weekday{text-align:center;font-size:.76rem;font-weight:700;color:#777e75;padding:7px 0}.qa-calendar-empty{min-height:38px}.qa-calendar-day{min-width:0;min-height:38px;padding:4px 0;border:1px solid transparent;border-radius:8px;background:#fff;color:#25382c;cursor:pointer;font:inherit}.qa-calendar-day:hover:not(:disabled){border-color:#C6A25F;background:#fbf8ef}.qa-calendar-day.is-past{color:#c5c5c0;text-decoration:line-through;cursor:not-allowed}.qa-calendar-day.is-selected{background:#173D2B;color:#fff;font-weight:800}.qa-calendar-day.is-between{background:#f3ead2;border-radius:0}.qa-calendar-day.is-arrival{border-radius:8px 0 0 8px}.qa-calendar-day.is-departure{border-radius:0 8px 8px 0}
.qa-date-summary{display:grid;grid-template-columns:1fr 1fr 140px;gap:14px;margin-top:22px;padding-top:18px;border-top:1px solid #eee9dd}.qa-date-summary>div{display:flex;flex-direction:column;gap:6px}.qa-date-summary small{color:#737a72}.qa-date-summary strong{color:#173D2B}.qa-date-summary input{width:100%;min-height:42px;border:1px solid #d8d7cd;border-radius:7px;padding:7px}
.qa-step-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px}.qa-step-actions button:disabled,.qa-step-panel .form-submit:disabled{opacity:.45;cursor:not-allowed}.qa-selected-summary{padding:14px 16px;background:#f4f1e9;border-left:4px solid #C6A25F;border-radius:6px;margin:0 0 20px;color:#173D2B;font-weight:600}.qa-booking-message.is-success{border-left-color:#2d7a45;background:#edf7ee;color:#20552d}
@media(max-width:680px){.qa-progress{gap:4px;padding:5px}.qa-progress span{padding:10px 3px;font-size:.76rem}.qa-calendar-shell{padding:12px}.qa-calendar-months{gap:12px}.qa-calendar-month h4{font-size:.9rem}.qa-calendar-grid{gap:2px}.qa-calendar-weekday{font-size:.65rem;padding:5px 0}.qa-calendar-day{min-height:34px;font-size:.83rem;border-radius:5px}.qa-calendar-empty{min-height:34px}.qa-date-summary{grid-template-columns:1fr 1fr;margin-top:15px;gap:10px}.qa-date-summary>div:last-child{grid-column:1/-1}.qa-calendar-top{grid-template-columns:36px 1fr 36px;gap:7px}.qa-calendar-top button{height:36px}.qa-calendar-top small{font-size:.78rem}.qa-step-actions{align-items:stretch;flex-direction:column}.qa-step-actions button{width:100%;min-height:46px}.qa-booking-rules{padding:16px}.qa-booking-rules li{line-height:1.55}}
@media(max-width:360px){.qa-calendar-months{gap:7px}.qa-calendar-day{min-height:30px;font-size:.76rem}.qa-calendar-grid{gap:1px}.qa-calendar-weekday{font-size:.6rem}.qa-calendar-month h4{font-size:.82rem}}


/* Redes sociais no rodapé */
.footer-social-link{display:inline-flex;align-items:center;gap:9px;flex-wrap:wrap;color:#d3ddd5!important;font-weight:650;padding:10px 12px;border:1px solid rgba(197,164,109,.45);border-radius:8px;transition:background .2s,border-color .2s,color .2s}.footer-social-link:hover,.footer-social-link:focus-visible{background:rgba(197,164,109,.12);border-color:var(--qa-gold);color:var(--qa-gold)!important}.footer-social-icon{width:23px;height:23px;flex:0 0 23px;color:var(--qa-gold)}.footer-social-link small{width:100%;padding-left:32px;font-size:.78rem;color:#bac9be;font-weight:400}.footer-social p{max-width:240px}
@media(max-width:900px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.footer-grid{grid-template-columns:1fr}.footer-social-link{min-height:44px}}

/* Rodapé: Instagram e WhatsApp configuráveis pelo painel */
.footer-social .footer-social-link{margin:0 0 8px;max-width:100%;min-width:190px}.footer-social .footer-social-link small{overflow-wrap:anywhere}.footer-social .footer-social-icon{width:22px;height:22px}

/* v9: social footer shows icons only */
.footer-social-icons{display:flex;align-items:center;gap:14px;margin-top:8px}.footer-social-icons .footer-social-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid currentColor;border-radius:50%;text-decoration:none;transition:transform .2s ease,background .2s ease}.footer-social-icons .footer-social-link:hover{transform:translateY(-2px)}.footer-social-icons .footer-social-icon{width:22px;height:22px;display:block}.qa-booking-rules{margin:24px 0;padding:22px;border:1px solid rgba(198,162,95,.45);border-radius:14px;background:#fbf8f1}.qa-booking-rules li{margin:0 0 8px}

/* Identidade visual Quinta Arca 2026: terracota, marfim, taupe, oliva e nogueira */
.hero{background-image:linear-gradient(90deg,rgba(72,35,24,.72),rgba(72,35,24,.16)),var(--hero-image);background-position:center;background-color:var(--qa-terracotta)}
.hero-content{text-align:left;margin-left:max(calc((100% - 1180px)/2),22px);margin-right:auto;max-width:760px}
.hero h1,.hero p{margin-left:0;margin-right:auto;text-align:left}.hero .btn{align-self:flex-start}
.nav .nav-cta,.btn{background:var(--qa-terracotta);border-color:var(--qa-terracotta)}.nav .nav-cta:hover,.btn:hover{background:var(--qa-walnut);border-color:var(--qa-walnut);color:#fff}
.site-footer{background:var(--qa-walnut)}.site-footer h3,.footer-brand{color:#e8a17e}.eyebrow{color:#e8a17e}.section h2,.page-hero h1,.content-area h2,.content-area h3,.card h3{color:var(--qa-terracotta)}.page-hero,.feature-band{background:var(--qa-walnut)}
.footer-social-heading{display:block;color:#e8a17e;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin:0 0 15px}.qa-language-switcher select{background:var(--qa-terracotta);border-color:#e8a17e}
@media(max-width:680px){.hero-content{margin-left:16px;margin-right:16px;width:auto;padding:65px 0}.hero h1{font-size:clamp(2.5rem,11vw,4rem)}.qa-language-switcher{margin:8px 0 0;justify-content:flex-start}.nav .qa-language-switcher{display:flex;width:100%;padding-top:12px;border-top:1px solid #eee}.nav .qa-language-switcher select{width:100%;max-width:none;min-height:44px}}
.qa-breakfast-section{background:var(--qa-ivory)}.qa-breakfast-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:center}.qa-breakfast-card img{width:100%;max-height:650px;object-fit:contain;object-position:center;background:#fff}.qa-breakfast-card h2{font-family:Georgia,serif;font-weight:400;color:var(--qa-terracotta);font-size:clamp(2rem,4vw,3.2rem)}.qa-breakfast-card p{color:var(--qa-muted)}.qa-map-link{display:inline-flex;margin-top:15px;background:var(--qa-terracotta);color:white!important;padding:12px 18px;font-weight:700}
@media(max-width:680px){.qa-breakfast-card{grid-template-columns:1fr;gap:20px}}

/* v13: fotografias ilustrativas nos cartões de quartos da reserva */
.qa-room-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.qa-booking-room{display:flex;align-items:stretch;gap:12px;padding:12px;border:1px solid #e1d4c8;background:#fffdf9;cursor:pointer;min-width:0}.qa-booking-room input{flex:0 0 auto;margin-top:8px}.qa-room-choice{display:flex;flex-direction:column;gap:7px;min-width:0;width:100%}.qa-room-photo{width:100%;height:170px;object-fit:cover;background:#eee0d4}.qa-room-choice strong{font-family:Georgia,serif;font-size:1.2rem;color:var(--qa-walnut)}.qa-room-rate{font-weight:750;color:var(--qa-terracotta)}.qa-room-status{font-style:normal;font-size:.9rem}.qa-booking-room.is-unavailable{opacity:.62;cursor:not-allowed}.qa-booking-room.is-available:has(input:checked){border:2px solid var(--qa-terracotta);box-shadow:0 0 0 2px rgba(182,83,54,.1)}@media(max-width:680px){.qa-room-results{grid-template-columns:1fr}.qa-room-photo{height:190px}}


/* v1.5.0 — acabamento mobile e paleta terracota; sem alterar os conteúdos existentes */
:root{--qa-green:var(--qa-terracotta);--qa-green-dark:var(--qa-walnut);--qa-gold:var(--qa-taupe);--qa-cream:var(--qa-ivory)}
body{background:var(--qa-ivory);overflow-wrap:break-word}
.site-header{background:rgba(247,238,226,.97);border-bottom-color:#dfd0c2}
.nav a:hover,.text-link:hover{color:var(--qa-terracotta)}
.section-soft,.contact-panel,.menu-download-card,.rules-aside{background:var(--qa-ivory)}
.qa-room-card,.card{border-radius:6px;overflow:hidden}
button,select,input,textarea{max-width:100%}
img,iframe,video{max-width:100%}
.qa-language-switcher select{color:#fff;padding:10px 14px;border-radius:3px;font:inherit;cursor:pointer}
@media(max-width:900px){
 .wrap{width:min(100% - 36px,1180px)}
 .header-inner{gap:14px}
 .nav{gap:14px}
 .qa-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .qa-room-card>img{height:230px}
 .hero{min-height:560px}
 .section{padding:76px 0}
}
@media(max-width:680px){
 html,body{max-width:100%;overflow-x:clip}
 .wrap{width:calc(100% - 32px)}
 .site-header{position:sticky}
 .header-inner{min-height:76px;flex-wrap:nowrap;gap:10px}
 .brand{min-width:0;max-width:calc(100% - 58px)}
 .brand img,.brand .custom-logo{max-width:min(180px,52vw);max-height:66px}
 .menu-toggle{flex:0 0 auto;min-width:44px;min-height:44px;border-color:var(--qa-taupe);color:var(--qa-walnut);border-radius:3px}
 .nav{top:76px;max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;padding:18px 16px 22px;box-shadow:0 16px 24px rgba(74,45,34,.12)}
 .nav a,.nav ul li a{display:flex;align-items:center;min-height:44px;font-size:1rem;line-height:1.4}
 .nav ul{flex-direction:column;align-items:stretch;gap:8px;width:100%}
 .nav ul li{width:100%}
 .nav .nav-cta{width:100%;min-height:48px}
 .hero{min-height:500px;background-position:60% center}
 .hero-content{margin:0 16px;width:auto;padding:60px 0}
 .hero h1{font-size:clamp(2.15rem,9.5vw,3.3rem);line-height:1.08;overflow-wrap:anywhere}
 .hero p{font-size:1rem;line-height:1.6}
 .section,.content-area{padding:52px 0}
 .section-head{margin-bottom:28px}
 .section h2,.page-hero h1,.content-area h2{font-size:clamp(1.8rem,8vw,2.5rem)}
 .intro-grid,.contact-grid,.qa-breakfast-card{grid-template-columns:minmax(0,1fr);gap:22px}
 .intro-photo{height:300px}
 .cards,.qa-room-grid,.gallery-grid,.qa-room-results,.menu-download-grid,.rules-layout{grid-template-columns:minmax(0,1fr)}
 .card img,.qa-room-card>img{height:clamp(220px,68vw,320px)}
 .qa-room-body,.card-body{padding:20px}
 .gallery-grid img{height:clamp(220px,68vw,320px)}
 .feature-inner{gap:20px}
 .feature-band{padding:48px 0}
 .form-grid{grid-template-columns:minmax(0,1fr)}
 .form-field.full{grid-column:auto}
 .form-field input,.form-field select,.form-field textarea{font-size:16px;min-height:44px}
 .pdf-preview iframe{height:65vh;min-height:360px}
 .qa-booking-room{gap:9px;padding:10px;flex-direction:column}
 .qa-room-photo{height:clamp(180px,55vw,260px)}
 .qa-step-actions{flex-direction:column;align-items:stretch}
 .qa-step-actions button,.form-submit{width:100%;min-height:46px}
 .footer-grid{grid-template-columns:minmax(0,1fr);gap:22px}
 .footer-bottom{display:flex;flex-direction:column;gap:8px}
 .footer-social .footer-social-link{min-width:0;width:100%}
 .qa-language-switcher{width:100%;margin-top:8px}
 .qa-language-switcher select{width:100%;min-height:46px}
}
@media(max-width:380px){
 .wrap{width:calc(100% - 24px)}
 .hero-content{margin-inline:12px}
 .hero h1{font-size:2rem}
 .section,.content-area{padding:42px 0}
 .qa-date-summary{grid-template-columns:minmax(0,1fr)}
}

/* QA v15.1: idioma e navegação acessíveis em mobile */
.qa-language-switcher{display:flex;align-items:center;flex:0 0 auto}.qa-language-switcher select{font:inherit;font-size:.9rem;max-width:100%;padding:9px 10px;border:1px solid #d8c9bb;border-radius:4px;background:var(--qa-ivory);color:var(--qa-walnut);cursor:pointer}.nav .qa-language-switcher{display:flex;width:100%;padding-top:8px;border-top:1px solid #eadfd5}.nav .qa-language-switcher select{width:100%;min-height:44px}.nav .nav-cta,.btn{background:var(--qa-terracotta);border-color:var(--qa-terracotta);color:#fff}.nav .nav-cta:hover,.btn:hover{background:var(--qa-walnut);border-color:var(--qa-walnut);color:#fff}.site-footer{background:var(--qa-walnut)}@media(max-width:680px){.qa-language-switcher{width:100%}.qa-language-switcher select{min-height:44px}.nav{max-height:calc(100dvh - 76px);overflow-y:auto}.hero h1{font-size:clamp(2.2rem,10vw,3.6rem)}.wrap{width:calc(100% - 32px)}.qa-room-card>img{height:230px}.qa-room-body{padding:20px}.pdf-preview iframe{max-width:100%}}


/* Quinta Arca 2.1 — imagens e redes sociais alinhadas, com acabamento premium */
:root{--qa-terracotta:#b65336;--qa-walnut:#40251f;--qa-gold:#e8a17e;--qa-ivory:#fbf6f0;--qa-ink:#33251f;--qa-muted:#75645b}
body{font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.7;letter-spacing:.005em}
.hero h1,.section h2,.page-hero h1,.card h3,.footer-brand{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.section-head{max-width:760px}
.card{overflow:hidden;border:1px solid rgba(75,44,32,.08);border-radius:8px;box-shadow:0 16px 42px rgba(64,37,31,.09);transition:transform .25s ease,box-shadow .25s ease}
.card:hover{transform:translateY(-4px);box-shadow:0 20px 48px rgba(64,37,31,.15)}
.card img{transition:transform .45s ease}
.card:hover img{transform:scale(1.025)}
.card-body{padding:26px 26px 28px}
.site-footer{background:linear-gradient(135deg,#40251f 0%,#2c1b18 100%);padding:64px 0 24px}
.footer-grid{gap:38px;padding-bottom:46px}
.site-footer h3,.footer-social-heading{color:#f0b08e;font-size:.78rem;letter-spacing:.14em}
.footer-brand{font-size:2rem;color:#f0b08e}
.site-footer p,.site-footer a{font-size:.94rem;line-height:1.8}
.footer-links a{width:fit-content;transition:color .2s ease,transform .2s ease}
.footer-links a:hover{color:#f0b08e;transform:translateX(3px)}
.footer-social-icons{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px}
.footer-social-icons .footer-social-link,.footer-social .footer-social-link{box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:58px!important;height:58px!important;min-width:58px!important;max-width:58px!important;min-height:58px!important;padding:0!important;margin:0!important;flex:0 0 58px!important;border:1px solid rgba(240,176,142,.55)!important;border-radius:50%!important;background:rgba(255,255,255,.035);color:#fff!important;line-height:1!important;transition:background .2s ease,border-color .2s ease,transform .2s ease!important}
.footer-social-icons .footer-social-link:hover,.footer-social .footer-social-link:hover,.footer-social-icons .footer-social-link:focus-visible{background:#b65336!important;border-color:#f0b08e!important;color:#fff!important;transform:translateY(-3px)}
.footer-social-icons .footer-social-icon{display:block!important;width:26px!important;height:26px!important;flex:0 0 26px!important;color:#f0b08e!important}
.footer-social-icons .footer-social-link:hover .footer-social-icon{color:#fff!important}
.footer-bottom{padding-top:22px;border-color:rgba(240,176,142,.22);font-size:.82rem}
@media(max-width:680px){.site-footer{padding:46px 0 22px}.footer-grid{gap:26px;padding-bottom:30px}.footer-social-icons{gap:12px}.footer-social-icons .footer-social-link,.footer-social .footer-social-link{width:54px!important;height:54px!important;min-width:54px!important;max-width:54px!important;min-height:54px!important;flex-basis:54px!important}.footer-social-icons .footer-social-icon{width:24px!important;height:24px!important;flex-basis:24px!important}.card img{height:230px}.footer-bottom{font-size:.8rem}}

/* Correcao do alinhamento do calendario de reservas */
.qa-booking-form .qa-calendar-shell {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.qa-booking-form .qa-calendar-top {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    gap: 12px !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

.qa-booking-form .qa-calendar-top > div {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: none !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

.qa-booking-form .qa-calendar-top > button {
    flex: 0 0 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 42px !important;
    white-space: nowrap !important;
}

.qa-booking-form .qa-calendar-months {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    gap: 26px !important;
}

.qa-booking-form .qa-calendar-month {
    min-width: 0 !important;
    width: auto !important;
}

.qa-booking-form .qa-calendar-grid {
    display: grid !important;
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    width: 100% !important;
    gap: 4px !important;
}

@media (max-width: 680px) {
    .qa-booking-form .qa-calendar-top {
        gap: 7px !important;
    }

    .qa-booking-form .qa-calendar-top > button {
        flex-basis: 36px !important;
        width: 36px !important;
        min-width: 36px !important;
    }

    .qa-booking-form .qa-calendar-months {
        gap: 12px !important;
    }

    .qa-booking-form .qa-calendar-day {
        min-height: 34px !important;
        padding: 3px 0 !important;
        font-size: 0.8rem !important;
    }
}
