/* =========================================
   STUDIO 109
   Paleta: Navy #1B2545 | Offwhite #F5F5F2 | Copper #D85A30 | Mist #C9CDD6
   Tipos: Barlow Condensed Bold / Inter
========================================= */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --navy:#1B2545;
  --navy-2:#1a2340;
  --navy-dark:#111926;
  --offwhite:#F5F5F2;
  --copper:#D85A30;
  --copper-dark:#B84C25;
  --mist:#C9CDD6;
  --mist-dark:#8B919E;
  --max-w:1200px;
  --pad-x:1.25rem;
  --ease:cubic-bezier(.4,0,.2,1);
  --tf:.2s;
  --tm:.35s;
  --ts:.6s;
  --z-nav:100;
  --z-float:90;
  --z-mob:95;
  --z-ov:94;
}
@media(min-width:768px){:root{--pad-x:2.5rem}}
@media(min-width:1100px){:root{--pad-x:3.5rem}}

html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{background:var(--navy);color:var(--offwhite);font-family:'Inter',sans-serif;font-weight:400;line-height:1.65;overflow-x:hidden;animation:pagein .45s var(--ease) both}
@keyframes pagein{from{opacity:0}to{opacity:1}}
a{color:inherit;text-decoration:none}
img,video{max-width:100%;display:block}
ul{list-style:none}
button{cursor:pointer;border:none;background:none;font-family:inherit}

/* Container */
.container{width:100%;max-width:var(--max-w);margin:0 auto;padding-left:var(--pad-x);padding-right:var(--pad-x)}

/* Sections */
.section{padding:5rem 0}
@media(min-width:768px){.section{padding:7.5rem 0}}
.section-dark{background:var(--navy-dark)}
.section-mid{background:#162038}

/* Section labels */
.sec-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.65rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--copper);margin-bottom:.85rem}
.sec-label::before{content:'';display:block;width:22px;height:1px;background:var(--copper);flex-shrink:0}

.sec-title{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(2.4rem,6vw,5rem);line-height:1;letter-spacing:-.01em;color:var(--offwhite)}
.sec-title em,.hero-title em{font-style:normal;color:var(--copper)}

.sec-sub{font-size:clamp(1rem,1.8vw,1.1rem);color:var(--mist);line-height:1.75;max-width:58ch}
.sec-sub + *{margin-top:3rem}

/* --- BUTTONS --- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:'Inter',sans-serif;font-weight:600;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;padding:.9rem 1.85rem;border-radius:2px;transition:background var(--tf) var(--ease),color var(--tf) var(--ease),border-color var(--tf) var(--ease),box-shadow var(--tf) var(--ease),transform var(--tf) var(--ease);cursor:pointer;white-space:nowrap;flex-shrink:0}
.btn:active{transform:scale(.97)}
.btn svg{width:16px;height:16px;flex-shrink:0}

.btn-primary{background:var(--copper);color:#fff;border:2px solid var(--copper)}
.btn-primary:hover{background:var(--copper-dark);border-color:var(--copper-dark);box-shadow:0 4px 22px rgba(216,90,48,.38)}

.btn-outline{background:transparent;color:var(--offwhite);border:2px solid rgba(245,245,242,.35)}
.btn-outline:hover{border-color:var(--offwhite);background:rgba(245,245,242,.06)}

.btn-ghost{background:transparent;color:var(--copper);border:1.5px solid rgba(216,90,48,.45);padding:.65rem 1.25rem;font-size:.75rem}
.btn-ghost:hover{background:var(--copper);color:#fff;border-color:var(--copper)}

.btn-lg{padding:1.1rem 2.5rem;font-size:.9rem}
.btn-full{width:100%;justify-content:center}

/* Arrow icon for buttons */
.btn-arrow{transition:transform var(--tm) var(--ease)}
.btn:hover .btn-arrow{transform:translateX(4px)}

/* --- NAVIGATION --- */
.nav{position:fixed;top:0;left:0;right:0;z-index:var(--z-nav);display:flex;align-items:center;justify-content:space-between;padding:1.4rem var(--pad-x);transition:background var(--tm) var(--ease),padding var(--tm) var(--ease),box-shadow var(--tm) var(--ease)}
.nav.scrolled{background:rgba(17,25,38,.96);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding-top:.9rem;padding-bottom:.9rem;box-shadow:0 1px 0 rgba(201,205,214,.08)}

