/* 9 de Julho Contabilidade — LP v01 */
:root{
  --black:#0A0A0A;
  --bronze-dark:#2A1C16;
  --bronze-warm:#6C472C;
  --gold:#B8823C;
  --gold-soft:#D7B06A;
  --ivory:#F4E9D4;
  --white:#ffffff;
  --text:rgba(244,233,212,.88);
  --muted:rgba(244,233,212,.66);
  --line:rgba(215,176,106,.36);
  --max:1160px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--gold) #100d0b}
body{margin:0;font-family:'Poppins',Arial,sans-serif;background:var(--black);color:var(--ivory);min-height:100vh;overflow-x:hidden;letter-spacing:.015em}
body::-webkit-scrollbar{width:10px}
body::-webkit-scrollbar-track{background:#100d0b}
body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--gold-soft),var(--bronze-warm));border-radius:999px;border:2px solid #100d0b}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit}
.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
#servicos,#sobre,#contato{scroll-margin-top:108px}
.section-panel{position:relative;overflow:hidden;background:var(--black)}

.site-header{position:fixed;top:18px;left:50%;transform:translateX(-50%);width:min(1210px,calc(100% - 34px));height:76px;z-index:80;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:9px 14px 9px 16px;border:1px solid rgba(215,176,106,.30);border-radius:999px;background:linear-gradient(180deg,rgba(10,10,10,.90),rgba(42,28,22,.78));box-shadow:0 22px 72px rgba(0,0,0,.42),inset 0 1px 0 rgba(244,233,212,.08);backdrop-filter:blur(22px) saturate(1.12);-webkit-backdrop-filter:blur(22px) saturate(1.12)}
.brand{display:flex;align-items:center;min-width:0}
.brand-shell{height:68px;width:176px;display:flex;align-items:center;justify-content:flex-start;padding:0;border-radius:0;background:transparent;border:0;box-shadow:none;overflow:visible}
.brand-shell img{height:68px;width:auto;max-width:none;object-fit:contain;filter:drop-shadow(0 0 14px rgba(215,176,106,.20))}
.main-nav{display:flex;align-items:center;gap:5px}
.main-nav a{padding:12px 16px;border-radius:999px;color:rgba(244,233,212,.76);font-size:13px;letter-spacing:.095em;text-transform:uppercase;font-weight:600;transition:.25s ease}
.main-nav a:hover,.main-nav a:focus-visible{color:var(--ivory);background:rgba(184,130,60,.14);box-shadow:0 0 0 1px rgba(215,176,106,.26),0 0 28px rgba(184,130,60,.12);outline:none;transform:translateY(-1px)}
.menu-toggle{display:none;background:rgba(184,130,60,.12);border:1px solid rgba(215,176,106,.28);width:46px;height:46px;border-radius:999px;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.menu-toggle span{width:20px;height:2px;background:var(--ivory);border-radius:4px;transition:transform .25s ease,opacity .25s ease}

.hero{min-height:100vh;padding:130px 0 76px;display:flex;align-items:center;background:#080706}
.hero-bg{position:absolute;inset:-2%;z-index:0;background-image:linear-gradient(90deg,rgba(10,10,10,.94) 0%,rgba(10,10,10,.82) 38%,rgba(42,28,22,.28) 66%,rgba(10,10,10,.72) 100%),linear-gradient(180deg,rgba(10,10,10,.12) 0%,rgba(10,10,10,.35) 60%,rgba(10,10,10,.98) 100%),url('../images/bg-hero.jpg');background-size:cover;background-position:center center;filter:saturate(.88) contrast(1.06) brightness(.68);transform:scale(1.02)}
.hero-inner{position:relative;z-index:3;display:grid;grid-template-columns:minmax(430px,1fr) minmax(360px,.86fr);align-items:center;gap:70px;min-height:calc(100vh - 180px)}
.hero-copy{max-width:635px;padding:18px 0}
.eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--gold-soft);text-transform:uppercase;letter-spacing:.275em;font-size:12px;font-weight:700;line-height:1.2}
.eyebrow::after{content:"";width:72px;height:1px;background:linear-gradient(90deg,var(--gold),rgba(215,176,106,0))}
h1{margin:20px 0 20px;font-family:'Playfair Display',Georgia,serif;font-size:clamp(42px,5.15vw,70px);line-height:1.02;letter-spacing:-.02em;font-weight:700;color:var(--ivory);text-wrap:balance;text-shadow:0 14px 40px rgba(0,0,0,.45)}
.hero-subtitle{font-size:clamp(16px,1.38vw,19px);line-height:1.78;color:rgba(244,233,212,.82);max-width:610px;margin:0 0 30px}
.hero-logo-wrap{position:relative;display:flex;align-items:center;justify-content:center;min-height:560px}
.hero-logo-wrap::before{content:"";position:absolute;width:120%;height:88%;border-radius:50%;background:radial-gradient(circle,rgba(215,176,106,.22) 0%,rgba(184,130,60,.12) 35%,rgba(108,71,44,.06) 52%,rgba(0,0,0,0) 74%);filter:blur(34px);opacity:.9}
.hero-logo-card{position:relative;width:min(470px,38vw);aspect-ratio:1;border-radius:38px;display:flex;align-items:center;justify-content:center;padding:30px;background:linear-gradient(145deg,rgba(10,10,10,.82),rgba(42,28,22,.34));border:1px solid rgba(215,176,106,.64);box-shadow:inset 0 1px 0 rgba(244,233,212,.10),0 34px 86px rgba(0,0,0,.52),0 0 0 5px rgba(184,130,60,.055),0 0 46px rgba(215,176,106,.20);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.hero-logo-card::before{content:"";position:absolute;inset:12px;border-radius:28px;border:1px solid rgba(215,176,106,.20);pointer-events:none}
.hero-logo-card img{position:relative;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 34px rgba(0,0,0,.45)) drop-shadow(0 0 22px rgba(215,176,106,.15))}
.hero-glow{position:absolute;border-radius:50%;filter:blur(70px);z-index:1;pointer-events:none}
.hero-glow-left{width:420px;height:420px;background:rgba(108,71,44,.17);left:5%;top:16%;opacity:.55}
.hero-glow-right{width:650px;height:560px;background:rgba(184,130,60,.14);right:0;top:14%;opacity:.45}
.bottom-fade{position:absolute;left:0;right:0;bottom:-1px;height:180px;background:linear-gradient(180deg,rgba(10,10,10,0),#0A0A0A 88%);z-index:2;pointer-events:none}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border-radius:10px;font-weight:800;letter-spacing:.095em;text-transform:uppercase;font-size:12px;position:relative;overflow:hidden;border:1px solid rgba(215,176,106,.66);transition:.25s ease}
.btn::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.24),rgba(255,255,255,0));transform:translateX(-120%);transition:transform .65s ease}
.btn:hover::before,.btn:focus-visible::before{transform:translateX(120%)}
.btn:hover,.btn:focus-visible{transform:translateY(-2px);outline:none}
.btn-primary{background:linear-gradient(135deg,var(--bronze-dark),var(--bronze-warm) 42%,var(--gold));color:var(--ivory);box-shadow:0 18px 38px rgba(0,0,0,.35),0 0 0 1px rgba(215,176,106,.18),0 0 24px rgba(184,130,60,.12)}

