/* ===== RESET ===== */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --teal:#1a9e8f;
  --teal-dark:#158a7d;
  --teal-deeper:#0f7a6e;
  --green-footer:#1a7a6e;
  --dark:#1a1a1a;
  --gray:#555;
  --gray-light:#888;
  --light:#f5f5f5;
  --white:#fff;
  --radius:16px;
}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;color:var(--dark);background:var(--white);line-height:1.6;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
ul{list-style:none}
.container{max-width:1100px;margin:0 auto;padding:0 24px}

/* ===== HEADER ===== */
.header{position:fixed;top:0;left:0;right:0;z-index:100;background:#f7f7f7;transition:box-shadow .3s}
.header .container{display:flex;align-items:center;justify-content:space-between;height:88px}
.header__logo{display:flex;align-items:center;flex-shrink:0}
.header__logo img{height:68px;width:auto}

/* Desktop Nav */
.header__nav{display:flex;align-items:center;gap:6px}
.header__nav-link{font-size:13px;font-weight:600;color:#402c2c;transition:.3s;white-space:nowrap;padding:6px 10px;border-radius:6px;position:relative;letter-spacing:-.01em;font-family:'Urbanist','Inter',sans-serif}
.header__nav-link:hover{color:var(--teal)}
.header__nav-link.active{color:var(--teal)}

/* Dropdown trigger */
.has-dropdown{position:relative}
.has-dropdown .header__nav-link{display:flex;align-items:center;gap:4px;cursor:pointer}
.has-dropdown .chevron{width:8px;height:6px;opacity:.5;transition:transform .2s}
.has-dropdown.open .chevron{transform:rotate(180deg)}
.has-dropdown.open .header__nav-link{color:var(--teal)}

/* ===== MEGA MENU ===== */
.mega-menu{display:none;position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);background:var(--white);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.1),0 0 0 1px rgba(0,0,0,.04);z-index:50;min-width:320px;max-width:480px;overflow:hidden}
.mega-menu::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--teal),#2ec4a8,var(--teal));border-radius:16px 16px 0 0}
.has-dropdown.open .mega-menu{display:block;animation:megaPop .2s cubic-bezier(.16,1,.3,1)}
@keyframes megaPop{from{opacity:0;transform:translateX(-50%) translateY(8px) scale(.97)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}

/* Menu header */
.mega-menu__head{padding:20px 24px 12px;border-bottom:1px solid rgba(0,0,0,.05)}
.mega-menu__head-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--teal)}
.mega-menu__head-desc{font-size:12px;color:#999;margin-top:4px;line-height:1.5}

/* Links list */
.mega-menu__list{padding:8px}
.mega-menu__item{display:flex;align-items:center;gap:14px;padding:11px 16px;border-radius:10px;transition:.15s;text-decoration:none}
.mega-menu__item:hover{background:rgba(26,158,143,.06)}
.mega-menu__item-icon{width:36px;height:36px;border-radius:10px;background:rgba(26,158,143,.08);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:.2s}
.mega-menu__item:hover .mega-menu__item-icon{background:var(--teal)}
.mega-menu__item-icon svg{width:16px;height:16px;color:var(--teal);transition:.2s}
.mega-menu__item:hover .mega-menu__item-icon svg{color:#fff}
.mega-menu__item-info{flex:1;min-width:0}
.mega-menu__item-name{font-size:13px;font-weight:600;color:#402c2c;transition:color .15s;display:block}
.mega-menu__item:hover .mega-menu__item-name{color:var(--teal)}
.mega-menu__item-desc{font-size:11px;color:#aaa;display:block;margin-top:1px}
.mega-menu__item-arrow{width:14px;height:14px;color:var(--teal);opacity:0;transition:.2s;flex-shrink:0;transform:translateX(-4px)}
.mega-menu__item:hover .mega-menu__item-arrow{opacity:1;transform:translateX(0)}

/* CTA Button */
.header__cta{background:#131d2c;color:var(--white);padding:10px 22px;border-radius:80px;font-size:13px;font-weight:600;transition:.3s;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;letter-spacing:-.01em;font-family:'Urbanist','Inter',sans-serif}
.header__cta:hover{background:#0a1420;transform:translateY(-1px)}
.header__cta svg{transition:transform .2s}
.header__cta:hover svg{transform:translateX(2px)}

/* Hamburger */
.hamburger{display:none;width:40px;height:40px;border-radius:10px;background:rgba(0,0,0,.05);align-items:center;justify-content:center;cursor:pointer;border:none;padding:0;z-index:101;flex-direction:column;gap:4px}
.hamburger span{width:18px;height:2px;background:#402c2c;transition:.3s;display:block;border-radius:2px}
.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}
.hamburger.active span:nth-child(2){opacity:0}
.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}

/* Mobile Nav — Slide-in Panel */
.mobile-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:98;opacity:0;transition:opacity .3s}
.mobile-overlay.active{display:block;opacity:1}
.mobile-nav{position:fixed;top:0;right:0;bottom:0;width:82%;max-width:340px;background:#0f5f56;z-index:99;padding:0;transform:translateX(100%);transition:transform .35s ease;display:flex;flex-direction:column;overflow:hidden}
.mobile-nav.active{transform:translateX(0)}
.mobile-nav__header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 16px}
.mobile-nav__header img{height:36px;width:auto;filter:brightness(0) invert(1);opacity:.8}
.mobile-nav__close{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}
.mobile-nav__close svg{width:16px;height:16px;stroke:#fff;stroke-width:2}
.mobile-nav__body{flex:1;overflow-y:auto;padding:0 12px 20px}
.mobile-nav__link{display:block;padding:12px 16px;font-size:13px;font-weight:600;color:rgba(255,255,255,.7);border-radius:8px;text-transform:uppercase;letter-spacing:.04em;transition:.15s}
.mobile-nav__link:hover,.mobile-nav__link.active{background:rgba(255,255,255,.1);color:#fff}
.mobile-nav__group-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;font-size:13px;font-weight:600;color:rgba(255,255,255,.7);border-radius:8px;border:none;background:none;cursor:pointer;text-transform:uppercase;letter-spacing:.04em;transition:.15s;text-align:left;font-family:inherit}
.mobile-nav__group-btn:hover,.mobile-nav__group-btn.active{background:rgba(255,255,255,.1);color:#fff}
.mobile-nav__group-btn .chevron-m{width:8px;height:6px;stroke:rgba(255,255,255,.5);transition:transform .25s}
.mobile-nav__group-btn.open .chevron-m{transform:rotate(180deg)}
.mobile-nav__sub{max-height:0;overflow:hidden;transition:max-height .3s ease}
.mobile-nav__sub.open{max-height:400px}
.mobile-nav__sub a{display:flex;align-items:center;gap:10px;padding:10px 16px 10px 28px;font-size:12px;font-weight:500;color:rgba(255,255,255,.5);border-radius:8px;transition:.15s;text-transform:none;letter-spacing:0}
.mobile-nav__sub a:hover{background:rgba(255,255,255,.05);color:rgba(255,255,255,.8)}
.mobile-nav__sub a .sub-dot{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.2);flex-shrink:0}
.mobile-nav__footer{border-top:1px solid rgba(255,255,255,.1);padding:16px 20px}
.mobile-nav__footer a{display:flex;align-items:center;gap:8px;font-size:11px;color:rgba(255,255,255,.4);margin-bottom:8px;transition:.15s}
.mobile-nav__footer a:hover{color:rgba(255,255,255,.7)}

/* ===== HERO HOME (YouTube Video) ===== */
.hero-home{position:relative;width:100%;height:100vh;overflow:hidden;background:#0a0a0a}
.hero-home__video{position:absolute;inset:-60px;z-index:1;pointer-events:none}
.hero-home__video iframe{position:absolute;top:50%;left:50%;width:120vw;height:67.5vw;min-height:120vh;min-width:213.33vh;transform:translate(-50%,-50%);border:0}

/* ===== LGPD COOKIE BANNER ===== */
.lgpd-banner{display:none;position:fixed;bottom:24px;left:24px;width:calc(100% - 48px);max-width:420px;background:#fff;color:#000;padding:28px;border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.15);font-family:'Inter',sans-serif;z-index:200;animation:lgpdIn .4s ease}
@keyframes lgpdIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.lgpd-banner.visible{display:flex;flex-direction:column;gap:16px}
.lgpd-banner__title{font-size:16px;font-weight:700;color:#000;margin:0}
.lgpd-banner__text{font-size:13px;line-height:1.6;color:#444;margin:0}
.lgpd-banner__text strong{color:#000}
.lgpd-banner__buttons{display:flex;gap:10px}
.lgpd-btn{flex:1;padding:12px 16px;border-radius:8px;font-family:'Inter',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:.2s;text-align:center;border:none}
.lgpd-btn--outline{background:transparent;border:2px solid var(--teal);color:var(--teal)}
.lgpd-btn--outline:hover{background:rgba(26,158,143,.06)}
.lgpd-btn--solid{background:var(--teal);color:#fff;border:2px solid var(--teal)}
.lgpd-btn--solid:hover{background:var(--teal-dark);border-color:var(--teal-dark)}
@media(max-width:480px){
  .lgpd-banner{left:12px;bottom:12px;width:calc(100% - 24px);padding:20px}
}

/* ===== INTRO SECTION (Video + Rotating Text) ===== */
.intro-section{position:relative;min-height:80vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f5f3ee}
.intro-section__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;mix-blend-mode:darken;pointer-events:none}
.intro-section__content{position:relative;z-index:2;text-align:center;padding:80px 24px;max-width:800px}
.intro-section__tag{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--teal);text-transform:uppercase;letter-spacing:.08em;margin-bottom:20px}
.intro-section__dot{width:8px;height:8px;border-radius:50%;background:var(--teal)}
.intro-section__title{font-size:clamp(26px,3.8vw,42px);font-weight:500;color:#402c2c;line-height:1.2;letter-spacing:-.02em;margin-bottom:20px}
.intro-section__phrase{font-size:clamp(16px,2.2vw,22px);font-weight:500;font-style:italic;color:var(--teal);line-height:1.4;min-height:1.4em;transition:opacity .4s}
.intro-section__phrase.fade{opacity:0}
.intro-section__btn{display:inline-flex;align-items:center;gap:7px;background:#131d2c;color:#fff;padding:12px 26px;border-radius:80px;font-size:14px;font-weight:600;margin-top:28px;transition:.3s;letter-spacing:-.01em}
.intro-section__btn:hover{background:#0a1420;transform:translateY(-2px)}
.intro-section__btn svg{transition:transform .2s}
.intro-section__btn:hover svg{transform:translateX(3px)}

@media(max-width:768px){
  .intro-section{min-height:70vh}
  .intro-section__content{padding:60px 20px}
}

/* ===== ABOUT + VIDEO SECTION ===== */
.about-video{padding:80px 0;background:#fff}
.about-video__grid{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center}

/* Left text */
.about-video__tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--teal);text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px}
.about-video__dot{width:7px;height:7px;border-radius:50%;background:var(--teal)}
.about-video__title{font-size:clamp(24px,3.2vw,36px);font-weight:700;color:#402c2c;line-height:1.15;margin-bottom:24px;letter-spacing:-.02em}

/* Stacked photos with hover expand */
.about-video__photos{display:flex;align-items:center;margin-bottom:24px;padding-left:10px;height:140px}
.about-video__photos img{width:100px;height:130px;object-fit:cover;border-radius:14px;border:4px solid #fff;box-shadow:0 4px 16px rgba(0,0,0,.15);margin-left:-20px;transition:transform .35s cubic-bezier(.25,.8,.25,1),margin .35s cubic-bezier(.25,.8,.25,1);cursor:pointer;position:relative}
.about-video__photos img:first-child{margin-left:0}
.about-video__photos img:nth-child(1){transform:rotate(-8deg);z-index:1}
.about-video__photos img:nth-child(2){transform:rotate(-3deg);z-index:2}
.about-video__photos img:nth-child(3){transform:rotate(4deg);z-index:3}
.about-video__photos img:nth-child(4){transform:rotate(8deg);z-index:4}
.about-video__photos:hover img{margin-left:6px;transform:rotate(0deg)!important}
.about-video__photos:hover img:first-child{margin-left:0}
.about-video__photos img:hover{transform:rotate(0deg) scale(1.08)!important;z-index:10;box-shadow:0 8px 28px rgba(0,0,0,.22)}

.about-video__desc{font-size:15px;color:var(--gray);line-height:1.75;margin-bottom:16px;text-align:justify}
.about-video__desc strong{color:#402c2c;font-weight:700}

/* Right: MacBook mockup with video */
.about-video__laptop{display:flex;flex-direction:column;align-items:center;gap:16px}
.about-video__laptop .video-embed{width:100%;max-width:560px;margin:0}
.about-video__macbook{position:relative;width:100%;max-width:560px}
.about-video__macbook-img{width:100%;height:auto;display:block;position:relative;z-index:1;pointer-events:none}
.about-video__macbook-screen{position:absolute;z-index:2;top:3.3%;left:11.8%;width:76.5%;height:64%;overflow:hidden;border-radius:2px}
.about-video__macbook-screen iframe{width:100%;height:100%;border:0}
.about-video__video-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-light)}

@media(max-width:768px){
  .about-video{padding:48px 0}
  .about-video__grid{grid-template-columns:1fr;gap:40px}
  .about-video__laptop-frame{max-width:100%}
  .about-video__photos img{width:80px;height:105px}
}

/* ===== PAGE HERO (inner pages) ===== */
.page-hero{position:relative;padding:120px 0 40px;overflow:hidden;text-align:center}
.page-hero__bg{position:absolute;inset:0;z-index:0}
.page-hero__bg img{width:100%;height:100%;object-fit:cover}
.page-hero__overlay{position:absolute;inset:0;z-index:1;background:rgba(0,0,0,.3)}
.page-hero__banner{position:relative;z-index:2;display:inline-block;background:var(--teal);padding:24px 48px;border-radius:16px;margin-bottom:16px}
.page-hero__banner h1{font-size:clamp(24px,3.5vw,36px);font-weight:700;color:var(--white);font-style:italic}
.page-hero__banner p{font-size:13px;color:rgba(255,255,255,.7);margin-top:4px}

/* ===== SECTIONS ===== */
.section{padding:64px 0}
.section--teal{background:var(--teal);color:var(--white)}
.section--light{background:var(--light)}
.section__title{font-size:clamp(24px,3vw,36px);font-weight:700;text-align:center;margin-bottom:12px;color:var(--teal)}
.section__title--white{color:var(--white)}
.section__subtitle{font-size:15px;color:var(--gray);text-align:center;max-width:700px;margin:0 auto 40px;line-height:1.7}
.section__subtitle--white{color:rgba(255,255,255,.8)}

/* ===== GRID ===== */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}

/* ===== LAPTOP MOCKUP ===== */
.laptop-mockup{max-width:500px;margin:0 auto;position:relative}
.laptop-mockup img{width:100%;border-radius:8px;box-shadow:0 8px 30px rgba(0,0,0,.15)}

/* ===== CARDS ===== */
.card{background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:0 2px 16px rgba(0,0,0,.06);transition:.3s}
.card:hover{transform:translateY(-4px);box-shadow:0 8px 32px rgba(0,0,0,.1)}
.card__img{width:100%;aspect-ratio:4/3;object-fit:cover}
.card__body{padding:20px}
.card__title{font-size:16px;font-weight:700;margin-bottom:6px}
.card__text{font-size:14px;color:var(--gray);line-height:1.6}

/* Project cards */
.project-card{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;cursor:pointer;display:block}
.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.project-card:hover img{transform:scale(1.05)}
.project-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65) 0%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:20px}
.project-card__title{color:var(--white);font-size:18px;font-weight:700}
.project-card__link{color:#7edcca;font-size:12px;font-weight:600;display:flex;align-items:center;gap:4px;margin-top:4px}

/* Value cards */
.value-card{background:var(--white);border-radius:12px;padding:24px;box-shadow:0 2px 12px rgba(0,0,0,.05);transition:.3s;border-left:3px solid var(--teal)}
.value-card:hover{box-shadow:0 6px 24px rgba(0,0,0,.1)}
.value-card__icon{width:40px;height:40px;border-radius:10px;background:rgba(26,158,143,.1);display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.value-card__icon svg{width:20px;height:20px;color:var(--teal)}
.value-card__title{font-size:14px;font-weight:700;text-transform:uppercase;margin-bottom:6px;color:var(--teal)}
.value-card__text{font-size:13px;color:var(--gray);line-height:1.6}

/* Principle cards */
.principle-card{background:var(--teal);border-radius:12px;padding:24px;text-align:center;color:var(--white)}
.principle-card__icon{width:48px;height:48px;background:rgba(255,255,255,.2);border-radius:10px;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}
.principle-card h3{font-size:16px;font-weight:700;margin-bottom:8px}
.principle-card p{font-size:13px;opacity:.85;line-height:1.5}

/* Objective items */
.objective-item{display:flex;align-items:flex-start;gap:12px;padding:16px;border-bottom:1px solid rgba(0,0,0,.06)}
.objective-item__icon{width:32px;height:32px;border-radius:8px;background:rgba(26,158,143,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.objective-item__icon svg{width:16px;height:16px;color:var(--teal)}
.objective-item p{font-size:14px;color:var(--gray);line-height:1.5}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:24px;font-size:14px;font-weight:600;transition:.3s;border:none;cursor:pointer}
.btn--teal{background:var(--teal);color:var(--white)}
.btn--teal:hover{background:var(--teal-dark)}
.btn--outline{background:transparent;color:var(--teal);border:1.5px solid var(--teal)}
.btn--outline:hover{background:var(--teal);color:var(--white)}
.btn--white{background:var(--white);color:var(--teal)}
.btn--white:hover{background:var(--light)}

/* ===== CAROUSEL / TICKER ===== */
.photo-carousel{position:relative;overflow:hidden;padding:40px 0}
.photo-carousel__track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 24px}
.photo-carousel__track::-webkit-scrollbar{display:none}
.photo-carousel__item{flex-shrink:0;width:300px;border-radius:12px;overflow:hidden;scroll-snap-align:start}
.photo-carousel__item img{width:100%;height:220px;object-fit:cover}

.ticker{overflow:hidden;padding:32px 0;background:var(--light)}
.ticker__track{display:flex;gap:48px;animation:ticker 30s linear infinite;width:max-content;align-items:center}
.ticker__track img{height:40px;width:auto;opacity:.5;filter:grayscale(40%);transition:.3s}
.ticker__track img:hover{opacity:1;filter:none}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ===== PARTNERS ===== */
.partners{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:32px;padding:20px 0}
.partners img{height:45px;width:auto;opacity:.5;filter:grayscale(30%);transition:.3s}
.partners img:hover{opacity:1;filter:none}

/* ===== SEAL SECTION ===== */
.seal-section{text-align:center;padding:48px 0}
.seal-section img{max-width:200px;margin:0 auto 16px}

/* ===== CONTENT BLOCKS ===== */
.content-block{padding:48px 0}
.content-block h2{font-size:24px;font-weight:700;color:var(--teal);margin-bottom:12px}
.content-block h3{font-size:20px;font-weight:600;color:var(--teal);margin-bottom:10px}
.content-block p{font-size:15px;color:var(--gray);line-height:1.7;margin-bottom:14px}
.content-block ul{margin-bottom:16px}
.content-block li{font-size:14px;color:var(--gray);line-height:1.6;margin-bottom:8px;padding-left:20px;position:relative}
.content-block li::before{content:'';position:absolute;left:0;top:8px;width:8px;height:8px;border-radius:50%;background:var(--teal)}

/* ===== CONTACT FORM ===== */
.contact-hero{position:relative;min-height:80vh;display:flex;align-items:center;justify-content:center;overflow:hidden}
.contact-hero__bg{position:absolute;inset:0;z-index:0}
.contact-hero__bg img{width:100%;height:100%;object-fit:cover}
.contact-hero__overlay{position:absolute;inset:0;background:rgba(0,0,0,.4);z-index:1}
.contact-hero__content{position:relative;z-index:2;width:100%;max-width:600px;padding:140px 24px 60px;text-align:center}
.contact-hero__content h1{color:var(--white);font-size:clamp(22px,3vw,32px);font-weight:600;margin-bottom:32px;line-height:1.4}
.contact-form{background:rgba(255,255,255,.12);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:32px;text-align:left}
.contact-form input,.contact-form textarea{width:100%;padding:12px 16px;border:none;border-bottom:1px solid rgba(255,255,255,.3);background:transparent;color:var(--white);font-size:14px;font-family:inherit;margin-bottom:16px;transition:.3s}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(255,255,255,.5)}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-bottom-color:var(--teal)}
.contact-form textarea{resize:vertical;min-height:100px}
.contact-form .btn{width:100%;justify-content:center;background:var(--white);color:var(--dark);font-weight:700;border-radius:8px;padding:14px}
.contact-form .btn:hover{background:var(--light)}
.contact-social{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px}
.contact-social a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;transition:.3s}
.contact-social a:hover{background:var(--teal)}
.contact-social svg{width:16px;height:16px;fill:var(--white)}

/* ===== FOOTER ===== */
.footer{background:#fff;color:var(--dark);padding:0}

/* Top bar accent */
.footer__accent{height:3px;background:linear-gradient(90deg,var(--teal),#2ec4a8,var(--teal))}

/* Main content */
.footer__main{padding:56px 0 40px}
.footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}

/* Brand column */
.footer__brand{display:flex;flex-direction:column;gap:16px}
.footer__brand img{height:auto;width:160px;object-fit:contain}
.footer__brand p{font-size:13px;color:var(--gray);line-height:1.7;max-width:280px}
.footer__social{display:flex;gap:8px;margin-top:4px}
.footer__social a{width:36px;height:36px;border-radius:10px;background:rgba(0,0,0,.05);display:flex;align-items:center;justify-content:center;transition:.2s}
.footer__social a:hover{background:var(--teal)}
.footer__social svg{width:15px;height:15px;fill:#555;opacity:.7}
.footer__social a:hover svg{fill:#fff;opacity:1}

/* Link columns */
.footer__col-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--gray-light);margin-bottom:20px}
.footer__links{display:flex;flex-direction:column;gap:0}
.footer__links a{font-size:13px;color:var(--gray);padding:6px 0;transition:.15s;display:flex;align-items:center;gap:6px}
.footer__links a:hover{color:var(--teal);padding-left:4px}
.footer__links a::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--teal);opacity:0;transition:.15s;flex-shrink:0}
.footer__links a:hover::before{opacity:1}

/* Contact column */
.footer__contact-item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:rgba(0,0,0,.03);border-radius:10px;margin-bottom:8px;font-size:13px;color:var(--gray);transition:.2s}
.footer__contact-item:hover{background:rgba(26,158,143,.06);color:var(--teal)}
.footer__contact-item svg{width:16px;height:16px;opacity:.5;flex-shrink:0}
.footer__contact-item span{flex:1}
.footer__contact-item .arrow{opacity:.3;font-size:14px;transition:.2s}
.footer__contact-item:hover .arrow{opacity:.7;transform:translateX(2px)}

/* Map section */
.footer__map{margin-top:40px;border-top:1px solid rgba(0,0,0,.06);padding-top:40px}
.footer__map-inner{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.footer__map-text h4{font-size:18px;font-weight:700;color:var(--dark);margin-bottom:8px}
.footer__map-text p{font-size:13px;color:var(--gray);line-height:1.7;max-width:400px}
.footer__map-text .footer__map-address{display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding:14px 16px;background:rgba(0,0,0,.03);border-radius:10px}
.footer__map-text .footer__map-address svg{width:18px;height:18px;color:var(--teal);flex-shrink:0;margin-top:1px}
.footer__map-text .footer__map-address span{font-size:13px;color:var(--gray);line-height:1.5}
.footer__map-embed{border-radius:12px;overflow:hidden;height:200px;background:rgba(0,0,0,.03)}
.footer__map-embed iframe{width:100%;height:100%;border:0}

/* Bottom bar */
.footer__bottom{border-top:1px solid rgba(0,0,0,.06);padding:20px 0;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--gray-light)}
.footer__bottom a{color:var(--teal);transition:.15s}
.footer__bottom a:hover{color:var(--teal-dark)}

/* Footer responsive */
@media(max-width:1024px){
  .footer__grid{grid-template-columns:1fr 1fr;gap:32px}
  .footer__map-inner{grid-template-columns:1fr}
}
@media(max-width:768px){
  .footer__grid{grid-template-columns:1fr}
  .footer__bottom{flex-direction:column;gap:8px;text-align:center}
}

/* ===== CTA BANNER ===== */
.cta-banner{background:var(--teal);padding:48px 24px;border-radius:20px;text-align:center;color:var(--white);margin:48px auto;max-width:900px}
.cta-banner h2{font-size:clamp(20px,3vw,28px);font-weight:700;margin-bottom:10px}
.cta-banner p{font-size:14px;opacity:.8;margin-bottom:24px;max-width:500px;margin-left:auto;margin-right:auto}

/* ===== PROJECTS SECTION ===== */
.projects-section{padding:110px 0 90px;background:linear-gradient(180deg,#f9faf9 0%,#fff 100%)}
.projects-section__header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:60px}
.projects-section__eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--teal);background:rgba(26,158,143,.08);border:1px solid rgba(26,158,143,.18);padding:7px 16px;border-radius:80px;margin-bottom:20px}
.projects-section__eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--teal)}
.projects-section__title{font-size:clamp(28px,4vw,44px);font-weight:800;color:#4a3526;line-height:1.1;letter-spacing:-.02em;max-width:14ch;margin:0 auto 18px}
.projects-section__desc{font-size:clamp(16px,2vw,19px);color:#6b6360;line-height:1.55;max-width:52ch;margin:0 auto}

.projects-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.proj-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:24px;padding:40px 22px 30px;text-align:center;transition:transform .4s cubic-bezier(.25,.46,.45,.94),box-shadow .4s cubic-bezier(.25,.46,.45,.94),border-color .3s;text-decoration:none;min-height:300px;overflow:hidden}
.proj-card::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,158,143,.05) 0%,transparent 55%);opacity:0;transition:opacity .4s ease;pointer-events:none}
.proj-card:hover{transform:translateY(-10px);box-shadow:0 24px 56px rgba(26,158,143,.16),0 8px 16px rgba(0,0,0,.04);border-color:rgba(26,158,143,.22)}
.proj-card:hover::before{opacity:1}
.proj-card__logo{height:108px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;position:relative;z-index:1}
.proj-card__logo img{max-height:84px;max-width:124px;object-fit:contain;transition:transform .4s cubic-bezier(.25,.46,.45,.94),filter .3s}
.proj-card:hover .proj-card__logo img{transform:scale(1.08)}
.proj-card__info{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:20px;position:relative;z-index:1}
.proj-card__name{font-size:16px;font-weight:700;color:#1f1a1a;letter-spacing:-.01em;transition:color .3s}
.proj-card:hover .proj-card__name{color:var(--teal)}
.proj-card__sub{font-size:12.5px;color:#9a918d;letter-spacing:.01em}
.proj-card__btn{display:inline-flex;align-items:center;gap:7px;background:#4a3526;color:#fff;padding:11px 24px;border-radius:80px;font-size:12.5px;font-weight:600;letter-spacing:-.01em;transition:all .35s cubic-bezier(.25,.46,.45,.94);position:relative;z-index:1;box-shadow:0 4px 12px rgba(74,53,38,.18)}
.proj-card__btn svg{transition:transform .3s}
.proj-card:hover .proj-card__btn{background:var(--teal);box-shadow:0 8px 20px rgba(26,158,143,.32)}
.proj-card:hover .proj-card__btn svg{transform:translateX(4px)}

/* Staggered entrance animation */
@keyframes cardSlideUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
.proj-card.animate{animation:cardSlideUp .6s cubic-bezier(.25,.46,.45,.94) both}
.proj-card:nth-child(1).animate{animation-delay:.05s}
.proj-card:nth-child(2).animate{animation-delay:.12s}
.proj-card:nth-child(3).animate{animation-delay:.19s}
.proj-card:nth-child(4).animate{animation-delay:.26s}
.proj-card:nth-child(5).animate{animation-delay:.33s}

@media(max-width:1024px){.projects-cards{grid-template-columns:repeat(3,1fr);gap:16px}}
@media(max-width:600px){.projects-cards{grid-template-columns:repeat(2,1fr);gap:12px}.proj-card{min-height:240px;padding:28px 14px 22px;border-radius:20px}}

/* ===== PMA SECTION ===== */
.pma-section{padding:80px 0;background:#fff}
.pma-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}
.pma-tag{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);margin-bottom:12px}
.pma-title{font-size:clamp(24px,3vw,36px);font-weight:700;color:#402c2c;line-height:1.2;margin-bottom:20px;letter-spacing:-.02em}
.pma-desc{font-size:15px;color:var(--gray);line-height:1.75;margin-bottom:24px}
.pma-seal{display:flex;align-items:center;justify-content:center}
.pma-seal img{max-width:300px;width:100%;height:auto;transition:transform .4s}
.pma-seal img:hover{transform:scale(1.04) rotate(2deg)}
@media(max-width:768px){.pma-grid{grid-template-columns:1fr}.pma-seal{margin-top:20px}.pma-seal img{max-width:220px}}

/* ===== PARTNERS SECTION ===== */
.partners-section{padding:80px 0;background:var(--light)}
.partners-section__title{font-size:clamp(22px,2.8vw,28px);color:#402c2c;text-align:center;margin-bottom:40px;line-height:1.3}
.partners-section__title em{font-style:italic;font-weight:700}
.partners-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;max-width:1000px;margin:0 auto}
.partner-card{background:#fff;border-radius:14px;padding:24px 16px;display:flex;align-items:center;justify-content:center;min-height:90px;transition:.25s;border:1px solid rgba(0,0,0,.04)}
.partner-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.08);border-color:rgba(26,158,143,.15)}
.partner-card img{max-height:48px;max-width:min(130px,100%);width:auto;height:auto;object-fit:contain;filter:grayscale(.2);opacity:.7;transition:.25s}
.partner-card:hover img{filter:none;opacity:1}
@media(max-width:1024px){.partners-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:768px){.partners-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:480px){.partners-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ===== ANIMATIONS ===== */
.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s,transform .6s}
.fade-in.visible{opacity:1;transform:translateY(0)}

/* ===== RESPONSIVE ===== */
@media(max-width:1024px){
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .footer__grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .header .container{height:76px}
  .header__logo img{height:60px}
  .header__nav{display:none}
  .hamburger{display:flex}
  .grid-2{grid-template-columns:1fr;gap:24px}
  .grid-3{grid-template-columns:1fr}
  .grid-4{grid-template-columns:1fr 1fr}
  .section{padding:40px 0}
  .page-hero__banner{padding:20px 32px}
  .hero-home__leaves{display:none}
  .photo-carousel__item{width:250px}
  .photo-carousel__item img{height:180px}
  .partners img{height:32px}
  .footer__bottom{flex-direction:column;gap:6px;text-align:center}
}
@media(max-width:480px){
  .grid-4{grid-template-columns:1fr}
  .container{padding:0 16px}
  .photo-carousel__item{width:200px}
  .ticker__track img{height:30px}
}

/* ===== INTERACTIVE IMAGE CAROUSEL (shared) ===== */
.gcar{position:relative;width:100%;max-width:1180px;margin:0 auto;padding:0 8px}
.gcar__viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab}
.gcar__viewport::-webkit-scrollbar{display:none}
.gcar__viewport.dragging{cursor:grabbing;scroll-behavior:auto}
.gcar__track{display:flex;gap:16px;padding:6px 4px}
.gcar__slide{flex:0 0 auto;scroll-snap-align:center}
.gcar__slide img{height:380px;width:auto;max-width:none;display:block;object-fit:cover;border-radius:20px;box-shadow:0 14px 32px rgba(0,0,0,.12);pointer-events:none;-webkit-user-select:none;user-select:none}
.gcar__btn{position:absolute;top:calc(50% - 12px);transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:none;background:rgba(255,255,255,.94);color:var(--teal,#1a9e8f);box-shadow:0 6px 18px rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;transition:background .2s,color .2s,opacity .2s}
.gcar__btn svg{width:20px;height:20px}
.gcar__btn:hover{background:var(--teal,#1a9e8f);color:#fff}
.gcar__btn--prev{left:16px}
.gcar__btn--next{right:16px}
.gcar__btn[disabled]{opacity:0;pointer-events:none}
.gcar__dots{display:flex;justify-content:center;gap:8px;margin-top:20px;flex-wrap:wrap}
.gcar__dot{width:8px;height:8px;border-radius:50%;background:rgba(26,158,143,.28);border:none;padding:0;cursor:pointer;transition:background .25s,width .25s}
.gcar__dot.active{background:var(--teal,#1a9e8f);width:22px;border-radius:5px}
@media(max-width:768px){.gcar__slide img{height:240px;border-radius:14px}.gcar__btn{width:38px;height:38px}.gcar__btn--prev{left:8px}.gcar__btn--next{right:8px}}
@media(prefers-reduced-motion:reduce){.gcar__viewport{scroll-behavior:auto}}

/* ===== PDF VIEWER (Day Use) ===== */
.pdf-view{padding:48px 0 80px;background:var(--light,#f5f5f5)}
.pdf-view--top{padding-top:120px}
.pdf-view__frame{width:100%;max-width:960px;margin:0 auto;aspect-ratio:1/1.35;border:1px solid rgba(0,0,0,.08);border-radius:16px;overflow:hidden;box-shadow:0 18px 44px rgba(0,0,0,.10);background:#fff}
.pdf-view__frame iframe{width:100%;height:100%;border:0;display:block}
.pdf-view__empty{width:100%;max-width:760px;margin:0 auto;background:#fff;border:1px dashed rgba(0,0,0,.16);border-radius:16px;padding:64px 28px;text-align:center;box-shadow:0 14px 36px rgba(0,0,0,.06)}
.pdf-view__empty svg{width:54px;height:54px;color:var(--teal,#1a9e8f);margin:0 auto 18px;display:block}
.pdf-view__empty h3{font-size:19px;font-weight:700;color:#1f1a1a;margin:0 0 8px}
.pdf-view__empty p{font-size:14.5px;color:#6b6360;margin:0;line-height:1.6}
.pdf-view__actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:24px}

/* ===== VIDEO EMBED (YouTube facade) ===== */
.video-section{padding:8px 0 64px;background:#fff}
.video-embed{position:relative;max-width:960px;margin:0 auto;aspect-ratio:16/9;border-radius:20px;overflow:hidden;box-shadow:0 18px 44px rgba(0,0,0,.14);cursor:pointer;background:#0c1f1c}
.video-embed__poster{width:100%;height:100%;object-fit:cover;display:block}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-embed__play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:74px;height:74px;border-radius:50%;border:none;background:rgba(26,158,143,.92);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .25s,background .25s;box-shadow:0 8px 24px rgba(0,0,0,.3)}
.video-embed__play svg{width:30px;height:30px;margin-left:3px}
.video-embed:hover .video-embed__play{transform:translate(-50%,-50%) scale(1.08);background:var(--teal,#1a9e8f)}
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1100px;margin:0 auto}
.video-grid .video-embed{max-width:none}
@media(max-width:768px){.video-grid{grid-template-columns:1fr}.video-embed__play{width:60px;height:60px}}
