:root{
  --black:#070707; --black2:#101010; --card:#141414; --white:#f7f7f5;
  --muted:#a8a8a8; --red:#e51b2a; --red2:#a80f1b; --blue:#1167d8; --line:#2b2b2b;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:Inter,Arial,sans-serif}
a{text-decoration:none;color:inherit}
.top-strip{height:28px;background:linear-gradient(90deg,var(--red),var(--blue));display:flex;justify-content:space-between;align-items:center;padding:0 5.5%;font:700 10px "Barlow Condensed",sans-serif;letter-spacing:2px}
.header{height:82px;display:flex;align-items:center;gap:32px;padding:0 5.5%;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(7,7,7,.94);backdrop-filter:blur(12px);z-index:20}
.brand{display:flex;align-items:center;gap:12px;margin-right:auto;font:800 20px "Barlow Condensed",sans-serif;letter-spacing:1px}
.brand img{width:44px;height:44px;object-fit:cover;border-radius:50%;border:1px solid #333}
.brand b{color:#aaa;font-weight:500}
.header nav{display:flex;gap:28px}
.header nav a,.nav-cta{font-size:11px;font-weight:700;letter-spacing:1.3px;color:#ccc}
.header nav a:hover{color:white}
.nav-cta{border:1px solid #555;padding:13px 17px;color:white}
.nav-cta span,.btn span,.service-card a span{margin-left:8px}
.menu{display:none;background:none;border:0;color:white;font-size:24px}
.hero{min-height:calc(100vh - 110px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:70px 8%;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;width:500px;height:500px;right:-180px;top:-160px;border-radius:50%;background:radial-gradient(circle,rgba(17,103,216,.25),transparent 68%)}
.hero-copy{position:relative;z-index:2;max-width:700px}
.eyebrow{font:700 11px "Barlow Condensed",sans-serif;letter-spacing:2.5px;color:#bdbdbd;display:flex;align-items:center;gap:10px}
.eyebrow span{width:28px;height:2px;background:var(--red);display:inline-block}
h1,h2,h3{font-family:"Barlow Condensed",sans-serif}
h1{font-size:clamp(64px,8vw,122px);line-height:.83;margin:22px 0 28px;letter-spacing:-2px;text-transform:uppercase}
h1 em,h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1px #eee}
.hero-text{max-width:540px;color:#aaa;line-height:1.7;font-size:15px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 20px;font:800 11px "Barlow Condensed",sans-serif;letter-spacing:1.5px;border:1px solid transparent;transition:.2s}
.btn-red{background:var(--red);color:white}.btn-red:hover{background:#ff2636;transform:translateY(-2px)}
.btn-outline{border-color:#444;color:white}.btn-outline:hover{border-color:#aaa}
.btn-blue{background:var(--blue);color:white}.btn-blue:hover{background:#1978f4}
.hero-meta{display:flex;align-items:center;gap:20px;margin-top:52px}
.hero-meta strong{display:block;font:800 24px "Barlow Condensed";letter-spacing:1px}
.hero-meta span{display:block;color:#777;font-size:9px;letter-spacing:2px;margin-top:3px}
.hero-meta .line{height:28px;width:1px;background:#444}
.hero-visual{min-height:550px;display:flex;align-items:center;justify-content:center;position:relative}
.hero-logo{width:min(470px,75vw);aspect-ratio:1;object-fit:cover;border-radius:50%;position:relative;z-index:2;box-shadow:0 25px 80px rgba(0,0,0,.7),0 0 0 12px rgba(229,27,42,.08)}
.red-ring{position:absolute;width:min(530px,83vw);aspect-ratio:1;border:1px solid rgba(229,27,42,.55);border-radius:50%;transform:rotate(-14deg)}
.red-ring:after{content:"";position:absolute;inset:30px;border:1px solid rgba(17,103,216,.45);border-radius:50%}
.badge{position:absolute;right:5%;bottom:10%;z-index:3;background:var(--red);padding:17px 20px;transform:skew(-8deg);box-shadow:10px 12px 0 rgba(17,103,216,.8)}
.badge b,.badge span{display:block;transform:skew(8deg);font-family:"Barlow Condensed";letter-spacing:1.5px}.badge b{font-size:18px}.badge span{font-size:10px}
.section{padding:110px 8%}
.services{background:#0d0d0d;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:48px}
h2{font-size:clamp(50px,6vw,86px);line-height:.88;margin:14px 0 0;text-transform:uppercase;letter-spacing:-1px}
.section-note{max-width:400px;color:#999;font-size:13px;line-height:1.7}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#292929}
.service-card{background:#101010;padding:28px;min-height:330px;display:flex;flex-direction:column;position:relative;overflow:hidden}
.service-card:after{content:"";position:absolute;right:-50px;bottom:-80px;width:180px;height:180px;border:1px solid rgba(17,103,216,.2);border-radius:50%}
.service-card.featured{background:linear-gradient(145deg,#171717,#0e0e0e);border-top:2px solid var(--red)}
.number{font:600 12px "Barlow Condensed";color:#777;letter-spacing:2px}
.icon{font-size:32px;color:var(--red);margin-top:40px}
.service-card h3{font-size:30px;margin:14px 0 8px;text-transform:uppercase}
.service-card p{color:#888;font-size:12px;line-height:1.65;margin:0;max-width:230px}
.service-card a{margin-top:auto;font:800 11px "Barlow Condensed";letter-spacing:1.5px;color:#fff}
.service-card a:hover{color:var(--red)}
.statement{padding:120px 13%;display:grid;grid-template-columns:.6fr 1.4fr;gap:80px;align-items:center;background:linear-gradient(120deg,#090909,#111)}
.statement-mark{font:800 clamp(90px,13vw,190px) "Barlow Condensed";color:transparent;-webkit-text-stroke:1px rgba(229,27,42,.6);letter-spacing:-8px}
.statement p:not(.eyebrow){color:#999;max-width:620px;line-height:1.8;font-size:14px}
.text-link{display:inline-block;margin-top:18px;color:white;font:800 11px "Barlow Condensed";letter-spacing:1.7px;border-bottom:1px solid var(--red);padding-bottom:7px}
.gallery{background:#f2f0eb;color:#111}
.gallery .eyebrow{color:#555}.gallery .eyebrow span{background:var(--red)}
.gallery h2 em{color:transparent;-webkit-text-stroke:1px #111}
.instagram-link{font:700 12px "Barlow Condensed";letter-spacing:1.5px;color:#333;border-bottom:1px solid var(--red);padding-bottom:7px}
.gallery-grid{columns:4 180px;column-gap:12px}
.gallery-item{margin:0 0 12px;break-inside:avoid;background:#111;overflow:hidden}
.gallery-item img{display:block;width:100%;height:auto;transition:transform .45s ease}
.gallery-item:hover img{transform:scale(1.025)}
.logo-tile img{aspect-ratio:1;object-fit:cover}
.booking{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;background:#0a0a0a}
.booking-intro>p:not(.eyebrow){color:#999;line-height:1.8;max-width:460px;font-size:14px}
.booking-contact{margin-top:45px;border-left:2px solid var(--red);padding-left:18px}.booking-contact span{display:block;color:#666;font:700 10px "Barlow Condensed";letter-spacing:2px}.booking-contact a{display:inline-block;margin-top:6px;font-weight:700}
.booking-form{background:#121212;border:1px solid #292929;padding:34px;box-shadow:0 25px 80px rgba(0,0,0,.25)}
.booking-form label{display:block;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#aaa;margin-bottom:20px}
.booking-form input,.booking-form select,.booking-form textarea{display:block;width:100%;margin-top:8px;border:1px solid #333;background:#090909;color:white;padding:14px 13px;font:13px Inter,sans-serif;outline:none;border-radius:0}
.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--blue)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.optional{font-size:9px;color:#666}
.full{width:100%;cursor:pointer}.booking-form small{display:block;color:#666;text-align:center;margin-top:13px;font-size:10px}
.location{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:linear-gradient(135deg,#0d0d0d,#111)}
.address{align-self:end;border-top:1px solid #333;padding-top:24px}.address strong{font:800 28px "Barlow Condensed";letter-spacing:1px}.address p{color:#999;line-height:1.7;font-size:14px}.location-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.dark{border-color:#444}
footer{border-top:1px solid #252525;padding:35px 8%;display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;background:#050505}
.footer-brand{font:800 25px "Barlow Condensed";letter-spacing:1px}.footer-brand span{color:#888;font-weight:500}
.footer-links{display:flex;gap:22px;color:#888;font-size:11px}.footer-links a:hover{color:white}
footer p{font-size:10px;color:#555}
.floating-wa{position:fixed;right:24px;bottom:24px;z-index:30;background:#16a34a;color:#fff;border-radius:30px;padding:14px 18px;font:800 10px "Barlow Condensed";letter-spacing:1.2px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.floating-wa b{margin-left:9px}.wa-dot{display:inline-block;width:6px;height:6px;background:#fff;border-radius:50%;margin-right:7px}
@media(max-width:1000px){
  .header nav{display:none}.menu{display:block}.nav-cta{display:none}
  .hero{grid-template-columns:1fr;padding-top:55px}.hero-visual{min-height:480px;order:-1}.hero-copy{text-align:left}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .statement{grid-template-columns:1fr;gap:20px}
  .statement-mark{font-size:90px}
}
@media (min-width:651px) and (max-width:900px){
  .hero{padding-left:7%;padding-right:7%}
  .hero-visual{min-height:430px}
  .hero-logo{width:min(390px,70vw)}
  .red-ring{width:min(440px,78vw)}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .gallery-grid{columns:3 160px}
  .booking{gap:45px}
}
@media(max-width:650px){
  html{scroll-padding-top:78px}
  body{overflow-x:hidden}
  .top-strip{height:26px;gap:10px;white-space:nowrap}
  .header{height:70px;min-height:70px}
  .hero{width:100%;overflow:hidden}
  .hero-copy{min-width:0}
  .hero-visual{width:100%;overflow:visible}
  .hero-actions{width:100%}
  .hero-actions .btn{width:100%;padding:0 14px}
  .hero-meta{flex-wrap:wrap;gap:14px}
  .hero-meta .line{display:none}
  .service-card h3{font-size:27px}
  .gallery-grid{columns:1}
  .gallery-item{margin-bottom:12px}
  .gallery-item img{width:100%;height:auto;object-fit:contain}
  .booking-form input,.booking-form select,.booking-form textarea{font-size:16px;min-height:48px}
  .booking-form textarea{min-height:100px}
  .location-actions{display:grid;grid-template-columns:1fr}
  .location-actions .btn{width:100%}
  footer{padding-bottom:calc(35px + env(safe-area-inset-bottom))}
  .floating-wa{right:14px;bottom:calc(14px + env(safe-area-inset-bottom))}
}
  .top-strip{padding:0 5%;font-size:8px}.header{height:70px;padding:0 5%}.brand{font-size:17px}.brand img{width:38px;height:38px}
  .hero{padding:45px 6% 70px;min-height:auto}.hero-visual{min-height:360px}.hero-logo{width:290px}.red-ring{width:320px}.badge{right:0;bottom:4%}
  h1{font-size:61px}.hero-text{font-size:13px}.hero-meta{margin-top:38px}
  .section{padding:75px 6%}.section-head{display:block}.section-note{margin-top:22px}
  h2{font-size:55px}.service-grid{grid-template-columns:1fr}.service-card{min-height:280px}
  .statement{padding:80px 8%}.statement-mark{font-size:76px}
  .gallery-grid{columns:2 130px;column-gap:8px}.gallery-item{margin-bottom:8px}
  .booking{grid-template-columns:1fr;gap:45px}.booking-form{padding:22px}.form-row{grid-template-columns:1fr}
  .location{grid-template-columns:1fr;gap:30px}.location-actions .btn{flex:1}
  .floating-wa{right:15px;bottom:15px}
}

/* ===== Ajustes SOMENTE para celular/iPhone (desktop acima de 1000px nao e afetado) ===== */
@media(max-width:1000px){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
  .menu{font-size:28px;width:48px;height:48px;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .mobile-menu{position:absolute;top:100%;left:5%;right:5%;margin-top:6px}
  .booking-form input,.booking-form select,.booking-form textarea{-webkit-appearance:none;appearance:none;color-scheme:dark}
  .booking-form input[type=date],.booking-form input[type=time]{min-height:48px;line-height:1.2}
  .booking-form select{background-image:linear-gradient(45deg,transparent 50%,#aaa 50%),linear-gradient(135deg,#aaa 50%,transparent 50%);background-position:calc(100% - 20px) 55%,calc(100% - 15px) 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:36px}
}
@media(max-width:650px){
  body{overflow-x:clip}
  .hero{min-height:auto}
  .hero-visual{min-height:340px}.hero-logo{width:min(290px,78vw)}.red-ring{width:min(320px,86vw)}
  .statement{grid-template-columns:minmax(0,1fr)}
  .statement>*,.booking>*,.location>*,.hero-copy{min-width:0}
  h1{font-size:clamp(44px,15.5vw,61px)}
  h2{font-size:clamp(38px,13.5vw,55px);overflow-wrap:break-word}
  .statement-mark{font-size:clamp(60px,20vw,76px);letter-spacing:-4px}
  .floating-wa{right:14px;bottom:calc(14px + env(safe-area-inset-bottom))}
}