.services{padding:112px 0 108px;background:linear-gradient(180deg,#0A0A0A 0%,#120d0a 34%,#0A0A0A 100%)}
.services-bg{position:absolute;inset:0;background-image:linear-gradient(180deg,rgba(10,10,10,.92),rgba(10,10,10,.68) 32%,rgba(10,10,10,.84)),url('../images/bg-sessao02.jpg');background-size:cover;background-position:center 25%;filter:saturate(.34) sepia(.35) brightness(.48);opacity:.56}
.services-light{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none}
.services-light-a{width:620px;height:350px;left:-12%;top:18%;background:rgba(184,130,60,.15)}
.services-light-b{width:520px;height:420px;right:-9%;bottom:10%;background:rgba(108,71,44,.20)}
.section-title{position:relative;z-index:2;text-align:center;margin:0 auto 68px;width:min(650px,calc(100% - 40px))}
.section-title span{display:block;color:rgba(244,233,212,.74);font-size:12px;letter-spacing:.255em;text-transform:uppercase;margin-bottom:8px}
.section-title h2{margin:0;font-family:'Playfair Display',Georgia,serif;font-size:clamp(34px,4vw,52px);line-height:1.1;color:var(--gold-soft)}
.services-timeline{position:relative;z-index:2;display:grid;gap:64px}
.service-item{position:relative;display:grid;grid-template-columns:300px minmax(340px,480px);align-items:center;justify-content:center;gap:0;min-height:236px}
.service-right{grid-template-columns:minmax(340px,480px) 300px}
.service-right .service-photo{grid-column:2;grid-row:1}
.service-right .service-card{grid-column:1;grid-row:1;margin-right:-58px;margin-left:0;text-align:left}
.service-left .service-card{margin-left:-58px}
.service-photo{position:relative;justify-self:center;margin:0;width:300px;height:300px;aspect-ratio:1;border-radius:18px;overflow:hidden;border:1px solid rgba(215,176,106,.58);background:#080604;box-shadow:0 28px 60px rgba(0,0,0,.40),0 0 32px rgba(184,130,60,.10)}
.service-image{width:100%;height:100%;object-fit:cover}
.service-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,.02),rgba(10,10,10,.20));pointer-events:none}
.service-logo-badge{position:absolute;z-index:3;right:18px;bottom:18px;width:126px;height:126px;border-radius:24px;padding:8px;display:flex;align-items:center;justify-content:center;background:rgba(10,10,10,.82);border:1px solid rgba(215,176,106,.66);box-shadow:0 14px 34px rgba(0,0,0,.42),0 0 20px rgba(184,130,60,.18);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.service-logo-badge img{width:100%;height:100%;object-fit:contain}
.service-card{position:relative;margin:0;width:100%;padding:24px 27px 23px;border-radius:16px;background:linear-gradient(145deg,rgba(42,28,22,.64),rgba(10,10,10,.76));border:1px solid rgba(215,176,106,.54);box-shadow:inset 0 1px 0 rgba(244,233,212,.07),0 20px 46px rgba(0,0,0,.34);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.service-card>span{display:block;color:var(--gold);font-size:10px;text-transform:uppercase;letter-spacing:.195em;font-weight:700;margin-bottom:7px}
.service-card h3{margin:0 0 12px;font-size:20px;line-height:1.2;text-transform:uppercase;letter-spacing:.055em;color:var(--ivory)}
.service-list{list-style:none;margin:0;padding:0;display:grid;gap:7px;color:rgba(244,233,212,.82);font-size:13.5px;line-height:1.38}
.service-list li{position:relative;padding-left:18px;margin:0}
.service-list li:last-child{margin-bottom:0}
.service-list li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--gold-soft),var(--gold));box-shadow:0 0 9px rgba(215,176,106,.30)}
.service-item:hover .service-card{border-color:rgba(215,176,106,.82);box-shadow:inset 0 1px 0 rgba(244,233,212,.10),0 26px 58px rgba(0,0,0,.44),0 0 28px rgba(184,130,60,.10)}
.section-cta{position:relative;z-index:2;text-align:center;margin-top:58px}