.nav-logo{display:flex;flex-direction:column;line-height:1;gap:0;text-decoration:none}
.nav-logo-street{font-family:'Inter',sans-serif;font-size:.52rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--mist-dark);line-height:1}
.nav-logo-name{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.65rem;text-transform:uppercase;color:var(--offwhite);letter-spacing:.01em;line-height:1}
.nav-logo-name span{color:var(--copper)}

.nav-links{display:none;gap:2.5rem;align-items:center}
@media(min-width:800px){.nav-links{display:flex}}
.nav-link{font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);transition:color var(--tf) var(--ease);position:relative}
.nav-link::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--copper);transition:width var(--tm) var(--ease)}
.nav-link:hover,.nav-link.active{color:var(--offwhite)}
.nav-link:hover::after,.nav-link.active::after{width:100%}

.nav-cta{display:none}
@media(min-width:1040px){.nav-cta{display:inline-flex}}

.nav-burger{display:flex;flex-direction:column;gap:5px;padding:5px;cursor:pointer}
@media(min-width:800px){.nav-burger{display:none}}
.nav-burger span{display:block;width:22px;height:2px;background:var(--offwhite);transition:transform var(--tm) var(--ease),opacity var(--tm) var(--ease);transform-origin:center}
.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.nav-mobile{position:fixed;top:0;right:-100%;width:min(300px,100vw);height:100vh;background:#090f1e;z-index:var(--z-mob);display:flex;flex-direction:column;padding:5.5rem 2rem 2.5rem;gap:.25rem;transition:right var(--tm) var(--ease);border-left:1px solid rgba(201,205,214,.07)}
.nav-mobile.open{right:0}
.nav-mobile-link{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:2.1rem;text-transform:uppercase;color:var(--offwhite);padding:.5rem 0;border-bottom:1px solid rgba(201,205,214,.07);transition:color var(--tf) var(--ease),padding-left var(--tf) var(--ease)}
.nav-mobile-link:hover,.nav-mobile-link.active{color:var(--copper);padding-left:.4rem}
.nav-mobile-cta{margin-top:2rem}

.nav-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:var(--z-ov)}
.nav-overlay.open{display:block}

/* --- WHATSAPP FLOAT --- */
.wa-float{position:fixed;bottom:1.5rem;right:1.5rem;z-index:var(--z-float);width:54px;height:54px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(37,211,102,.38);transition:transform var(--tf) var(--ease),box-shadow var(--tf) var(--ease)}
.wa-float:hover{transform:scale(1.1);box-shadow:0 6px 28px rgba(37,211,102,.55)}
.wa-float svg{width:28px;height:28px;fill:#fff}
.wa-float::before{content:'';position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(37,211,102,.3);animation:wapulse 2.2s ease infinite}
@keyframes wapulse{0%{transform:scale(1);opacity:1}100%{transform:scale(1.35);opacity:0}}

/* --- HERO --- */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;background:var(--navy);overflow:hidden}

.hero-watermark{position:absolute;right:-.05em;top:50%;transform:translateY(-50%);font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:clamp(14rem,32vw,38rem);color:rgba(245,245,242,.028);line-height:1;pointer-events:none;user-select:none;letter-spacing:-.04em}

.hero-line{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(216,90,48,.4),transparent)}

.hero-content{position:relative;z-index:2;padding-top:7.5rem;padding-bottom:5rem}

.hero-badge{display:inline-flex;align-items:center;gap:0;margin-bottom:2.25rem;border:1px solid rgba(245,245,242,.1);border-radius:2px;overflow:hidden}
.hero-badge-street{font-family:'Inter',sans-serif;font-size:.6rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--offwhite);background:rgba(245,245,242,.07);padding:.35rem .7rem;border-right:1px solid rgba(245,245,242,.1)}
.hero-badge-num{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:.95rem;color:var(--offwhite);padding:.25rem .7rem;background:var(--copper)}

.hero-title{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(3rem,9.5vw,9rem);line-height:1.0;letter-spacing:-.01em;color:var(--offwhite);max-width:14ch;margin-bottom:1.75rem}

.hero-sub{font-size:clamp(1rem,1.8vw,1.15rem);color:var(--mist);max-width:50ch;line-height:1.75;margin-bottom:2.75rem}

.hero-ctas{display:flex;gap:1rem;flex-wrap:wrap}

