/* IVORY & CHAMPAGNE · visual refinement layer 2.6 */
:root{--ivory-gold:#b99a68;--ivory-gold-soft:#dfcda9;--ivory-ink:#211711;--ivory-paper:#fbf9f5;--ivory-ease:cubic-bezier(.22,1,.36,1)}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{isolation:isolate;-webkit-font-smoothing:antialiased}
::selection{background:#d9c49d;color:#211711}
:focus-visible{outline:2px solid #a98650!important;outline-offset:4px!important}
.ivory-scrollline{position:fixed;inset:0 0 auto;height:3px;z-index:10050;pointer-events:none;background:transparent}
.ivory-scrollline span{display:block;width:0;height:100%;background:linear-gradient(90deg,#947343,#d8c39a,#f0e4c9);box-shadow:0 0 14px #c4a87588;transform-origin:left}
.ivory-backtop{position:fixed;right:25px;bottom:28px;z-index:1090;width:46px;height:46px;border:1px solid #c9b58f;border-radius:50%;background:rgba(35,25,18,.92);color:#fff;display:grid;place-items:center;font-size:20px;line-height:1;cursor:pointer;box-shadow:0 10px 30px #21171124;opacity:0;visibility:hidden;translate:0 12px;transition:opacity .35s,visibility .35s,translate .35s var(--ivory-ease),background .25s,box-shadow .25s}
.ivory-backtop.is-visible{opacity:1;visibility:visible;translate:0 0}
.ivory-backtop:hover{background:#9a7a4c;box-shadow:0 14px 34px #21171135;translate:0 -3px}
/* A soft editorial atmosphere on inner-page heroes and the main hero */
.page-hero,.hero{position:relative;isolation:isolate;overflow:hidden}
.page-hero:before,.hero:before{content:"";position:absolute;z-index:-1;inset:-20%;pointer-events:none;background:radial-gradient(ellipse at var(--ivory-pointer-x,72%) var(--ivory-pointer-y,35%),rgba(218,198,160,.28),transparent 34%),radial-gradient(ellipse at 12% 88%,rgba(239,229,211,.46),transparent 38%);opacity:.9}
.page-hero:after{content:"";position:absolute;left:50%;bottom:0;width:min(620px,72vw);height:1px;translate:-50% 0;background:linear-gradient(90deg,transparent,#cbb58d,transparent);opacity:.75}
.page-hero .eyebrow,.hero .eyebrow{display:inline-flex;align-items:center;gap:10px}
.page-hero .eyebrow:before,.page-hero .eyebrow:after{content:"";width:22px;height:1px;background:linear-gradient(90deg,transparent,#b99a68)}
.page-hero .eyebrow:after{transform:scaleX(-1)}
/* Cards feel tactile, without heavy 3D effects */
.soft-card,.procedure,.journey-card,.gallery-item,.team-profile,.article-card,.card,.formation-item,.v25-discover-card{transition:translate .45s var(--ivory-ease),box-shadow .45s var(--ivory-ease),border-color .35s ease,background .35s ease}
.soft-card:hover,.procedure:hover,.journey-card:hover,.team-profile:hover,.article-card:hover,.card:hover,.v25-discover-card:hover{translate:0 -5px;box-shadow:0 22px 55px rgba(44,31,21,.10);border-color:rgba(185,154,104,.42)}
.gallery-item{overflow:hidden}
.gallery-item img,.article-card img,.card img,.team-profile img{transition:transform .8s var(--ivory-ease),filter .6s ease}
.gallery-item:hover img,.article-card:hover img,.card:hover img,.team-profile:hover img{transform:scale(1.035);filter:saturate(1.04)}
.button,.btn,.nav-cta,.journey-cta,.button-gold,.back,.compare-reset{position:relative;overflow:hidden;isolation:isolate;transition:transform .35s var(--ivory-ease),box-shadow .35s ease,background .3s ease,border-color .3s ease}
.button:before,.btn:before,.nav-cta:before,.journey-cta:before,.button-gold:before{content:"";position:absolute;inset:0;z-index:-1;translate:-120% 0;background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.22) 48%,transparent 70%);transition:translate .75s var(--ivory-ease)}
.button:hover:before,.btn:hover:before,.nav-cta:hover:before,.journey-cta:hover:before,.button-gold:hover:before{translate:120% 0}
.button:hover,.btn:hover,.nav-cta:hover,.journey-cta:hover,.button-gold:hover{box-shadow:0 12px 28px rgba(60,42,24,.16)}
.field input,.field select,.field textarea{transition:border-color .25s,box-shadow .25s,background .25s}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#b99a68!important;box-shadow:0 0 0 4px rgba(185,154,104,.12);background:#fff}
.faq-item,.faq-item summary,.v25-assistant-panel,.v25-cookie{transition:border-color .3s,box-shadow .3s,background .3s}
.faq-item[open]{border-color:rgba(185,154,104,.48);box-shadow:0 12px 30px rgba(44,31,21,.055)}
.site-header,header#header{transition:background .4s,box-shadow .4s,backdrop-filter .4s}
.site-header.ivory-elevated,header#header.ivory-elevated{box-shadow:0 8px 30px rgba(35,25,18,.07)}
.site-links a,.nav-links a{position:relative}
.site-links a:not(.nav-cta):after,.nav-links a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:#b99a68;transition:right .35s var(--ivory-ease)}
.site-links a:hover:after,.nav-links a:hover:after{right:0}
.ivory-reveal{opacity:1;transform:none}
.ivory-motion-ready .ivory-reveal{opacity:0;transform:translate3d(0,22px,0);transition:opacity .75s var(--ivory-ease),transform .75s var(--ivory-ease)}
.ivory-motion-ready .ivory-reveal.is-in{opacity:1;transform:translate3d(0,0,0)}
.ivory-reveal.ivory-stagger-1{transition-delay:.08s}.ivory-reveal.ivory-stagger-2{transition-delay:.16s}.ivory-reveal.ivory-stagger-3{transition-delay:.24s}
.ivory-share{display:inline-flex;align-items:center;gap:9px;margin:18px 0 8px;padding:11px 16px;border:1px solid #d8c9ae;background:#f8f4ed;color:#493a2c;font-size:11px;letter-spacing:.04em;cursor:pointer;transition:background .25s,translate .25s,border-color .25s}
.ivory-share:hover{background:#eee4d3;border-color:#b99a68;translate:0 -2px}
.ivory-toast{position:fixed;left:50%;bottom:26px;z-index:12000;translate:-50% 14px;opacity:0;visibility:hidden;padding:12px 18px;background:#211711;color:#fff;font-size:12px;box-shadow:0 12px 32px #21171130;transition:opacity .25s,translate .25s,visibility .25s}
.ivory-toast.show{opacity:1;visibility:visible;translate:-50% 0}
@media(hover:none){.soft-card:hover,.procedure:hover,.journey-card:hover,.team-profile:hover,.article-card:hover,.card:hover,.v25-discover-card:hover{translate:0 0;box-shadow:inherit}.gallery-item:hover img,.article-card:hover img,.card:hover img,.team-profile:hover img{transform:none}}
@media(max-width:700px){html{scroll-padding-top:72px}.ivory-backtop{right:14px;bottom:84px;width:42px;height:42px}.ivory-scrollline{height:2px}.page-hero:before,.hero:before{opacity:.55}.soft-card,.procedure,.journey-card,.gallery-item,.team-profile,.article-card,.card{transition:box-shadow .35s,border-color .35s}.ivory-share{width:100%;justify-content:center}.ivory-toast{bottom:78px;width:max-content;max-width:calc(100vw - 32px);text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ivory-motion-ready .ivory-reveal{opacity:1!important;transform:none!important;transition:none!important}.soft-card,.procedure,.journey-card,.gallery-item,.team-profile,.article-card,.card,.formation-item,.v25-discover-card,.button,.btn,.nav-cta,.journey-cta,.button-gold{transition:none!important}.button:before,.btn:before,.nav-cta:before,.journey-cta:before,.button-gold:before{display:none!important}.ivory-backtop,.ivory-toast{transition:none!important}}


/* IVORY CHAMPAGNE 2.8 — acabamento delicado, leitura clara e mobile-first */
:root{--ivory-radius-sm:12px;--ivory-radius-md:18px;--ivory-radius-lg:26px;--ivory-radius-pill:999px}
/* Softer geometry throughout the experience */
.soft-card,.procedure,.journey-card,.gallery-item,.team-profile,.article-card,.card,.formation-item,.v25-discover-card,.journal-card,.finder-inner,.formation-panel,.faq-item,.v25-assistant-panel,.v25-cookie,.lightbox img{border-radius:var(--ivory-radius-md)}
.button,.btn,.nav-cta,.journey-cta,.button-gold,.back,.compare-reset,.mobile-cta,.v25-mobile-cta,.mobile-booking-bar a,.finder-option,.filter-chip,.tag,.v25-assistant-actions a,.v25-assistant-actions button,.v25-assistant-questions button,.v25-cookie-actions button{border-radius:var(--ivory-radius-pill)}
.field input,.field select,.field textarea,input,select,textarea{border-radius:var(--ivory-radius-sm)}
.photo-button,.gallery-item img,.article-card img,.card img,.team-profile img,.soft-card img{border-radius:var(--ivory-radius-md)}
.site-header,header#header{border-radius:0 0 16px 16px}
.v25-assistant-panel{border-radius:24px;box-shadow:0 22px 64px rgba(43,32,22,.16);padding:22px}
.v25-assistant-questions button{border-radius:14px;transition:background .25s,border-color .25s,transform .25s}
.v25-assistant-questions button:hover{background:#efe7da;border-color:#cbb58d;transform:translateY(-1px)}
.v25-assistant-answer{border-radius:15px}
.v25-assistant-actions a,.v25-assistant-actions button{border-radius:999px}
.v25-assistant-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:auto!important;min-width:58px;height:54px;padding:0 18px;border:1px solid rgba(223,205,169,.8)!important;border-radius:999px!important;background:linear-gradient(135deg,#382b20,#211711)!important;color:#fff!important;box-shadow:0 10px 30px rgba(33,23,17,.2),inset 0 1px 0 rgba(255,255,255,.12)!important;font-size:20px!important;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s,background .35s!important}
.v25-assistant-toggle:after{content:"Ajuda";font:500 11px Manrope,Arial,sans-serif;letter-spacing:.04em}
.v25-assistant-toggle:hover{transform:translateY(-3px);box-shadow:0 15px 36px rgba(33,23,17,.25)!important}
.v25-assistant{z-index:1200}
.mobile-booking-bar{border-radius:20px!important;padding:9px 10px 9px 17px!important}
.mobile-booking-bar a{padding:12px 18px!important}
.mobile-booking-bar>span{font-size:11px!important;line-height:1.45}
.mobile-cta,.v25-mobile-cta{min-height:48px;box-shadow:0 8px 24px rgba(33,23,17,.13)!important}
/* Softer rhythm and clear hierarchy on narrow screens */
@media(max-width:760px){
 body{line-height:1.65}
 main{overflow-x:clip}
 section{scroll-margin-top:78px}
 .page-hero{border-radius:0 0 28px 28px}
 .page-hero h1{line-height:1.08;letter-spacing:-.025em}
 .page-hero p{font-size:13px;line-height:1.85;max-width:36rem}
 .section{padding-top:52px;padding-bottom:52px}
 .container{width:88%}
 .soft-card,.article-copy,.formation-elevated,.journal-card{padding:22px!important}
 .grid-3,.journal-cards,.v25-discover-grid{gap:13px!important}
 .soft-card,.article-card,.journey-card,.v25-discover-card,.journal-card{box-shadow:0 8px 28px rgba(44,31,21,.045)}
 .field input,.field select,.field textarea{min-height:50px;padding:13px 15px}
 .field textarea{min-height:112px}
 .btn,.button,.nav-cta,.button-gold{min-height:46px;padding:12px 19px}
 .site-footer{border-radius:26px 26px 0 0;padding:34px 7%}
 .v25-assistant{right:14px!important;bottom:76px!important}
 .v25-assistant-toggle{min-width:54px;height:50px;padding:0 16px;font-size:18px!important}
 .v25-assistant-panel{width:min(360px,calc(100vw - 28px))!important;max-height:min(66dvh,560px);padding:20px!important;border-radius:23px!important}
 .v25-assistant-panel h3{font-size:25px!important;line-height:1.15}
 .v25-assistant-panel p{font-size:12px;line-height:1.75}
 .v25-assistant-questions{gap:9px!important}
 .v25-assistant-questions button{min-height:46px;padding:12px 14px!important;font-size:12px!important}
 .v25-cookie{border-radius:20px!important;padding:18px!important}
 .v25-cookie-actions button{min-height:40px;padding:10px 15px!important}
 .mobile-booking-bar{left:10px!important;right:10px!important;bottom:10px!important;gap:8px!important;min-height:62px}
 .mobile-booking-bar a{font-size:10px!important;letter-spacing:.06em;padding:11px 15px!important}
 .mobile-booking-bar>span{max-width:52%;font-size:10px!important}
 .v25-mobile-cta,.mobile-cta{left:12px!important;right:12px!important;bottom:12px!important}
}
@media(max-width:390px){
 .v25-assistant{right:12px!important}
 .v25-assistant-panel{width:calc(100vw - 24px)!important}
 .mobile-booking-bar{padding-left:13px!important}
 .mobile-booking-bar>span{font-size:9px!important}
 .mobile-booking-bar a{padding:10px 13px!important}
}
@media(prefers-reduced-motion:reduce){.v25-assistant-toggle,.v25-assistant-questions button{transition:none!important}}