.about{padding:112px 0 100px;background:var(--black)}
.about-bg{position:absolute;inset:0;background:radial-gradient(circle at 16% 28%,rgba(184,130,60,.13),rgba(0,0,0,0) 34%),radial-gradient(circle at 88% 76%,rgba(108,71,44,.18),rgba(0,0,0,0) 40%),linear-gradient(135deg,#0A0A0A 0%,#160f0c 48%,#0A0A0A 100%)}
.about-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(360px,.9fr) minmax(430px,1fr);gap:62px;align-items:stretch}
.about-portrait{position:relative;display:flex;height:100%}
.about-portrait::before{content:"";position:absolute;inset:5% -10%;border-radius:50%;background:radial-gradient(circle,rgba(215,176,106,.12),rgba(0,0,0,0) 68%);filter:blur(34px)}
.about-portrait img{position:relative;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center center;border-radius:28px;border:1px solid rgba(215,176,106,.40);box-shadow:0 34px 90px rgba(0,0,0,.50),0 0 40px rgba(184,130,60,.10);filter:saturate(.88) contrast(1.04) brightness(.88)}
.about-copy{position:relative;max-width:660px}
.about-copy h2,.contact-heading h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(38px,4.4vw,60px);line-height:1.03;margin:16px 0 22px;color:var(--ivory);letter-spacing:-.01em}
.about-copy p{font-size:15px;line-height:1.78;margin:0 0 16px;color:rgba(244,233,212,.82)}
.about-copy .btn{margin-top:10px}