.hero-scroll{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:.35;pointer-events:none}
.hero-scroll span{font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mist)}
.hero-scroll-line{width:1px;height:36px;background:linear-gradient(to bottom,var(--mist),transparent);animation:scrolldown 1.8s ease infinite}
@keyframes scrolldown{0%{transform:scaleY(0);transform-origin:top}49%{transform:scaleY(1);transform-origin:top}50%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* --- THREE AXIS CARDS --- */
.axis-grid{display:grid;grid-template-columns:1fr;gap:1px;background:rgba(201,205,214,.07);border:1px solid rgba(201,205,214,.07);border-radius:3px;overflow:hidden;margin-top:4rem}
@media(min-width:768px){.axis-grid{grid-template-columns:repeat(3,1fr)}}

.axis-card{background:var(--navy);padding:2.5rem 2rem 2.25rem;transition:background var(--tm) var(--ease)}
.axis-card:hover{background:#1f2d52}
.axis-card-num{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:2.75rem;line-height:1;color:rgba(216,90,48,.14);margin-bottom:1.5rem;transition:color var(--tm) var(--ease)}
.axis-card:hover .axis-card-num{color:rgba(216,90,48,.42)}
.axis-card-icon{width:38px;height:38px;color:var(--copper);margin-bottom:1.15rem}
.axis-card-title{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.8rem;text-transform:uppercase;color:var(--offwhite);margin-bottom:.65rem;letter-spacing:.01em}
.axis-card-text{font-size:.9rem;color:var(--mist);line-height:1.7}
.axis-card-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.5rem;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--copper);transition:gap var(--tf) var(--ease)}
.axis-card:hover .axis-card-link{gap:.7rem}
.axis-card-link svg{width:13px;height:13px}

/* --- STUDIO / PRICING --- */
.studio-wrap{display:grid;grid-template-columns:1fr;gap:3.5rem}
@media(min-width:1024px){.studio-wrap{grid-template-columns:1fr 1fr;gap:5rem;align-items:start}}

.pricing-table{margin-top:2.25rem;border:1px solid rgba(201,205,214,.1);border-radius:3px;overflow:hidden}
.pricing-row{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.4rem;border-bottom:1px solid rgba(201,205,214,.07);gap:1rem;transition:background var(--tf) var(--ease)}
.pricing-row:last-child{border-bottom:none}
.pricing-row:hover{background:rgba(245,245,242,.03)}
.pricing-row-info{flex:1}
.pricing-row-label{font-size:.9rem;font-weight:500;color:var(--offwhite)}
.pricing-row-detail{font-size:.72rem;color:var(--mist-dark);margin-top:.1rem}
.pricing-row-price{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.55rem;color:var(--copper);white-space:nowrap;flex-shrink:0}

.studio-cta-note{margin-top:.9rem;font-size:.78rem;color:var(--mist-dark);display:flex;align-items:center;gap:.4rem}
.studio-cta-note svg{width:13px;height:13px;color:var(--copper);flex-shrink:0}

.studio-visual-ph{aspect-ratio:4/3;background:#1a2340;border-radius:3px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.85rem;border:1px solid rgba(201,205,214,.07);overflow:hidden;position:relative}
.studio-visual-ph::before{content:'109';position:absolute;bottom:-.1em;right:-.05em;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:10rem;color:rgba(245,245,242,.04);line-height:1;pointer-events:none}
.studio-ph-icon{width:44px;height:44px;color:var(--copper);opacity:.5;position:relative}
.studio-ph-label{font-size:.65rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--mist-dark);position:relative}

.studio-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.5rem}
.studio-tag{background:rgba(245,245,242,.04);border:1px solid rgba(201,205,214,.1);border-radius:2px;padding:.3rem .65rem;font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--mist)}

/* --- PORTFOLIO GRID --- */
.port-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:3rem}
@media(min-width:640px){.port-grid{gap:1rem}}
@media(min-width:900px){.port-grid{grid-template-columns:repeat(3,1fr)}}

.port-item{position:relative;aspect-ratio:16/10;background:#1a2340;border-radius:3px;overflow:hidden;cursor:pointer;border:1px solid rgba(201,205,214,.06);transition:transform var(--tm) var(--ease)}
.port-item:hover{transform:scale(1.01)}
.port-item--wide{grid-column:span 2;aspect-ratio:16/9}
@media(min-width:900px){.port-item--wide{grid-column:span 1;aspect-ratio:16/10}}

.port-item::before{content:'109';position:absolute;bottom:-.1em;right:-.03em;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:5rem;color:rgba(245,245,242,.04);line-height:1;pointer-events:none;z-index:0}

.port-item-tag{position:absolute;top:.75rem;left:.75rem;z-index:2;background:rgba(11,19,38,.8);border:1px solid rgba(201,205,214,.12);border-radius:2px;padding:.2rem .5rem;font-size:.58rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mist)}

