/* SITE INSTITUCIONAL - RESTAURACAO AUTONOMA V04\n   Reconstituição de estilos ausentes dos pacotes anteriores.\n   Preserva estrutura, copy, imagens finais e identidade aprovada. */
:root{--green-950:#081b15;--green-900:#0d2b20;--green-800:#15402e;--gold:#bd8d54;--gold-l:#e1bc84;--paper:#f7f1e9;--paper-2:#f2ece3;--ink:#19372b;--muted:#655e55;--white:#fffdf9;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:32px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}
img,svg{max-width:100%}
a{color:inherit}
main{display:block}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold-l);outline-offset:4px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* SECTION 01 - HERO */
.hero{min-height:810px;position:relative;isolation:isolate;overflow:hidden;background:#10261d;color:#fff;display:flex;flex-direction:column}
.hero-background,.hero-scrim{position:absolute;inset:0;pointer-events:none}
.hero-background{z-index:-3;background-image:url('assets/bcf-v04/hero-v10-3.webp');background-position:75% center;background-repeat:no-repeat;background-size:cover}
.hero-scrim{z-index:-2;background:linear-gradient(90deg,rgba(8,25,20,.79) 0%,rgba(8,25,20,.66) 24%,rgba(8,25,20,.38) 52%,rgba(8,25,20,.08) 76%,transparent 100%)}
.hero::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(180deg,rgba(6,19,15,.25),transparent 20%,transparent 72%,rgba(6,19,15,.6))}
.site-header{position:relative;z-index:5;width:min(1440px,calc(100% - 84px));margin-inline:auto;min-height:102px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid rgba(226,191,139,.25)}
.site-header .brand{flex:0 0 auto;display:flex;align-items:center;width:306px;max-width:38%}
.site-header .brand img{display:block;width:100%;height:auto;object-fit:contain;object-position:left}
.desktop-navigation{display:flex;align-items:center;gap:clamp(14px,1.9vw,32px)}
.desktop-navigation a{color:rgba(255,253,245,.85);font:600 12px/1.2 var(--sans);text-decoration:none;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;padding:12px 0;transition:color .2s}
.desktop-navigation a:hover,.desktop-navigation a.active{color:#f7d6a1}
.mobile-navigation{display:none;position:relative;color:#fff}
.mobile-navigation summary{cursor:pointer;display:flex;align-items:center;gap:10px;list-style:none;font:600 12px var(--sans);letter-spacing:.13em;text-transform:uppercase;padding:12px}
.mobile-navigation summary::-webkit-details-marker{display:none}
.menu-lines{width:23px;display:grid;gap:5px}
.menu-lines>span{height:2px;width:100%;background:var(--gold-l);display:block}
.mobile-navigation nav{position:absolute;right:0;top:100%;z-index:7;width:min(300px,calc(100vw - 35px));display:grid;gap:0;background:#0d281f;border:1px solid #bb935e;border-radius:10px;box-shadow:0 18px 46px rgba(0,0,0,.35);padding:10px}
.mobile-navigation nav a{display:block;text-decoration:none;color:#fff;padding:12px 14px;font-size:14px;border-radius:5px}
.mobile-navigation nav a:hover{background:rgba(255,255,255,.1)}
.hero-content{position:relative;z-index:3;flex:1;width:min(1440px,calc(100% - 84px));margin-inline:auto;padding:clamp(60px,8vw,106px) 0 50px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.hero-eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 28px;color:#edc38b;font:700 12px/1.3 var(--sans);letter-spacing:.23em;text-transform:uppercase}
.eyebrow-line{height:1px;width:45px;background:var(--gold-l);display:inline-block}
.hero-content h1{margin:0;max-width:790px;font:500 clamp(42px,5.2vw,78px)/1.07 var(--serif);letter-spacing:-.035em;color:#fff;text-wrap:balance}
.hero-content h1 span{color:#edd2aa}
.hero-description{margin:28px 0 25px;color:#f2eae0;font:400 clamp(18px,1.5vw,22px)/1.55 var(--serif);max-width:650px}
.hero-cta{display:inline-flex;align-items:center;justify-content:center;min-width:198px;padding:18px 28px;border:1px solid #d6ae73;background:linear-gradient(180deg,#bc8d52,#926634);border-radius:4px;color:#fff;text-decoration:none;font:700 13px/1.2 var(--sans);letter-spacing:.15em;box-shadow:0 10px 28px rgba(0,0,0,.23);transition:transform .2s,background .2s}
.hero-cta:hover{transform:translateY(-2px);background:#c1965f}
.hero-signature{margin:28px 0 0;font:400 12px/1.5 var(--sans);letter-spacing:.11em;color:#f1e8db;display:flex;align-items:center;gap:11px}
.hero-signature span{height:1px;width:27px;background:var(--gold-l)}
.practice-cards{position:relative;z-index:4;width:min(1440px,calc(100% - 84px));margin:0 auto 32px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.practice-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;min-height:104px;border:1px solid rgba(210,174,115,.44);border-radius:9px;padding:19px 20px;background:linear-gradient(145deg,rgba(8,33,24,.91),rgba(13,48,34,.79));backdrop-filter:blur(8px);text-decoration:none;color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.13);transition:transform .24s,border-color .24s,background .24s}
.practice-card svg{height:26px;width:26px;stroke:#d9ad75;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.practice-card span{font:600 13px/1.34 var(--sans);letter-spacing:.035em}
.practice-card:hover{transform:translateY(-4px);border-color:#e5bb81;background:rgba(10,41,29,.94)}
/* SECTION 02 - PRACTICE AREAS */
.bcf-s2{position:relative;padding:clamp(72px,7vw,120px) 0 85px;background:var(--paper);color:var(--ink)}
.bcf-s2__container,.bcf-s3__container,.bcf-s4__container{width:min(1440px,calc(100% - 84px));margin-inline:auto}
.bcf-s2__header{text-align:center;margin:0 auto 44px;max-width:1000px}
.bcf-s2__eyebrow,.bcf-s3 .section-eyebrow,.bcf-s4__eyebrow{display:flex;align-items:center;gap:16px;justify-content:center;margin:0 0 17px;color:#9e652e;font:700 12px/1.4 var(--sans);letter-spacing:.24em;text-transform:uppercase}
.bcf-s2__eyebrow span,.bcf-s3 .section-eyebrow span{display:block;width:48px;height:1px;background:#c59d68}
.bcf-s2__header h2,.bcf-s3 .section-heading h2,.bcf-s4__copy h2{margin:0 0 20px;font:500 clamp(35px,4.05vw,59px)/1.15 var(--serif);letter-spacing:-.033em;text-wrap:balance}
.bcf-s2__header h2 em,.bcf-s3 .section-heading h2 em,.bcf-s4__copy h2 em{font-weight:400;color:#a77037}
.bcf-s2__intro{font:400 clamp(16px,1.4vw,20px)/1.55 var(--serif);margin:0 auto;max-width:760px;color:#6b6258}
.bcf-s2__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:stretch}
.bcf-s2__card{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;min-height:430px;overflow:hidden;border-radius:12px;background:#1b3027;color:#fff;border:1px solid rgba(174,138,92,.42);box-shadow:0 12px 32px rgba(31,40,34,.13);transition:transform .25s,box-shadow .25s}
.bcf-s2__image,.bcf-s2__shade{position:absolute;inset:0;width:100%;height:100%}
.bcf-s2__image{object-fit:cover;z-index:-2;transition:transform .5s}
.bcf-s2__shade{z-index:-1;background:linear-gradient(180deg,rgba(2,13,8,.05) 0%,rgba(6,19,15,.37) 34%,rgba(4,23,16,.96) 98%)}
.bcf-s2__content{display:flex;flex-direction:column;align-items:flex-start;min-height:266px;padding:23px 20px 24px;width:100%}
.bcf-s2__icon{display:flex;width:39px;height:39px;align-items:center;justify-content:center;border:1px solid #c1985f88;border-radius:7px;color:#e7bf89;margin-bottom:18px}
.bcf-s2__icon svg{width:24px;height:24px}
.bcf-s2__content h3{font:500 clamp(19px,1.4vw,24px)/1.14 var(--serif);letter-spacing:-.01em;margin:0 0 10px;color:#fff}
.bcf-s2__rule{width:55px;height:1px;background:#c69962;display:block;margin-bottom:12px}
.bcf-s2__content p{margin:0 0 21px;font:400 13px/1.53 var(--sans);color:rgba(250,247,239,.86);min-height:60px}
.bcf-s2__button{margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;width:100%;padding:13px 14px;border-radius:6px;border:1px solid #d2ae7a;color:#fff;background:rgba(104,65,29,.66);text-decoration:none;font:700 11px/1 var(--sans);letter-spacing:.095em}
.bcf-s2__arrow{font-size:17px;font-weight:400}
.bcf-s2__card:hover{transform:translateY(-5px);box-shadow:0 22px 46px rgba(31,40,34,.23)}
.bcf-s2__card:hover .bcf-s2__image{transform:scale(1.035)}
/* SECTION 03 - COURSE CARDS */
.bcf-s3{background:linear-gradient(180deg,#f7f1e9,#eee5d8);color:var(--ink);padding:95px 0 115px}
.bcf-s3__container{width:min(1440px,calc(100% - 84px))}
.bcf-s3 .section-heading{text-align:center;max-width:960px;margin:0 auto 42px}
.bcf-s3 .section-heading h2{margin:0 0 17px}
.bcf-s3 .section-heading>p:last-child{font:400 clamp(16px,1.5vw,20px)/1.5 var(--serif);margin:0 auto;color:#6c5f51;max-width:755px}
.bcf-s3__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.bcf-s3__card{display:flex;flex-direction:column;overflow:hidden;background:#10251e;border:1px solid #b69a78;border-radius:13px;box-shadow:0 14px 34px rgba(35,38,27,.18);transition:transform .28s,box-shadow .28s}
.bcf-s3__card:hover{transform:translateY(-6px);box-shadow:0 23px 45px rgba(35,38,27,.25)}
.bcf-s3__art{width:100%;position:relative;overflow:hidden;aspect-ratio:1.53;background:#15251e}
.bcf-s3__art>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.bcf-s3__sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.bcf-s3__body{display:flex;flex-direction:column;align-items:stretch;flex:1;padding:25px 26px 29px;min-height:220px;background:linear-gradient(135deg,#102a20,#0b2019);color:#f7efe5}
.bcf-s3__body>p{margin:0 0 24px;font:400 17px/1.58 var(--serif);color:#ece5db;min-height:82px}
.bcf-s3__button{display:flex;justify-content:space-between;align-items:center;gap:20px;text-decoration:none;padding:17px 19px;margin-top:auto;border:1px solid #b98e56;background:#6d4a29;color:#fff;border-radius:7px;font:700 12px/1.3 var(--sans);letter-spacing:.09em}
.bcf-s3__button:hover{background:#916438}
.bcf-s3__arrow{font-size:23px;line-height:12px;font-weight:400}
/* SECTION 04 - ABOUT */
.bcf-s4{padding:clamp(75px,7vw,116px) 0;background:var(--white);color:var(--ink)}
.bcf-s4__container{display:grid;grid-template-columns:minmax(340px,420px) minmax(0,1fr);gap:clamp(28px,4vw,54px);align-items:stretch}
.bcf-s4__photo-wrap{display:flex;min-width:0}
.bcf-s4__photo-frame{width:100%;max-width:none!important;height:100%;min-height:100%;border-radius:18px;overflow:hidden;background:#1a251f;box-shadow:0 25px 48px rgba(12,30,24,.17)}
.bcf-s4__photo-frame>img{display:block;width:100%!important;height:100%!important;object-fit:cover;object-position:center top;filter:none!important}
.bcf-s4__copy{display:flex;flex-direction:column;justify-content:center;min-width:0}
.bcf-s4__eyebrow{justify-content:flex-start;color:#a4763c;margin-bottom:22px}
.bcf-s4__copy h2{font-size:clamp(37px,4vw,58px);max-width:16ch;margin-bottom:15px}
.bcf-s4__credential{margin:0 0 16px;font:700 15px/1.5 var(--sans);letter-spacing:.015em}
.bcf-s4__credential span{font-weight:400;color:#8d6d4c}
.bcf-s4__biography{font:400 15.3px/1.76 var(--sans);color:#50544e;max-width:780px;margin:0 0 15px;text-wrap:pretty;hyphens:auto}
.bcf-s4__metrics{margin:17px 0 21px}
/* SECTION 05 - FOOTER */
.bcf-footer{margin:0;background:#09231b;color:#fff;padding:0 0 24px}
.bcf-footer__inner,.bcf-footer__bottom{width:min(1440px,calc(100% - 84px));margin-inline:auto}
.bcf-footer__logo{object-fit:contain;object-position:left}
.bcf-footer__brand{min-width:0}
.bcf-footer__bottom nav a{transition:color .2s}
/* MID WIDTH */
@media(max-width:1180px){.site-header,.hero-content,.practice-cards,.bcf-s2__container,.bcf-s3__container,.bcf-s4__container,.bcf-footer__inner,.bcf-footer__bottom{width:calc(100% - 56px)}.site-header .brand{width:255px}.desktop-navigation{gap:17px}.desktop-navigation a{font-size:11px}.bcf-s2__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.bcf-s2__card{min-height:390px}.bcf-s2__content{min-height:242px}.bcf-s2__content p{min-height:44px}.bcf-s3__body{padding:21px 19px 25px}.bcf-s3__body>p{font-size:16px}.bcf-s4__container{grid-template-columns:minmax(300px,380px) 1fr}.bcf-s4__copy h2{font-size:42px}}
@media(max-width:900px){.site-header{min-height:84px}.desktop-navigation{display:none}.mobile-navigation{display:block}.hero{min-height:800px}.hero-content{padding:80px 0 70px}.hero-content h1{font-size:clamp(42px,6.2vw,61px)}.practice-cards{grid-template-columns:repeat(5, minmax(0,1fr));gap:7px}.practice-card{padding:15px 9px;align-items:center;text-align:center;min-height:93px}.practice-card svg{width:23px;height:23px}.practice-card span{font-size:11px}.bcf-s3__grid{gap:14px}.bcf-s3__art{aspect-ratio:1.35}.bcf-s3__body>p{font-size:15px;line-height:1.46}.bcf-s3__button{font-size:10px;padding:15px 12px}.bcf-s4__container{grid-template-columns:1fr;gap:36px}.bcf-s4__photo-wrap{max-width:500px;width:100%;margin-inline:auto}.bcf-s4__photo-frame{height:auto;min-height:unset}.bcf-s4__photo-frame>img{height:auto!important;object-fit:contain}.bcf-s4__copy h2{max-width:none}}
@media(max-width:720px){.site-header,.hero-content,.practice-cards,.bcf-s2__container,.bcf-s3__container,.bcf-s4__container,.bcf-footer__inner,.bcf-footer__bottom{width:calc(100% - 36px)}.site-header{gap:10px;min-height:78px}.site-header .brand{width:min(258px,68%);max-width:none}.hero{min-height:800px}.hero-background{background-position:68% center!important}.hero-scrim{background:linear-gradient(180deg,rgba(8,25,20,.64),rgba(8,25,20,.38) 40%,rgba(8,25,20,.74) 100%)!important}.hero-content{padding:55px 0 80px;justify-content:flex-start}.hero-eyebrow{font-size:10px;letter-spacing:.15em;margin-top:8px}.hero-content h1{font-size:clamp(35px,8.5vw,52px);line-height:1.11;max-width:570px}.desktop-break,.wide-break{display:none}.hero-description{font-size:18px;line-height:1.45;max-width:450px;margin:22px 0}.hero-cta{min-width:180px;padding:15px 22px}.hero-signature{font-size:10px;margin:21px 0}.practice-cards{grid-template-columns:repeat(5, minmax(0,1fr));gap:5px;margin-bottom:18px}.practice-card{gap:7px;padding:12px 3px;min-height:82px;border-radius:6px}.practice-card svg{width:20px;height:20px}.practice-card span{font-size:9.5px;letter-spacing:0}.bcf-s2{padding:75px 0 82px}.bcf-s2__header h2,.bcf-s3 .section-heading h2{font-size:clamp(32px,7.8vw,45px)}.bcf-s2__desktop-break{display:none}.bcf-s2__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bcf-s2__card{min-height:370px}.bcf-s2__content{min-height:250px;padding:18px 14px 18px}.bcf-s2__content h3{font-size:19px}.bcf-s2__content p{font-size:12px;min-height:64px}.bcf-s2__button{font-size:10px;padding:12px}.bcf-s3__grid{grid-template-columns:1fr;max-width:520px;margin:auto;gap:22px}.bcf-s3__art{aspect-ratio:1.53}.bcf-s3__body{min-height:unset;padding:23px 20px}.bcf-s3__body>p{min-height:unset;font-size:17px;margin-bottom:20px}.bcf-s3__button{font-size:12px;padding:16px}.bcf-s4{padding:75px 0}.bcf-s4__photo-wrap{max-width:420px}.bcf-s4__copy h2{font-size:40px}.bcf-s4__biography{font-size:15px}.bcf-footer__inner{padding:52px 0 38px}}
@media(max-width:430px){.hero{min-height:770px}.hero-content h1{font-size:35px}.hero-content{padding-bottom:48px}.practice-cards{grid-template-columns:repeat(5,minmax(0,1fr))}.practice-card svg{width:17px;height:17px}.practice-card span{font-size:8.5px}.practice-card{padding:10px 3px;min-height:78px}.bcf-s2__grid{grid-template-columns:1fr;max-width:430px;margin:auto}.bcf-s2__card{min-height:350px}.bcf-s2__content{min-height:250px}.bcf-s2__content p{min-height:38px}.bcf-s4__copy h2{font-size:36px}.bcf-s4__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