.contact{padding:105px 0 88px;background:#080706}
.contact-glow{position:absolute;inset:0;background:radial-gradient(circle at 10% 0,rgba(184,130,60,.14),rgba(0,0,0,0) 32%),radial-gradient(circle at 95% 65%,rgba(108,71,44,.16),rgba(0,0,0,0) 34%)}
.contact-shell{position:relative;z-index:2;border:1px solid rgba(215,176,106,.30);border-radius:32px;padding:42px;background:linear-gradient(135deg,rgba(42,28,22,.58),rgba(10,10,10,.90));box-shadow:0 34px 90px rgba(0,0,0,.48),inset 0 1px 0 rgba(244,233,212,.08);overflow:hidden}
.contact-shell::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 0,rgba(184,130,60,.16),rgba(0,0,0,0) 46%);pointer-events:none}
.contact-watermark-logo{position:absolute;right:28px;top:18px;width:220px;height:auto;opacity:.52;filter:drop-shadow(0 0 28px rgba(215,176,106,.22));pointer-events:none}
.contact-heading,.contact-grid,.contact-main-cta{position:relative;z-index:2}
.contact-heading{max-width:735px;margin-bottom:28px}
.contact-heading p{font-size:16px;line-height:1.65;color:rgba(244,233,212,.68);margin:0}
.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:24px}
.contact-card{min-height:180px;padding:23px;border-radius:22px;border:1px solid rgba(215,176,106,.24);background:linear-gradient(180deg,rgba(244,233,212,.05),rgba(244,233,212,.018));box-shadow:inset 0 1px 0 rgba(244,233,212,.06),0 20px 50px rgba(0,0,0,.22);transition:.28s ease;overflow:hidden;word-break:break-word;color:var(--ivory)}
.contact-card:hover,.contact-card:focus-visible{transform:translateY(-5px);border-color:rgba(215,176,106,.58);background:linear-gradient(180deg,rgba(184,130,60,.12),rgba(244,233,212,.025));box-shadow:0 26px 60px rgba(0,0,0,.30),0 0 30px rgba(184,130,60,.08);outline:none}
.contact-icon{width:52px;height:52px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(184,130,60,.20),rgba(108,71,44,.16));border:1px solid rgba(215,176,106,.28);margin-bottom:18px}
.contact-icon img{width:29px;height:29px;filter:invert(79%) sepia(29%) saturate(688%) hue-rotate(359deg) brightness(92%) contrast(88%)}
.contact-card strong{display:block;font-size:13px;letter-spacing:.115em;text-transform:uppercase;margin-bottom:9px;color:var(--gold-soft)}
.contact-card em{display:block;font-style:normal;color:rgba(244,233,212,.76);font-size:13.5px;line-height:1.55}
.contact-card-button{appearance:none;width:100%;font:inherit;text-align:left;cursor:pointer}
.contact-main-cta{margin-top:30px}
.contact-map-modal{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:28px;opacity:0;pointer-events:none;transition:opacity .25s ease;z-index:8}
.contact-map-modal.is-open{opacity:1;pointer-events:auto}
.contact-map-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.54);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.contact-map-dialog{position:relative;z-index:2;width:min(840px,100%);max-height:calc(100% - 24px);padding:20px;border-radius:28px;border:1px solid rgba(215,176,106,.76);background:linear-gradient(180deg,rgba(42,28,22,.92),rgba(10,10,10,.96));box-shadow:0 30px 70px rgba(0,0,0,.52),0 0 34px rgba(184,130,60,.15);overflow:auto}
.contact-map-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.contact-map-eyebrow{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.195em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.contact-map-header h3{margin:0;color:var(--ivory);font-size:clamp(20px,2vw,28px);line-height:1.18;max-width:560px}
.contact-map-close{flex:0 0 auto;min-width:156px;min-height:46px;align-self:flex-start}
.contact-map-frame{border-radius:20px;overflow:hidden;border:1px solid rgba(215,176,106,.26);background:#0A0A0A}
.contact-map-frame iframe{display:block;width:100%;height:min(390px,46vh);border:0}

.whatsapp-float{position:fixed;right:18px;bottom:18px;width:58px;height:58px;border-radius:50%;background:radial-gradient(circle at 34% 30%,#66f59a 0%,#3edd74 34%,#25d366 66%,#17b652 100%);border:2px solid rgba(255,255,255,.16);display:inline-flex;align-items:center;justify-content:center;box-shadow:0 18px 36px rgba(0,0,0,.30),0 0 0 5px rgba(37,211,102,.16);transition:.24s ease;z-index:90}
.whatsapp-float:hover,.whatsapp-float:focus-visible{transform:translateY(-2px) scale(1.03);outline:none}
.whatsapp-float img{width:42px;height:42px;filter:brightness(0) invert(1)}
.footer{position:relative;padding:20px 0 46px;background:#080706;color:rgba(244,233,212,.56)}
.footer-shell{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-radius:999px;background:linear-gradient(180deg,rgba(244,233,212,.05),rgba(244,233,212,.018));border:1px solid rgba(215,176,106,.20);box-shadow:inset 0 1px 0 rgba(244,233,212,.05),0 24px 60px rgba(0,0,0,.22)}
.footer small{font-size:12px}
.footer a{color:var(--gold-soft);font-weight:800}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}
.reveal.is-visible{opacity:1;transform:none}
.reveal-delay{transition-delay:.12s}

@media (max-width:1020px){
  .hero{padding-top:112px}
  .hero-inner{grid-template-columns:1fr;gap:34px;text-align:left;min-height:auto;padding-top:34px}
  .hero-copy{max-width:720px}
  .hero-logo-wrap{min-height:auto;padding-bottom:72px}
  .hero-logo-card{width:min(430px,70vw)}
  .service-item,.service-right{grid-template-columns:230px minmax(0,1fr);justify-content:start;margin-left:10px;gap:0;min-height:236px}
  .service-right{grid-template-columns:230px minmax(0,1fr)}
  .service-left .service-photo,.service-right .service-photo{grid-column:1;grid-row:1}
  .service-left .service-card{grid-column:2;grid-row:1;margin-left:-46px}
  .service-right .service-card{grid-column:2;grid-row:1;margin-left:-46px;margin-right:0}
  .service-photo{width:218px;height:218px}
  .service-logo-badge{width:96px;height:96px;border-radius:20px}
  .about-inner{grid-template-columns:1fr;gap:42px}
  .about-portrait{max-width:620px;margin-inline:auto;width:100%}
  .about-portrait[data-depth]{transform:none!important}
  .contact-grid{grid-template-columns:1fr 1fr}
}

@media (max-width:760px){
  .container{width:min(var(--max),calc(100% - 32px))}
  .site-header{top:12px;width:calc(100% - 24px);height:64px;padding:8px 10px 8px 12px}
  .brand-shell{height:54px;width:126px;padding:0;border-radius:0;background:transparent;border:0;box-shadow:none}.brand-shell img{height:54px;width:auto;max-width:none}
  .menu-toggle{display:flex}.menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle.is-open span:nth-child(2){opacity:0}.menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .main-nav{position:absolute;top:76px;left:0;right:0;display:grid;gap:8px;padding:12px;border-radius:26px;background:rgba(10,10,10,.96);border:1px solid rgba(215,176,106,.28);box-shadow:0 26px 80px rgba(0,0,0,.55);opacity:0;pointer-events:none;transform:translateY(-10px);transition:.25s ease;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
  .main-nav.is-open{opacity:1;pointer-events:auto;transform:none}.main-nav a{text-align:center;background:rgba(244,233,212,.025)}
  .hero{padding:102px 0 52px;min-height:auto}.hero-bg{background-position:57% center;filter:saturate(.82) contrast(1.05) brightness(.52)}
  .hero-inner{gap:24px;padding-top:22px}.eyebrow{letter-spacing:.195em}.eyebrow::after{width:46px}
  h1{font-size:clamp(36px,10.5vw,50px)}.hero-subtitle{font-size:15.5px;line-height:1.68}
  .hero-logo-wrap{padding-bottom:36px}.hero-logo-card{width:min(360px,88vw);padding:22px;border-radius:28px}.hero-logo-card::before{border-radius:20px}
  .bottom-fade{height:110px}
  .services{padding:78px 0 72px}.section-title{margin-bottom:44px}.services-timeline{gap:42px}
  .service-item,.service-right{grid-template-columns:1fr;gap:14px}
  .service-photo,.service-right .service-photo{grid-column:1;grid-row:1;width:min(82vw,300px);height:min(82vw,300px);max-width:none;margin-inline:auto}
  .service-card,.service-right .service-card{grid-column:1;grid-row:2;width:100%;max-width:520px;margin-inline:auto;padding:22px 22px 21px}
  .service-logo-badge{right:14px;bottom:14px;width:90px;height:90px;border-radius:18px}
  .section-cta{margin-top:44px}
  .about{padding:78px 0 74px}.about-inner{gap:30px}.about-portrait img{height:100%}.about-copy h2,.contact-heading h2{font-size:38px}.about-copy p{font-size:14.5px;line-height:1.72}
  .contact{padding:76px 0 68px}.contact-shell{padding:28px 20px;border-radius:26px}.contact-watermark-logo{right:14px;top:14px;width:126px;opacity:.34}.contact-grid{grid-template-columns:1fr}.contact-card{min-height:auto}
  .contact-map-modal{padding:14px}.contact-map-dialog{width:100%;padding:16px;border-radius:22px}.contact-map-header{flex-direction:column;align-items:stretch}.contact-map-close{width:100%;min-width:0}.contact-map-frame iframe{height:min(46vh,310px)}
  .footer-shell{border-radius:28px;justify-content:center;text-align:center}.whatsapp-float{right:14px;bottom:14px;width:56px;height:56px}
}

@media (max-width:420px){
  .btn{width:100%;padding-inline:18px}.service-list{font-size:12.5px}.contact-card{padding:20px}.footer small{font-size:11.5px}
}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

/* v04 — seção 02 ajustada para ficar com o layout do site original enviado */
.service-item{
  grid-template-columns:minmax(552px,624px) minmax(320px,420px) !important;
  gap:24px !important;
  min-height:auto !important;
  align-items:center !important;
  justify-content:stretch !important;
}
.service-right{
  grid-template-columns:minmax(320px,420px) minmax(552px,624px) !important;
  justify-content:stretch !important;
}
.service-left .service-photo{
  grid-column:1 !important;
  grid-row:1 !important;
}
.service-left .service-card{
  grid-column:2 !important;
  grid-row:1 !important;
  margin-left:0 !important;
}
.service-right .service-photo{
  grid-column:2 !important;
  grid-row:1 !important;
}
.service-right .service-card{
  grid-column:1 !important;
  grid-row:1 !important;
  margin-right:0 !important;
  margin-left:0 !important;
}
.service-photo{
  width:min(100%,624px) !important;
  height:auto !important;
  aspect-ratio:3 / 2 !important;
  justify-self:stretch !important;
}
.service-image,
.service-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  background:#050505 !important;
  filter:saturate(1.02) contrast(1.03) brightness(.95) !important;
}
.service-card{
  margin:0 !important;
  width:min(100%,420px) !important;
}
.service-logo-badge{
  width:132px !important;
  height:132px !important;
  border-radius:24px !important;
  right:18px !important;
  bottom:18px !important;
}

@media (max-width:760px){
  .service-item,
  .service-right{
    grid-template-columns:1fr !important;
    gap:14px !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
    justify-items:center !important;
  }
  .service-left .service-photo,
  .service-right .service-photo,
  .service-left .service-card,
  .service-right .service-card{
    grid-column:1 !important;
  }
  .service-left .service-photo,
  .service-right .service-photo{
    grid-row:1 !important;
  }
  .service-left .service-card,
  .service-right .service-card{
    grid-row:2 !important;
    margin:0 auto !important;
  }
  .services{
    overflow-x:hidden !important;
  }
  .services .services-timeline{
    width:min(100% - 32px,var(--max)) !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }
  .services .service-photo,
  .services .service-right .service-photo{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    aspect-ratio:3 / 2 !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
  }
  .services .service-card,
  .services .service-left .service-card,
  .services .service-right .service-card{
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
  }
  .service-logo-badge{
    width:104px !important;
    height:104px !important;
    border-radius:20px !important;
    right:14px !important;
    bottom:14px !important;
  }
}

/* v05 — sessão 03: imagem com EXATAMENTE a altura do bloco de texto no desktop */
@media (min-width:1021px){
  .about-inner{
    align-items:stretch !important;
  }
  .about-copy{
    align-self:start !important;
  }
  .about-portrait{
    position:relative !important;
    align-self:stretch !important;
    height:auto !important;
    min-height:0 !important;
    max-width:none !important;
    margin:0 !important;
    overflow:hidden !important;
    border-radius:28px !important;
  }
  .about-portrait[data-depth]{
    transform:none !important;
  }
  .about-portrait img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    object-position:center 56% !important;
    margin:0 !important;
  }
}

/* Em telas onde os blocos ficam empilhados, mantém um recorte horizontal equilibrado */
@media (max-width:1020px){
  .about-portrait{
    position:relative !important;
    width:min(100%,620px) !important;
    height:auto !important;
    aspect-ratio:4 / 3 !important;
    overflow:hidden !important;
    border-radius:28px !important;
  }
  .about-portrait img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    object-position:center 56% !important;
    margin:0 !important;
  }
}

/* v06 — contato inspirado no layout/efeitos do site Ajales, adaptado à paleta 9 de Julho */
.contact-shell{
  padding:46px 48px 42px !important;
  overflow:visible !important;
}
.contact-topline{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:minmax(0,1fr) 250px;
  align-items:start;
  gap:36px;
  min-height:235px;
}
.contact-heading{
  max-width:720px !important;
  margin-bottom:0 !important;
}
.contact-logo-zone{
  display:flex;
  justify-content:center;
  align-items:flex-start;
  min-height:225px;
  padding-top:0;
}
.contact-watermark-logo{
  position:relative !important;
  right:auto !important;
  top:auto !important;
  width:220px !important;
  height:220px !important;
  object-fit:contain;
  opacity:1 !important;
  border-radius:50%;
  background:rgba(4,3,2,.72);
  border:1px solid rgba(244,233,212,.30);
  box-shadow:
    0 0 0 1px rgba(215,176,106,.18),
    0 0 34px rgba(244,233,212,.55),
    0 0 72px rgba(215,176,106,.40),
    0 0 128px rgba(184,130,60,.28),
    0 24px 60px rgba(0,0,0,.40) !important;
  filter:drop-shadow(0 0 22px rgba(244,233,212,.28)) !important;
  pointer-events:none;
}
.contact-grid{
  position:relative;
  z-index:3;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:20px !important;
  margin-top:34px !important;
}
.contact-card{
  min-height:190px !important;
  padding:25px 26px !important;
  border-radius:24px !important;
  border:1px solid rgba(215,176,106,.24) !important;
  background:linear-gradient(180deg,rgba(244,233,212,.075),rgba(42,28,22,.28)) !important;
  box-shadow:inset 0 1px 0 rgba(244,233,212,.10),0 20px 55px rgba(0,0,0,.24),0 10px 34px rgba(184,130,60,.12) !important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),border-color .28s cubic-bezier(.2,.8,.2,1),background .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s cubic-bezier(.2,.8,.2,1) !important;
  overflow:visible !important;
  word-break:normal !important;
  overflow-wrap:break-word;
}
.contact-card:hover,.contact-card:focus-visible{
  transform:translateY(-5px) !important;
  border-color:rgba(244,233,212,.60) !important;
  background:linear-gradient(180deg,rgba(215,176,106,.14),rgba(42,28,22,.24)) !important;
  box-shadow:inset 0 1px 0 rgba(244,233,212,.15),0 28px 68px rgba(0,0,0,.32),0 0 36px rgba(215,176,106,.16) !important;
  outline:none;
}
.contact-card strong{
  display:block;
  font-size:14px !important;
  letter-spacing:.135em !important;
  text-transform:uppercase;
  margin-bottom:10px !important;
  color:var(--gold-soft) !important;
}
.contact-card em{
  display:block;
  font-style:normal;
  color:rgba(244,233,212,.84) !important;
  font-size:16px !important;
  line-height:1.48 !important;
  font-weight:600;
  word-break:normal !important;
  overflow-wrap:anywhere;
}
.contact-main-cta-wrap{
  position:relative;
  z-index:3;
  display:flex;
  justify-content:center;
  margin-top:38px;
}
.contact-main-cta{
  margin-top:0 !important;
}

/* Efeito dos ícones portado do site Ajales e convertido para dourado/champagne */
.contact-card-animated .contact-icon-animated{
  width:auto !important;
  height:auto !important;
  display:block !important;
  margin-bottom:10px !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.contact-card-animated .contact-anim-item{
  position:relative;
  display:inline-block;
  width:60px;
  height:84px;
  color:var(--gold-soft);
}
.contact-card-animated .contact-anim-svg{
  display:block;
  transition:all .3s;
  padding:.7rem;
  height:60px;
  width:60px;
  border-radius:100%;
  color:inherit;
  fill:currentColor;
  background:linear-gradient(135deg,rgba(215,176,106,.26),rgba(244,233,212,.08));
  box-shadow:inset 0 0 20px rgba(244,233,212,.28),inset 0 0 5px rgba(244,233,212,.48),0 5px 5px rgba(0,0,0,.20),0 0 24px rgba(215,176,106,.10);
}
.contact-card-instagram .contact-anim-svg{
  padding:.58rem;
}
.contact-card-animated .contact-anim-text{
  opacity:0;
  border-radius:5px;
  padding:5px 8px;
  transition:all .3s;
  color:var(--ivory);
  background-color:rgba(184,130,60,.50);
  position:absolute;
  z-index:5;
  left:0;
  top:68px;
  white-space:nowrap;
  pointer-events:none;
  font-size:12px;
  font-weight:700;
  box-shadow:-5px 0 1px rgba(215,176,106,.12),-10px 0 1px rgba(215,176,106,.08),inset 0 0 18px rgba(244,233,212,.18),0 5px 12px rgba(0,0,0,.18);
}
.contact-card-animated .contact-anim-layer{
  opacity:0;
  position:absolute;
  left:0;
  top:0;
  height:60px;
  width:60px;
  border-radius:50%;
  border:1px solid currentColor;
  background:rgba(215,176,106,.05);
  box-shadow:inset 0 0 20px rgba(244,233,212,.24),inset 0 0 5px rgba(244,233,212,.42),0 5px 5px rgba(0,0,0,.18);
  transition:all .3s;
  pointer-events:none;
}
.contact-card-animated:hover .contact-anim-svg,
.contact-card-animated:focus-visible .contact-anim-svg{
  transform:translate(15px,-15px);
  border-radius:100%;
}
.contact-card-animated:hover .contact-anim-text,
.contact-card-animated:focus-visible .contact-anim-text{
  opacity:1;
  transform:translate(25px,-2px) skew(-5deg);
}
.contact-card-animated:hover .contact-anim-layer,
.contact-card-animated:focus-visible .contact-anim-layer{
  opacity:1;
}
.contact-card-animated:hover .contact-anim-layer:nth-child(1),
.contact-card-animated:focus-visible .contact-anim-layer:nth-child(1){opacity:.2}
.contact-card-animated:hover .contact-anim-layer:nth-child(2),
.contact-card-animated:focus-visible .contact-anim-layer:nth-child(2){opacity:.4;transform:translate(5px,-5px)}
.contact-card-animated:hover .contact-anim-layer:nth-child(3),
.contact-card-animated:focus-visible .contact-anim-layer:nth-child(3){opacity:.6;transform:translate(10px,-10px)}

@media (max-width:900px){
  .contact-topline{
    grid-template-columns:1fr 190px;
    min-height:205px;
    gap:24px;
  }
  .contact-logo-zone{min-height:190px}
  .contact-watermark-logo{
    width:178px !important;
    height:178px !important;
  }
}

@media (max-width:760px){
  .contact-shell{padding:28px 20px 32px !important;overflow:hidden !important}
  .contact-topline{
    grid-template-columns:1fr !important;
    min-height:auto;
    gap:22px;
  }
  .contact-logo-zone{
    min-height:auto;
    justify-content:center;
    align-items:center;
  }
  .contact-watermark-logo{
    width:150px !important;
    height:150px !important;
    box-shadow:0 0 28px rgba(244,233,212,.50),0 0 60px rgba(215,176,106,.32),0 0 100px rgba(184,130,60,.20),0 18px 42px rgba(0,0,0,.35) !important;
  }
  .contact-grid{
    grid-template-columns:1fr !important;
    margin-top:28px !important;
  }
  .contact-card{min-height:auto !important;padding:22px !important}
  .contact-card em{font-size:15px !important}
  .contact-main-cta-wrap{margin-top:30px}
}