.port-item-ov{position:absolute;inset:0;z-index:1;background:rgba(27,37,69,.25);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.7rem;transition:background var(--tm) var(--ease)}
.port-item:hover .port-item-ov{background:rgba(216,90,48,.12)}

.port-play{width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(245,245,242,.28);display:flex;align-items:center;justify-content:center;transition:border-color var(--tm) var(--ease),background var(--tm) var(--ease),transform var(--tm) var(--ease)}
.port-item:hover .port-play{border-color:var(--copper);background:var(--copper);transform:scale(1.08)}
.port-play svg{width:16px;height:16px;fill:var(--offwhite);margin-left:2px}

.port-item-label{font-size:.65rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:rgba(245,245,242,.45);transition:color var(--tm) var(--ease)}
.port-item:hover .port-item-label{color:var(--offwhite)}

.port-item--soon .port-item-ov{background:rgba(11,19,38,.5)}
.port-soon-badge{position:absolute;top:.75rem;right:.75rem;z-index:2;font-size:.58rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(216,90,48,.7)}

.port-cta{margin-top:3rem;text-align:center}

/* --- FAQ --- */
.faq-list{margin-top:3rem;border-top:1px solid rgba(201,205,214,.08)}
.faq-item{border-bottom:1px solid rgba(201,205,214,.08)}
.faq-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.4rem 0;gap:1.5rem;cursor:pointer;text-align:left;background:none;border:none;color:var(--offwhite);transition:color var(--tf) var(--ease)}
.faq-trigger:hover{color:var(--copper)}
.faq-q{font-size:clamp(.93rem,1.8vw,1.05rem);font-weight:500;line-height:1.45;flex:1}
.faq-icon{width:26px;height:26px;border-radius:50%;border:1px solid rgba(201,205,214,.18);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color var(--tf) var(--ease),background var(--tf) var(--ease),transform var(--tm) var(--ease)}
.faq-item.open .faq-icon{border-color:var(--copper);background:var(--copper);transform:rotate(45deg)}
.faq-trigger:hover .faq-icon{border-color:rgba(216,90,48,.5)}
.faq-icon svg{width:11px;height:11px;stroke:var(--offwhite);stroke-width:2.5;fill:none}
.faq-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--tm) var(--ease)}
.faq-item.open .faq-body{grid-template-rows:1fr}
.faq-body-inner{overflow:hidden}
.faq-a{padding-bottom:1.5rem;font-size:.93rem;color:var(--mist);line-height:1.75;max-width:70ch}

/* --- FOOTER --- */
.footer{background:#090f1e;border-top:1px solid rgba(201,205,214,.07);padding:4.5rem 0 2rem}
.footer-inner{display:grid;grid-template-columns:1fr;gap:3rem}
@media(min-width:768px){.footer-inner{grid-template-columns:2fr 1fr 1fr;gap:3.5rem}}
.footer-brand-name{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:2rem;text-transform:uppercase;color:var(--offwhite);margin-bottom:.65rem}
.footer-brand-name span{color:var(--copper)}
.footer-tagline{font-size:.85rem;color:var(--mist-dark);font-style:italic;margin-bottom:1.5rem}
.footer-addr{font-size:.875rem;color:var(--mist);line-height:1.8;font-style:normal}
.footer-addr a{color:var(--copper);transition:opacity var(--tf) var(--ease)}
.footer-addr a:hover{opacity:.8}
.footer-col-title{font-size:.62rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--copper);margin-bottom:1.15rem}
.footer-links{display:flex;flex-direction:column;gap:.55rem}
.footer-link{font-size:.875rem;color:var(--mist);transition:color var(--tf) var(--ease)}
.footer-link:hover{color:var(--offwhite)}
.footer-bottom{margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(201,205,214,.06);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}
.footer-copy{font-size:.72rem;color:var(--mist-dark)}

