:root{
  --bg:#F7F5F0;
  --paper:#FBFAF7;
  --text:#171717;
  --black:#111111;
  --accent:#F5C84C;
  --gray:#E8E6E1;
  --muted:#77736C;
  --white:#fff;
  --green:#17634D;
  --wrap:1220px;
  --title:clamp(42px,4.25vw,62px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:"Manrope",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.wrap{width:min(var(--wrap),calc(100% - 48px));margin:auto}
.section-pad{padding:94px 0}
.kicker{font-size:11px;font-weight:700;letter-spacing:.24em;color:#77736c;margin-bottom:17px}
h1,h2,h3,p{margin-top:0}
.section-title{font-size:var(--title);line-height:1.02;letter-spacing:-.048em;font-weight:800;margin:0 0 26px;max-width:890px}
h3{font-size:30px;line-height:1.08;letter-spacing:-.035em}
.lead{max-width:650px;font-size:18px;line-height:1.65;color:#3f3d39}
.btn{border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:52px;padding:0 24px;background:var(--accent);border-radius:999px;font-size:14px;font-weight:800;transition:.2s transform,.2s box-shadow}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(245,200,76,.24)}
.btn-sm{min-height:44px;font-size:13px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(247,245,240,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(23,23,23,.045)}
.nav-wrap{height:82px;display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center}
.logo{font-size:31px;line-height:1;font-weight:800;letter-spacing:-.07em}
.logo span{color:var(--accent)}
.nav{display:flex;gap:30px;justify-content:center;font-size:13px;font-weight:600}
.nav a:hover{opacity:.55}
.nav-wrap>.btn{justify-self:end}
.menu-toggle{display:none;border:0;background:none;font-size:25px}

/* HERO */
.hero{padding-top:64px;min-height:670px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:42px;align-items:center}
.hero-copy{z-index:2}
.hero-copy .section-title{max-width:690px}
.hero-copy .btn{margin-top:4px}
.hero-art{height:510px;position:relative}
.yellow-orbit{position:absolute;width:425px;height:425px;border-radius:50%;background:var(--accent);right:54px;bottom:18px}
.phone{position:absolute;width:255px;height:500px;background:#171717;border:9px solid #080808;border-radius:46px;right:142px;top:0;transform:rotate(7deg);box-shadow:0 38px 65px rgba(0,0,0,.24);overflow:hidden}
.phone:after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.09),transparent 36%)}
.phone-notch{position:absolute;z-index:2;width:86px;height:20px;border-radius:99px;background:#050505;left:50%;top:12px;transform:translateX(-50%)}
.phone-content{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;transform:rotate(-7deg)}
.phone-logo{font-weight:800;font-size:39px;letter-spacing:-.07em}
.phone-logo span{color:var(--accent)}
.phone-content p{font-size:16px;font-style:italic;line-height:1.45;color:rgba(255,255,255,.85);margin:24px 0 18px}
.phone-content i{display:block;width:34px;height:4px;border-radius:99px;background:var(--accent)}
.hero-side-note{position:absolute;right:-24px;top:120px}
.hero-side-note b{display:block;width:25px;height:3px;background:var(--accent);margin-bottom:22px}
.hero-side-note span{font-size:10px;line-height:1.85;letter-spacing:.27em;color:var(--muted)}

/* CONCEITO / EDITORIAL */
.concept{background:#FAF8F4;border-top:1px solid rgba(23,23,23,.045);border-bottom:1px solid rgba(23,23,23,.045)}
.editorial-block{display:flex;flex-direction:column;gap:32px}
.section-photo{margin:0 0 12px;width:100%;height:390px;border-radius:22px;overflow:hidden;background:#e9e5dc}
.section-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.editorial-copy{max-width:880px}
.text-stack{max-width:800px}
.text-stack p,.products-heading p,.contact-copy p{font-size:16px;line-height:1.72;color:#45433f;margin-bottom:12px}
.process-banner{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1.2fr;gap:16px;align-items:center;background:#111;color:#fff;padding:20px 26px;border-radius:16px;margin-top:6px}
.process-item{display:flex;align-items:center;gap:12px;min-width:0}
.process-item span{display:grid;place-items:center;min-width:34px;height:34px;border-radius:50%;background:var(--accent);color:#111;font-size:10px;font-weight:800}
.process-item b{font-size:13px;white-space:nowrap}
.process-banner i{font-style:normal;color:#777;font-size:19px}

/* PRODUTOS */
.products{background:var(--bg)}
.products-heading{max-width:880px;margin-bottom:42px}
.products-heading p{max-width:760px;margin-bottom:0}
.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.product-card{min-height:510px;border-radius:22px;overflow:hidden;position:relative;padding:42px;display:grid;grid-template-columns:1fr .82fr;gap:20px;align-items:stretch}
.product-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start}
.product-status{font-size:10px;letter-spacing:.19em;font-weight:800;opacity:.6;margin-bottom:20px}
.product-copy h3{margin:15px 0 16px;font-size:31px;max-width:310px}
.product-copy p{font-size:14px;line-height:1.65;margin:0 0 28px;max-width:330px}
.product-link{margin-top:auto;font-size:13px;font-weight:800;display:inline-flex;gap:12px;align-items:center;padding-bottom:5px;border-bottom:2px solid currentColor}
.product-link:hover{opacity:.65}
.muted-link{opacity:.55;cursor:default}
.tomatipo-card{background:#F2F0E8;color:#17392F;border:1px solid #E0DDD4}
.tomatipo-wordmark{font-size:35px;font-weight:500;letter-spacing:-.055em;color:var(--green)}
.tomatipo-card .product-link{color:var(--green)}
.barber-card{background:#171717;color:#fff}
.barber-card .product-copy p{color:#d7d7d7}
.barber-label{font-size:31px;letter-spacing:-.05em;font-weight:800;color:var(--accent)}
.product-device{position:relative;display:flex;align-items:flex-end;justify-content:flex-end;min-width:0}
.device-shell{width:210px;height:425px;background:#111;border:7px solid #111;border-radius:36px;overflow:hidden;box-shadow:0 28px 60px rgba(0,0,0,.25);transform:rotate(4deg) translate(6px,25px)}
.device-shell img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.barber-shell{background:#F6F3EC;border-color:#0B0B0B;transform:rotate(-3deg) translate(7px,24px)}
.barber-ui{height:100%;padding:24px 16px;color:#171717;background:#F6F3EC}
.barber-top{display:flex;justify-content:space-between;font-size:12px;margin:8px 0 26px;color:#777}
.barber-greeting{font-size:17px;line-height:1.35;margin-bottom:22px}
.barber-greeting strong{font-size:19px}
.appointment{display:grid;grid-template-columns:48px 1fr;gap:10px;padding:13px 0;border-top:1px solid #DED9D0}
.appointment time{font-size:11px;font-weight:800;color:#8B7223}
.appointment b{display:block;font-size:12px}
.appointment small{display:block;margin-top:3px;color:#777;font-size:10px}
.barber-command{margin-top:19px;border-radius:14px;background:#fff;padding:13px 12px;font-size:10px;line-height:1.45;box-shadow:0 10px 25px rgba(0,0,0,.06)}

/* SOBRE */
.about{background:#FAF8F4;border-top:1px solid rgba(23,23,23,.045)}
.compact-editorial{gap:28px}
.values-banner{display:grid;grid-template-columns:1fr 1fr 1fr 1.45fr;gap:0;border:1px solid #DDD8D0;border-radius:16px;overflow:hidden;background:#fff}
.values-banner>div,.values-banner>strong{min-height:112px;padding:24px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid #E5E0D8}
.values-banner>div:last-of-type{border-right:1px solid #E5E0D8}
.values-banner b{font-size:13px;margin-bottom:6px}
.values-banner span{font-size:12px;line-height:1.45;color:#67635d}
.values-banner>strong{border-right:0;background:var(--accent);font-size:14px;line-height:1.45}

/* CONTATO */
.contact{border-top:1px solid rgba(23,23,23,.045)}
.contact-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:78px;align-items:start}
.contact-copy{position:sticky;top:130px}
.contact-copy p{max-width:480px;margin-bottom:24px}
.contact-email{font-size:14px;font-weight:800;border-bottom:2px solid var(--accent);padding-bottom:4px}
.contact-form{background:#fff;border:1px solid #E4DFD6;border-radius:22px;padding:34px;box-shadow:0 18px 60px rgba(23,23,23,.04)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-form label{display:flex;flex-direction:column;gap:9px;font-size:12px;font-weight:800;margin-bottom:17px}
.contact-form input,.contact-form textarea{width:100%;border:1px solid #DCD6CD;background:#FAF8F4;border-radius:12px;padding:14px 15px;color:#171717;outline:none;transition:border-color .18s,box-shadow .18s;resize:vertical}
.contact-form input:focus,.contact-form textarea:focus{border-color:#B69B45;box-shadow:0 0 0 3px rgba(245,200,76,.16)}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#99938a;font-weight:500}
.form-button{margin-top:2px}
.form-note{display:block;color:#8a857d;margin-top:12px;font-size:10px;line-height:1.45}

/* FOOTER */
.footer{background:#111;color:#fff;padding:35px 0}
.footer-grid{display:grid;grid-template-columns:1.2fr 1.1fr .7fr 1fr .8fr;gap:35px;align-items:start;font-size:11px;color:#cfcfcf}
.logo-light{color:#fff}.footer-grid p{margin:10px 0 0}.legal-company{display:flex;flex-direction:column;gap:5px}.legal-company strong{color:#fff}.footer nav{display:flex;flex-direction:column;gap:8px}.footer a:hover{color:#fff}.copyright{text-align:right}

.reveal{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}

@media(max-width:1100px){
  .nav-wrap{grid-template-columns:1fr auto}.nav{display:none}
  .hero-side-note{display:none}.phone{right:70px}.yellow-orbit{right:10px}
  .product-card{grid-template-columns:1fr .7fr;padding:34px}
  .device-shell{width:175px;height:360px}
  .values-banner{grid-template-columns:1fr 1fr}.values-banner>div,.values-banner>strong{border-bottom:1px solid #E5E0D8}.values-banner>div:nth-child(2){border-right:0}.values-banner>strong{border-bottom:0}
  .contact-layout{gap:42px}
  .footer-grid{grid-template-columns:1fr 1fr 1fr}.copyright{text-align:left}
}

@media(max-width:760px){
  .wrap{width:min(100% - 32px,var(--wrap))}.section-pad{padding:68px 0}
  .nav-wrap{height:70px}.nav-wrap>.btn{display:none}.menu-toggle{display:block}.nav-wrap{grid-template-columns:1fr auto}
  .nav{position:absolute;left:16px;right:16px;top:70px;padding:20px;background:#fff;border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.12);flex-direction:column;gap:18px}.nav.open{display:flex}
  .section-title{font-size:clamp(39px,11vw,50px)}
  .hero{padding-top:46px;min-height:auto}.hero-grid{grid-template-columns:1fr}.hero-art{height:430px;margin-top:10px}
  .yellow-orbit{width:330px;height:330px;left:50%;right:auto;bottom:24px;transform:translateX(-50%)}
  .phone{width:208px;height:410px;right:50%;top:0;transform:translateX(50%) rotate(6deg);border-radius:38px}.phone-logo{font-size:32px}
  .section-photo{height:260px;border-radius:16px}
  .process-banner{grid-template-columns:1fr;gap:8px;padding:18px}.process-banner i{transform:rotate(90deg);text-align:center}.process-item{justify-content:flex-start}
  .product-grid{grid-template-columns:1fr}.product-card{min-height:520px;grid-template-columns:1fr .72fr;padding:28px}.product-copy h3{font-size:27px}.device-shell{width:155px;height:320px;transform:rotate(4deg) translate(12px,38px)}.barber-shell{transform:rotate(-3deg) translate(12px,38px)}
  .values-banner{grid-template-columns:1fr}.values-banner>div,.values-banner>strong{border-right:0;border-bottom:1px solid #E5E0D8}.values-banner>strong{border-bottom:0}
  .contact-layout{grid-template-columns:1fr;gap:32px}.contact-copy{position:static}.form-row{grid-template-columns:1fr}.contact-form{padding:24px}
  .footer-grid{grid-template-columns:1fr;gap:24px}.copyright{text-align:left}
}

@media(max-width:500px){
  .product-card{grid-template-columns:1fr;min-height:auto;padding-bottom:0}.product-device{justify-content:center;min-height:330px}.device-shell{transform:rotate(3deg) translateY(26px)}.barber-shell{transform:rotate(-3deg) translateY(26px)}
}


/* AJUSTE V3 — alinhamento editorial */
.concept .editorial-copy,
.about .editorial-copy,
.products-heading{
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

.concept .editorial-copy .section-title,
.about .editorial-copy .section-title,
.products-heading .section-title{
  margin-left:auto;
  margin-right:auto;
}

.concept .text-stack,
.about .text-stack{
  max-width:800px;
  margin-left:auto;
  margin-right:auto;
}

.products-heading p{
  max-width:760px;
  margin-left:auto;
  margin-right:auto;
}

.brand-inline{font-weight:800;color:inherit}


/* AJUSTE V5 — espaçamento padronizado e novos banners */
:root{
  --section-space: 112px;
  --stack-xxs: 10px;
  --stack-xs: 14px;
  --stack-sm: 18px;
  --stack-md: 24px;
  --stack-lg: 32px;
  --stack-xl: 40px;
  --title-size: clamp(44px, 5vw, 56px);
  --title-gap: 18px;
  --copy-gap: 18px;
  --block-gap: 34px;
}

.section-pad{padding:var(--section-space) 0}

.kicker{
  margin:0 0 var(--stack-xs);
}

.section-title{
  margin:0 0 var(--title-gap);
  font-size:var(--title-size);
  line-height:1.02;
  letter-spacing:-0.045em;
}

.section-intro{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0;
}

.section-intro .text-stack,
.section-intro > p{
  margin-top:0;
}

.text-stack p,
.products-heading p,
.contact-copy p,
.lead{
  margin:0;
  font-size:17px;
  line-height:1.75;
}

.hero-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.hero-copy .section-title{font-size:clamp(52px, 6vw, 72px)}
.hero-copy .lead{margin-bottom:var(--stack-lg);max-width:620px}

.hero-grid{gap:56px;align-items:center}
.hero-art{
  position:relative;
  min-height:560px;
  overflow:visible;
  display:flex;
  align-items:center;
  justify-content:center;
}
.yellow-orbit{
  width:430px;
  height:430px;
  border-radius:50%;
  background:var(--accent);
  right:auto;
  bottom:auto;
  position:absolute;
  left:50%;
  top:52%;
  transform:translate(-50%,-50%);
}
.hero-illustration{
  position:relative;
  z-index:2;
  width:min(100%, 640px);
  height:auto;
  display:block;
}

.editorial-block{
  gap:var(--block-gap);
}
.section-photo{
  margin:0;
  width:100%;
  height:390px;
}
.editorial-copy,
.products-heading{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.text-stack{
  max-width:820px;
  margin:0 auto;
}
.products-heading p{
  max-width:820px;
  margin-left:auto;
  margin-right:auto;
}

.process-banner{
  width:100%;
  display:grid;
  grid-template-columns: 180px 1fr;
  align-items:center;
  gap:24px;
  background:#111;
  color:#fff;
  padding:18px 22px;
  border-radius:18px;
  margin-top:0;
}
.process-phone{
  display:flex;
  justify-content:center;
}
.process-phone-screen{
  width:126px;
  height:184px;
  border:6px solid #2A2A2A;
  border-radius:28px;
  background:linear-gradient(180deg,#191919 0%, #0E0E0E 100%);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
  box-shadow:0 18px 36px rgba(0,0,0,.22);
}
.process-phone-screen strong{
  font-size:22px;
  font-weight:800;
  letter-spacing:-0.07em;
}
.process-phone-screen strong span{color:var(--accent)}
.process-phone-screen small{
  font-size:11px;
  line-height:1.55;
  color:#E8E6E1;
  text-transform:uppercase;
  letter-spacing:.13em;
  text-align:center;
}
.process-flow{
  width:100%;
  display:grid;
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1.25fr;
  gap:16px;
  align-items:center;
}
.process-item{
  min-height:70px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  padding:0 14px;
}
.process-item b{font-size:13px}
.process-banner i{
  text-align:center;
  color:#8A8A8A;
}

.products-heading{
  margin-bottom:44px;
}
.product-grid{
  align-items:stretch;
}
.product-card{
  min-height:510px;
}

.values-banner{
  width:100%;
  margin-top:0;
}
.values-banner > strong{
  display:flex;
  align-items:center;
}

.contact-copy{
  position:sticky;
  top:130px;
}
.contact-copy .section-title{margin-bottom:var(--title-gap)}
.contact-copy p{margin-bottom:var(--stack-md)}
.contact-form{
  padding:36px;
}

@media (max-width: 1100px){
  .hero-art{min-height:480px}
  .hero-illustration{width:min(100%, 560px)}
  .process-banner{grid-template-columns:150px 1fr}
  .process-phone-screen{width:110px;height:166px}
}

@media (max-width: 760px){
  :root{
    --section-space: 72px;
    --title-size: clamp(38px, 10vw, 46px);
    --block-gap: 24px;
  }
  .hero-grid{
    gap:36px;
  }
  .hero-art{
    min-height:360px;
  }
  .yellow-orbit{
    width:300px;
    height:300px;
    top:56%;
  }
  .hero-illustration{
    width:min(100%, 420px);
  }
  .section-photo{
    height:260px;
  }
  .process-banner{
    grid-template-columns: 1fr;
    gap:18px;
    padding:18px;
  }
  .process-phone{
    justify-content:flex-start;
  }
  .process-flow{
    grid-template-columns:1fr;
    gap:8px;
  }
  .process-banner i{
    transform:rotate(90deg);
  }
  .process-item{
    min-height:auto;
    padding:14px;
  }
  .contact-copy{position:static}
}

@media (max-width: 500px){
  .hero-copy .section-title{font-size:clamp(42px, 12vw, 54px)}
}

.phone, .hero-side-note{display:none !important;}


/* AJUSTE V6 — hero com foto real e espaçamentos reduzidos */
:root{
  --section-space: 80px;
  --title-gap: 16px;
  --block-gap: 24px;
}

.site-header{
  position: sticky;
  top: 0;
}

.nav-wrap{
  height: 76px !important;
}

.hero{
  min-height: auto;
  padding-top: 6px;
}

.hero-grid{
  gap: 40px !important;
  padding-top: 26px !important;
}

.hero-copy .kicker{
  margin-bottom: 12px;
}

.hero-copy .section-title{
  margin-bottom: 16px;
}

.hero-copy .lead{
  margin-bottom: 26px !important;
}

.hero-art{
  min-height: 470px !important;
}

.yellow-orbit{
  width: 400px !important;
  height: 400px !important;
  top: 52%;
}

.hero-photo-wrap{
  position: relative;
  z-index: 2;
  width: min(100%, 620px);
  height: 430px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  background: #fff;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 18px 50px rgba(23,23,23,.06);
}

.hero-photo{
  width: 92%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
  display: block;
}

.section-pad{
  padding: var(--section-space) 0 !important;
}

.editorial-block,
.compact-editorial{
  gap: 24px !important;
}

.section-photo{
  margin-bottom: 0 !important;
}

.editorial-copy .kicker,
.products-heading .kicker,
.contact-copy .kicker{
  margin-bottom: 12px !important;
}

.section-title{
  margin-bottom: var(--title-gap) !important;
}

.text-stack p,
.products-heading p,
.contact-copy p{
  margin: 0 !important;
}

.process-banner,
.values-banner,
.product-grid,
.contact-layout{
  margin-top: 0 !important;
}

.products-heading{
  margin-bottom: 30px !important;
}

.contact{
  padding-top: 72px !important;
}

.footer{
  margin-top: 0;
}

@media(max-width:1100px){
  :root{
    --section-space: 72px;
  }
  .hero-grid{
    gap: 28px !important;
  }
  .hero-art{
    min-height: 420px !important;
  }
  .hero-photo-wrap{
    width: min(100%, 520px);
    height: 380px;
  }
}

@media(max-width:760px){
  :root{
    --section-space: 56px;
    --title-gap: 14px;
  }
  .hero{
    padding-top: 0;
  }
  .hero-grid{
    padding-top: 18px !important;
    gap: 24px !important;
  }
  .hero-art{
    min-height: 320px !important;
  }
  .yellow-orbit{
    width: 260px !important;
    height: 260px !important;
  }
  .hero-photo-wrap{
    width: 100%;
    max-width: 380px;
    height: 280px;
    border-radius: 20px;
  }
}


/* AJUSTE V7 — imagem final, banner full-width e espaçamento do bloco 2 */

/* Hero: usa a imagem 3 enviada pelo usuário */
.hero{
  background:#FFFFFF;
}

.hero-art{
  min-height:500px !important;
  overflow:visible !important;
}

.hero-photo-wrap{
  width:min(100%, 720px) !important;
  height:470px !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
  overflow:visible !important;
  position:relative;
  z-index:2;
}

.hero-photo{
  width:100% !important;
  height:100% !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center bottom !important;
}

.yellow-orbit{
  width:390px !important;
  height:390px !important;
  left:52% !important;
  top:46% !important;
  transform:translate(-50%,-50%) !important;
  z-index:1;
}

/* Bloco 2: mais respiro entre imagem, texto e banner */
.concept .editorial-block{
  gap:42px !important;
}

.concept .section-photo{
  margin-bottom:4px !important;
}

.concept .editorial-copy{
  margin-top:2px;
}

.concept .process-banner{
  margin-top:12px !important;
}

/* Banner do processo sempre em largura total da tela */
.process-banner{
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  border-radius:0 !important;
  box-sizing:border-box;
  padding-left:max(28px, calc((100vw - 1180px) / 2)) !important;
  padding-right:max(28px, calc((100vw - 1180px) / 2)) !important;
  padding-top:28px !important;
  padding-bottom:28px !important;
  grid-template-columns:170px 1fr !important;
}

/* Logomarca mais presente na tela do celular do banner */
.process-phone-screen{
  width:128px !important;
  height:192px !important;
  border-radius:28px !important;
  background:#0E0E0E !important;
}

.process-phone-screen strong{
  font-size:27px !important;
  letter-spacing:-0.075em !important;
  line-height:1 !important;
}

.process-phone-screen strong span{
  color:var(--accent) !important;
}

.process-phone-screen small{
  margin-top:2px;
}

/* Contato: texto maior e com mais presença */
.contact-copy p{
  max-width:550px !important;
  font-size:17px !important;
  line-height:1.78 !important;
}

/* Responsivo */
@media(max-width:1100px){
  .hero-photo-wrap{
    width:min(100%, 620px) !important;
    height:420px !important;
  }

  .process-banner{
    grid-template-columns:145px 1fr !important;
    padding-left:28px !important;
    padding-right:28px !important;
  }
}

@media(max-width:760px){
  .hero{
    background:#FFFFFF;
  }

  .hero-art{
    min-height:330px !important;
  }

  .hero-photo-wrap{
    width:100% !important;
    max-width:430px !important;
    height:310px !important;
  }

  .yellow-orbit{
    width:260px !important;
    height:260px !important;
    left:50% !important;
    top:47% !important;
  }

  .concept .editorial-block{
    gap:30px !important;
  }

  .process-banner{
    width:100vw !important;
    grid-template-columns:1fr !important;
    padding:24px 20px !important;
  }

  .process-phone{
    justify-content:center !important;
  }

  .process-phone-screen{
    width:118px !important;
    height:176px !important;
  }
}


/* AJUSTE V8 — hero sem cortar os pés + logo no celular da imagem do bloco 2 */
.hero{
  overflow:visible !important;
}

.hero-art{
  overflow:visible !important;
}

.hero-photo-wrap{
  overflow:visible !important;
}

.hero-photo{
  transform:translateY(-28px);
}

/* Logo aplicada sobre a tela do celular na foto da seção 2 */
.section-photo{
  position:relative;
}

.section-phone-logo{
  position:absolute;
  left:58.2%;
  top:59.2%;
  transform:translate(-50%,-50%) rotate(13deg);
  z-index:3;
  font-family:"Manrope",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(20px,2vw,31px);
  line-height:1;
  font-weight:800;
  letter-spacing:-0.075em;
  color:#171717;
  pointer-events:none;
  text-shadow:0 1px 0 rgba(255,255,255,.12);
}

.section-phone-logo span{
  color:#F5C84C;
}

@media(max-width:1100px){
  .hero-photo{
    transform:translateY(-22px);
  }

  .section-phone-logo{
    left:58.3%;
    top:59.5%;
    font-size:clamp(18px,2.1vw,27px);
  }
}

@media(max-width:760px){
  .hero-photo{
    transform:translateY(-16px);
  }

  .section-phone-logo{
    left:58.2%;
    top:60%;
    font-size:17px;
  }
}


/* AJUSTE V9 — imagem aprovada dentro da tela do celular */
.process-phone-screen{
  overflow:hidden !important;
  padding:0 !important;
  background:#F5C84C !important;
}

.process-phone-screen img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}


/* AJUSTE V10 — logo somente na tela do celular da foto */
.process-phone-screen{
  position: relative;
  overflow: hidden !important;
  padding: 0 !important;
  background: #F5C84C !important;
  display:flex;
  align-items:center;
  justify-content:center;
}

.process-ui{
  width: 72%;
  display:flex;
  flex-direction:column;
  gap: 10px;
  align-items:flex-start;
}

.process-ui .ui-bar{
  display:block;
  height: 8px;
  border-radius: 999px;
  background: rgba(23,23,23,.85);
}

.process-ui .bar-1{
  width: 68%;
}

.process-ui .bar-2{
  width: 46%;
  background: rgba(255,255,255,.95);
}

.process-ui .ui-card{
  display:block;
  width: 100%;
  height: 42px;
  border-radius: 12px;
  background: rgba(23,23,23,.16);
  border: 1px solid rgba(23,23,23,.12);
  margin-top: 4px;
}

.process-ui .ui-card.small{
  width: 78%;
  height: 30px;
  background: rgba(255,255,255,.28);
  border-color: rgba(255,255,255,.22);
}

.process-phone-screen img{
  display:none !important;
}


/* VERSÃO FINAL — sistema de marca OXE.IA */
.logo{
  font-size:36px;
  letter-spacing:-0.07em;
  font-weight:800;
  color:#171717;
}
.logo .dot{color:#F5C84C}
.logo .ia{color:#F5C84C}
.logo-light{color:#F5C84C}
.logo-light .dot{color:#FFFFFF}
.logo-light .ia{color:#FFFFFF}

.brand-mark{display:inline-flex;align-items:center;gap:0}
.brand-mark .dot{color:#F5C84C}
.brand-mark .ia{color:#171717}

.site-header{
  background:rgba(247,245,240,.94);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(23,23,23,.05);
}

.hero{
  padding-top:34px !important;
}
.hero-grid{
  align-items:center;
}
.hero-copy .kicker{
  margin-bottom:14px !important;
}
.hero-copy .btn{
  margin-top:2px;
}

.section-photo{
  height:540px;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 20px 60px rgba(23,23,23,.05);
}
.section-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.section-phone-logo{display:none !important;}

.process-phone-screen{
  background:#171717 !important;
}
.process-ui .bar-1{
  background:#F5C84C !important;
}
.process-ui .bar-2{
  background:rgba(255,255,255,.92) !important;
}
.process-ui .ui-card{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.10) !important;
}
.process-ui .ui-card.small{
  background:rgba(245,200,76,.22) !important;
  border-color:rgba(245,200,76,.24) !important;
}

.footer{
  background:#111111;
}
.footer .brand-mark .dot{color:#FFFFFF}
.footer .brand-mark .ia{color:#FFFFFF}

/* refino geral */
.btn-sm{font-weight:800}
.contact-email{color:#171717}

@media(max-width:760px){
  .logo{font-size:32px}
  .section-photo{height:260px;border-radius:18px}
}


/* AJUSTE V11 — remover desenho do celular do banner preto */
.process-banner{
  grid-template-columns: 1fr !important;
  padding-left:max(28px, calc((100vw - 1180px) / 2)) !important;
  padding-right:max(28px, calc((100vw - 1180px) / 2)) !important;
}

.process-phone{
  display:none !important;
}

.process-flow{
  width:100% !important;
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1.25fr !important;
}

@media(max-width:760px){
  .process-banner{
    grid-template-columns:1fr !important;
  }
  .process-flow{
    grid-template-columns:1fr !important;
  }
}


/* AJUSTE V12 — não cortar nada da foto do casal no hero */
.hero-art{
  overflow: visible !important;
  min-height: 560px !important;
  display:flex;
  align-items:center;
  justify-content:center;
}

.hero-photo-wrap{
  overflow: visible !important;
  height: 520px !important;
  width: min(100%, 760px) !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  display:flex;
  align-items:flex-end;
  justify-content:center;
}

.hero-photo{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  max-height: none !important;
}

/* DEMONSTRAÇÃO INTERATIVA DO TOMATIPO */
.toma-device{
  align-items:center;
  justify-content:center;
}

.toma-demo{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  min-width:0;
}

.toma-demo-shell{
  position:relative;
  width:209px;
  height:451px;
  transform:rotate(4deg) translate(4px,20px);
  background:#F7F5F0;
}

.toma-demo-shell .toma-screen{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:0;
  transform:scale(1.015);
  transition:opacity .5s ease,transform .65s cubic-bezier(.22,.61,.36,1);
  pointer-events:none;
}

.toma-demo-shell .toma-screen.is-active{
  opacity:1;
  transform:scale(1);
}

.toma-tap{
  position:absolute;
  z-index:3;
  left:50%;
  bottom:28px;
  width:28px;
  height:28px;
  border:2px solid rgba(23,99,77,.75);
  border-radius:50%;
  opacity:0;
  transform:translateX(-50%) scale(.45);
  pointer-events:none;
}

.toma-demo.is-changing .toma-tap{
  animation:toma-tap .48s ease-out;
}

.toma-demo-controls{
  position:relative;
  z-index:4;
  display:flex;
  gap:8px;
  margin-top:20px;
}

.toma-demo-controls button{
  width:9px;
  height:9px;
  padding:0;
  border:0;
  border-radius:99px;
  background:rgba(23,57,47,.24);
  cursor:pointer;
  transition:width .22s ease,background-color .22s ease,transform .22s ease;
}

.toma-demo-controls button:hover,
.toma-demo-controls button:focus-visible{
  transform:scale(1.25);
  outline:2px solid rgba(23,99,77,.28);
  outline-offset:3px;
}

.toma-demo-controls button.is-active{
  width:25px;
  background:var(--green);
}

.toma-demo-label{
  position:relative;
  z-index:4;
  color:var(--green);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

@keyframes toma-tap{
  0%{opacity:0;transform:translateX(-50%) scale(.45)}
  35%{opacity:.85}
  100%{opacity:0;transform:translateX(-50%) scale(1.45)}
}

@media(max-width:1100px){
  .toma-demo-shell{width:180px;height:388px}
}

@media(max-width:760px){
  .toma-demo-shell{width:162px;height:350px;transform:rotate(3deg) translateY(28px)}
  .toma-demo-controls{margin-top:30px}
}

@media(max-width:500px){
  .toma-device{min-height:430px}
  .toma-demo-shell{width:186px;height:401px;transform:rotate(2deg) translateY(18px)}
  .toma-demo-controls{margin-top:20px}
}

@media(prefers-reduced-motion:reduce){
  .toma-demo-shell .toma-screen{transition:none}
  .toma-demo.is-changing .toma-tap{animation:none}
}

/* APRESENTAÇÃO OFICIAL DO HEYBRO */
.heybro-card{
  min-height:510px;
  grid-template-columns:1fr .82fr;
  background:#111;
  color:#fff;
}

.heybro-card .product-copy>p{color:#d7d7d7}
.heybro-card .product-status{color:#d7ff3f}
.heybro-card .product-link{color:#d7ff3f;border-bottom-color:#d7ff3f}

.heybro-wordmark{
  display:block;
  width:132px;
  max-width:72%;
  height:auto;
  margin:8px 0 0;
}

.heybro-device{align-items:flex-end;justify-content:flex-end}
.heybro-demo{width:100%;margin:0;display:flex;flex-direction:column;align-items:center;min-width:0}

.heybro-demo-frame{
  position:relative;
  width:190px;
  height:410px;
  overflow:hidden;
  border:7px solid #050505;
  border-radius:34px;
  background:#f4f1ea;
  box-shadow:0 22px 48px rgba(0,0,0,.38);
  transform:rotate(3deg) translate(8px,20px);
}

.heybro-screen{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:0;
  transform:scale(1.012);
  transition:opacity .42s ease,transform .55s ease;
  pointer-events:none;
}

.heybro-screen.is-active{opacity:1;transform:scale(1)}

.heybro-demo-controls{display:flex;gap:8px;margin-top:34px}

.heybro-demo-controls button{
  width:9px;
  height:9px;
  padding:0;
  border:0;
  border-radius:99px;
  background:rgba(23,57,47,.24);
  cursor:pointer;
  transition:width .22s ease,background-color .22s ease,transform .22s ease;
}

.heybro-demo-controls button:hover,.heybro-demo-controls button:focus-visible{
  transform:scale(1.2);
  outline:2px solid rgba(23,99,77,.28);
  outline-offset:3px;
}

.heybro-demo-controls button.is-active{width:25px;background:#d7ff3f}

.heybro-demo figcaption{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  margin-top:10px;
  text-align:center;
}

.heybro-demo figcaption strong{color:#d7ff3f;font-size:11px;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:1100px){
  .heybro-card{grid-template-columns:1fr .7fr;padding:34px}
  .heybro-demo-frame{width:180px;height:389px}
}

@media(max-width:760px){
  .heybro-card{grid-template-columns:1fr .72fr;min-height:520px;padding:28px}
  .heybro-device{min-height:270px}
  .heybro-demo{max-width:520px}
  .heybro-demo-frame{width:162px;height:350px;transform:rotate(3deg) translateY(28px)}
}

@media(max-width:500px){
  .heybro-card{grid-template-columns:1fr;min-height:auto;padding-bottom:0}
  .heybro-wordmark{width:132px}
  .heybro-device{justify-content:center;min-height:430px;margin-top:8px}
  .heybro-demo{max-width:330px}
  .heybro-demo-frame{width:186px;height:402px;border-width:6px;border-radius:32px;transform:rotate(2deg) translateY(18px)}
  .heybro-demo-controls{margin-top:32px}
  .heybro-demo figcaption{margin-bottom:22px}
}

@media(prefers-reduced-motion:reduce){
  .heybro-screen{transition:none}
}

.yellow-orbit{
  width: 430px !important;
  height: 430px !important;
  top: 48% !important;
}

@media(max-width:1100px){
  .hero-art{
    min-height: 500px !important;
  }
  .hero-photo-wrap{
    height: 470px !important;
    width:min(100%, 660px) !important;
  }
}

@media(max-width:760px){
  .hero-art{
    min-height: 360px !important;
  }
  .hero-photo-wrap{
    height: 330px !important;
    width:100% !important;
    max-width: 430px !important;
  }
  .yellow-orbit{
    width: 280px !important;
    height: 280px !important;
  }
}


/* AJUSTE V14 — logos finais em imagem */
.logo-img{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:0;
}

.logo-img img{
  display:block;
  width:auto;
  height:42px;
}

.site-header .logo-img img{
  height:42px;
}

.footer .logo-img img{
  height:44px;
}

@media(max-width:760px){
  .nav-wrap{
    position:relative;
    grid-template-columns:1fr;
    justify-items:center;
  }
  .menu-toggle{
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
  }
  .site-header .logo-img img{
    height:36px;
  }
  .footer .logo-img img{
    height:38px;
  }
  .hero-copy .section-title,
  .hero-copy .lead{
    text-align:center;
    margin-left:auto;
    margin-right:auto;
  }
  .hero-copy .kicker{
    text-align:center;
    width:100%;
  }
  .hero-copy .btn{
    display:flex;
    width:max-content;
    margin-left:auto;
    margin-right:auto;
  }
}