/* --- PAGE HEADER (inner pages) --- */
.page-hdr{padding-top:9.5rem;padding-bottom:4.5rem;position:relative;overflow:hidden;border-bottom:1px solid rgba(201,205,214,.07)}
.page-hdr::after{content:attr(data-bg);position:absolute;right:-.05em;top:50%;transform:translateY(-50%);font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:clamp(8rem,22vw,22rem);color:rgba(245,245,242,.025);line-height:1;pointer-events:none}
.page-hdr-title{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(3rem,8vw,7rem);line-height:1;letter-spacing:-.01em;color:var(--offwhite);position:relative}
.page-hdr-sub{font-size:1.1rem;color:var(--mist);margin-top:1.1rem;max-width:58ch;line-height:1.7;position:relative}

/* --- SERVICES PAGE --- */
.svc-section{padding:5rem 0;border-bottom:1px solid rgba(201,205,214,.07)}
.svc-section:last-of-type{border-bottom:none}

.prod-grid{display:grid;grid-template-columns:1fr;gap:.85rem;margin-top:2.5rem}
@media(min-width:560px){.prod-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.prod-grid{grid-template-columns:repeat(4,1fr)}}

.prod-card{background:rgba(245,245,242,.025);border:1px solid rgba(201,205,214,.08);border-radius:3px;padding:1.75rem 1.5rem;display:flex;flex-direction:column;gap:.7rem;transition:background var(--tm) var(--ease),border-color var(--tm) var(--ease),transform var(--tm) var(--ease);cursor:pointer}
.prod-card:hover{background:rgba(245,245,242,.045);border-color:rgba(216,90,48,.28);transform:translateY(-3px)}
.prod-card-icon{width:34px;height:34px;color:var(--copper)}
.prod-card-title{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.3rem;text-transform:uppercase;color:var(--offwhite)}
.prod-card-text{font-size:.85rem;color:var(--mist);line-height:1.65;flex:1}
.prod-card .btn-ghost{margin-top:auto;align-self:flex-start}

/* --- PORTFOLIO FILTER --- */
.port-filter{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:2.5rem}
.filter-btn{font-family:'Inter',sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.5rem 1.1rem;border:1px solid rgba(201,205,214,.14);border-radius:2px;background:transparent;color:var(--mist);cursor:pointer;transition:background var(--tf) var(--ease),color var(--tf) var(--ease),border-color var(--tf) var(--ease)}
.filter-btn:hover,.filter-btn.active{background:var(--copper);color:#fff;border-color:var(--copper)}

/* --- CONTACT PAGE --- */
.contact-wrap{padding-top:10rem;padding-bottom:5.5rem;text-align:center;position:relative;overflow:hidden}
.contact-wrap::before{content:'109';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:clamp(16rem,40vw,44rem);color:rgba(245,245,242,.025);line-height:1;pointer-events:none;white-space:nowrap}
.contact-inner{position:relative}
.contact-title{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(3rem,8vw,7.5rem);line-height:1;letter-spacing:-.01em;color:var(--offwhite);margin-bottom:1.5rem}
.contact-sub{font-size:1.05rem;color:var(--mist);max-width:50ch;margin:0 auto 3rem;line-height:1.75}

.contact-info-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-top:5rem}
@media(min-width:640px){.contact-info-grid{grid-template-columns:repeat(3,1fr)}}

.contact-info-card{padding:2rem 1.75rem;border:1px solid rgba(201,205,214,.09);border-radius:3px;background:rgba(245,245,242,.02)}
.contact-info-label{font-size:.62rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--copper);margin-bottom:.9rem}
.contact-info-text{font-size:.9rem;color:var(--mist);line-height:1.75}
.contact-info-text strong{color:var(--offwhite);display:block}
.contact-info-text a{color:var(--copper)}

.map-wrap{margin-top:4rem;width:100%;height:380px;border-radius:3px;overflow:hidden;border:1px solid rgba(201,205,214,.08);background:#1a2340;position:relative}
.map-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:invert(90%) hue-rotate(180deg) saturate(.75) brightness(.85)}
.map-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;opacity:.4;pointer-events:none}
.map-fallback svg{width:36px;height:36px;color:var(--copper)}
.map-fallback span{font-size:.68rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--mist)}

/* --- SCROLL REVEAL (progressive enhancement — só anima com .js no html) --- */
.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.js .reveal.visible{opacity:1;transform:translateY(0)}
.js .reveal-l{opacity:0;transform:translateX(-26px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.js .reveal-l.visible{opacity:1;transform:translateX(0)}
.js .reveal-r{opacity:0;transform:translateX(26px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.js .reveal-r.visible{opacity:1;transform:translateX(0)}

.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}.d5{transition-delay:.5s}

@media(prefers-reduced-motion:reduce){
  .js .reveal,.js .reveal-l,.js .reveal-r{opacity:1;transform:none;transition:none}
  body{animation:none}
  .wa-float::before{animation:none}
  .hero-scroll-line{animation:none}
}

/* --- INCLUSO LIST --- */
.incluso-wrap{margin-top:2rem;margin-bottom:2rem}
.incluso-title{font-family:'Inter',sans-serif;font-size:.62rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--copper);margin-bottom:.85rem}
.incluso-list{list-style:none;display:flex;flex-direction:column;gap:.55rem}
.incluso-item{display:flex;align-items:flex-start;gap:.6rem;font-size:.875rem;color:var(--mist);line-height:1.55}
.incluso-item svg{width:14px;height:14px;color:var(--copper);flex-shrink:0;margin-top:.17rem}

/* --- SETUP NOTE --- */
.setup-note{font-size:.78rem;color:var(--mist-dark);border-left:2px solid rgba(216,90,48,.3);padding:.75rem 1rem;margin-top:1.5rem;margin-bottom:2rem;line-height:1.7;border-radius:0 2px 2px 0}

/* --- ATENDIMENTO HUMANO --- */
.atendimento-block{border-left:2px solid var(--copper);background:rgba(245,245,242,.025);padding:1.2rem 1.5rem;margin-top:2rem;border-radius:0 2px 2px 0;max-width:520px;text-align:left}
.atendimento-label{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.14em;color:var(--copper);margin-bottom:.45rem}
.atendimento-text{font-size:.88rem;color:var(--mist);line-height:1.72}

/* Utils */
.mt-sm{margin-top:1.5rem}.mt-md{margin-top:2.5rem}.mt-lg{margin-top:3.5rem}
.divider{height:1px;background:rgba(201,205,214,.08)}

/* --- DOCK SOCIAL --- */
.dock-social {
  display: flex;
  align-items: flex-end;
  gap: .75rem;
}
.dock-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(245,245,242,.06);
  border: 1px solid rgba(201,205,214,.1);
  color: var(--mist-dark);
  transition: transform .2s cubic-bezier(.34,1.56,.64,1), background .2s ease, color .2s ease;
  flex-shrink: 0;
}
.dock-item svg {
  width: 17px;
  height: 17px;
}
.dock-item:hover {
  transform: scale(1.45) translateY(-6px);
  background: rgba(216,90,48,.15);
  color: var(--offwhite);
  border-color: rgba(216,90,48,.3);
}
.dock-social:hover .dock-item:not(:hover) {
  transform: scale(1.1) translateY(-2px);
}

/* --- TOOLS TICKER --- */
.tools-section {
  padding: 1.5rem 0 4rem;
  border-bottom: 1px solid rgba(201,205,214,.07);
  overflow: hidden;
}
.tools-title {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: clamp(1rem, 1.8vw, 1.1rem);
  text-transform: none;
  letter-spacing: 0;
  color: var(--mist);
  line-height: 1.75;
  text-align: center;
  max-width: 58ch;
  margin: 0 auto 3rem;
}
.tools-ticker-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.tools-blur {
  position: absolute;
  top: 0;
  width: 180px;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}
.tools-blur--left {
  left: 0;
  background: linear-gradient(to right, var(--navy) 0%, transparent 100%);
}
.tools-blur--right {
  right: 0;
  background: linear-gradient(to left, var(--navy) 0%, transparent 100%);
}
/* O wrapper anima — os dois tracks ficam lado a lado formando um loop contínuo */
.tools-ticker {
  display: flex;
  width: max-content;
  animation: toolsScroll 30s linear infinite;
}
.tools-ticker:hover {
  animation-play-state: paused;
}
@keyframes toolsScroll {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
.tools-track {
  display: flex;
  align-items: center;
  gap: 3rem;
  padding-right: 3rem; /* gap de fechamento para loop sem salto */
  flex-shrink: 0;
}
.tools-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .55rem;
  flex-shrink: 0;
}
.tools-item img {
  width: 36px;
  height: 36px;
  object-fit: contain;
  opacity: .7;
  transition: opacity .2s ease;
}
.tools-item:hover img {
  opacity: 1;
}
.tools-item span {
  font-size: .6rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--mist);
  transition: color .2s ease;
}
.tools-item:hover span {
  color: var(--offwhite);
}
