/* ============================================ ZACAYA — GLOBAL CSS Shared across all 5 pages ============================================ */ /* ============================================ CSS VARIABLES ============================================ */:root{--white:#FFFFFF;--soft-white:#FAFAFA;--charcoal:#111111;--charcoal-60:rgba(17,17,17,0.6);--charcoal-30:rgba(17,17,17,0.3);--charcoal-10:rgba(17,17,17,0.08);--accent:#2D6A4F;--accent-light:#52B788;--accent-gold:#B5933A;--accent-gold-light:#E9C46A;--border:rgba(17,17,17,0.08);--shadow-sm:0 2px 12px rgba(17,17,17,0.06);--shadow-md:0 8px 40px rgba(17,17,17,0.10);--shadow-lg:0 24px 80px rgba(17,17,17,0.13);--radius:4px;--radius-lg:12px;--transition:0.4s cubic-bezier(0.16,1,0.3,1)}/* ============================================ RESET ============================================ */ *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:'Inter',sans-serif;background:var(--white);color:var(--charcoal);overflow-x:hidden;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}ul{list-style:none}/* ============================================ TYPOGRAPHY ============================================ */ .display{font-family:'Playfair Display',serif;font-weight:500;line-height:1.05;letter-spacing:-0.02em}.heading{font-family:'Poppins',sans-serif;font-weight:600;line-height:1.15;letter-spacing:-0.015em}.body-text{font-family:'Inter',sans-serif;font-weight:400;line-height:1.7;color:var(--charcoal-60)}/* ============================================ UTILITY ============================================ */ .container{max-width:1320px;margin:0 auto;padding:0 48px}@media(max-width:768px){.container{padding:0 24px}}.tag{display:inline-flex;align-items:center;gap:8px;font-family:'Poppins',sans-serif;font-size:11px;font-weight:600;letter-spacing:0.15em;text-transform:uppercase;color:var(--accent);margin-bottom:24px}.tag::before{content:'';display:block;width:24px;height:1px;background:var(--accent)}.section-sep{width:60px;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent-gold));margin-bottom:32px;border-radius:2px}/* ============================================ BUTTONS ============================================ */ .btn{display:inline-flex;align-items:center;gap:10px;font-family:'Poppins',sans-serif;font-size:13px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;padding:16px 36px;border-radius:2px;cursor:pointer;border:none;transition:var(--transition);position:relative;overflow:hidden}.btn-primary{background:var(--charcoal);color:var(--white)}.btn-primary:hover{background:var(--accent);transform:translateY(-2px);box-shadow:0 12px 32px rgba(45,106,79,0.28)}.btn-outline{background:transparent;color:var(--charcoal);border:1.5px solid rgba(17,17,17,0.2)}.btn-outline:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,0.35);padding:14px 32px}.btn-ghost:hover{background:rgba(255,255,255,0.12);border-color:rgba(255,255,255,0.7)}.btn-accent{background:var(--accent);color:var(--white)}.btn-accent:hover{background:#245a42;transform:translateY(-2px);box-shadow:0 12px 32px rgba(45,106,79,0.28)}.btn svg{transition:transform 0.3s ease}.btn:hover svg{transform:translateX(4px)}.btn-white{background:var(--white);color:var(--charcoal);font-family:'Poppins',sans-serif;font-size:13px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;padding:18px 40px;border-radius:2px;display:inline-flex;align-items:center;gap:10px;transition:var(--transition);border:none;cursor:pointer}.btn-white:hover{background:var(--accent-light);color:white;transform:translateY(-2px);box-shadow:0 12px 36px rgba(82,183,136,0.3)}/* ============================================ NAVIGATION ============================================ */ nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 48px;height:80px;display:flex;align-items:center;justify-content:space-between;transition:var(--transition);background:rgba(255,255,255,0.80);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-bottom:1px solid transparent}nav.scrolled{border-bottom-color:var(--border);box-shadow:var(--shadow-sm)}.nav-logo{display:flex;align-items:center;gap:12px}.nav-logo-mark{width:36px;height:36px;background:var(--charcoal);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-logo-mark svg{width:18px;height:18px}.nav-logo-text{font-family:'Poppins',sans-serif;font-size:20px;font-weight:700;letter-spacing:-0.02em;color:var(--charcoal)}.nav-logo-text span{color:var(--accent)}.nav-links{display:flex;align-items:center;gap:40px}.nav-links a{font-family:'Poppins',sans-serif;font-size:13px;font-weight:500;color:var(--charcoal-60);letter-spacing:0.02em;transition:color 0.25s;position:relative}.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 0.3s ease}.nav-links a:hover,.nav-links a.active{color:var(--charcoal)}.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1)}.nav-cta{display:flex;align-items:center;gap:20px}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px}.hamburger span{display:block;width:24px;height:2px;background:var(--charcoal);transition:var(--transition)}@media(max-width:900px){.nav-links{display:none}nav{padding:0 24px}.hamburger{display:flex}.nav-cta .btn{display:none}}.mobile-menu{display:none;position:fixed;top:80px;left:0;right:0;background:rgba(255,255,255,0.97);backdrop-filter:blur(24px);z-index:999;padding:32px 24px;border-bottom:1px solid var(--border);flex-direction:column;gap:0}.mobile-menu.open{display:flex}.mobile-menu a{display:block;padding:16px 0;border-bottom:1px solid var(--border);font-family:'Poppins',sans-serif;font-size:15px;font-weight:500;color:var(--charcoal)}.mobile-menu a:last-child{border-bottom:none}/* ============================================ MARQUEE ============================================ */ .marquee-section{padding:28px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--soft-white);overflow:hidden}.marquee-track{display:flex;gap:64px;animation:marquee 30s linear infinite;white-space:nowrap;width:max-content}.marquee-item{display:flex;align-items:center;gap:16px;font-family:'Poppins',sans-serif;font-size:12px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--charcoal-60)}.marquee-dot{width:4px;height:4px;border-radius:50%;background:var(--accent);flex-shrink:0}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}/* ============================================ CTA BANNER ============================================ */ .cta-banner{background:var(--charcoal);padding:140px 0;position:relative;overflow:hidden}.cta-banner::before{content:'';position:absolute;top:-40%;right:-5%;width:60%;height:180%;background:radial-gradient(ellipse,rgba(82,183,136,0.15) 0%,transparent 70%)}.cta-banner::after{content:'';position:absolute;bottom:-40%;left:-5%;width:50%;height:180%;background:radial-gradient(ellipse,rgba(181,147,58,0.10) 0%,transparent 70%)}.cta-inner{position:relative;z-index:2;text-align:center;max-width:800px;margin:0 auto}.cta-title{font-family:'Playfair Display',serif;font-size:clamp(44px,5.5vw,80px);font-weight:500;color:var(--white);letter-spacing:-0.025em;line-height:1.08;margin-bottom:28px}.cta-title em{font-style:italic;color:var(--accent-light)}.cta-sub{font-size:18px;line-height:1.7;color:rgba(255,255,255,0.55);margin-bottom:56px;max-width:560px;margin-left:auto;margin-right:auto}.cta-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}/* ============================================ FOOTER ============================================ */ footer{background:var(--soft-white);padding:100px 0 0;border-top:1px solid var(--border)}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px;margin-bottom:80px}.footer-logo{display:flex;align-items:center;gap:12px;margin-bottom:24px}.footer-logo-mark{width:40px;height:40px;border-radius:50%;background:var(--charcoal);display:flex;align-items:center;justify-content:center}.footer-brand-name{font-family:'Poppins',sans-serif;font-size:22px;font-weight:700;letter-spacing:-0.02em}.footer-brand-name span{color:var(--accent)}.footer-tagline{font-size:15px;line-height:1.7;color:var(--charcoal-60);max-width:300px;margin-bottom:36px}.footer-socials{display:flex;gap:12px}.social-btn{width:40px;height:40px;border-radius:8px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--charcoal-60);font-size:14px;transition:var(--transition);cursor:pointer;background:var(--white)}.social-btn:hover{border-color:var(--accent);color:var(--accent);background:rgba(45,106,79,0.06)}.footer-col-title{font-family:'Poppins',sans-serif;font-size:12px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--charcoal);margin-bottom:24px}.footer-links li{margin-bottom:12px}.footer-links a{font-size:15px;color:var(--charcoal-60);transition:color 0.25s}.footer-links a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid var(--border);padding:32px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.footer-copyright{font-size:13px;color:var(--charcoal-60)}.footer-legal{display:flex;gap:24px}.footer-legal a{font-size:13px;color:var(--charcoal-60);transition:color 0.25s}.footer-legal a:hover{color:var(--accent)}@media(max-width:900px){.footer-top{grid-template-columns:1fr 1fr;gap:40px}.footer-bottom{flex-direction:column;text-align:center}}@media(max-width:560px){.footer-top{grid-template-columns:1fr}}/* ============================================ SCROLL REVEAL ============================================ */ .reveal{opacity:0;transform:translateY(40px);transition:opacity 0.8s cubic-bezier(0.16,1,0.3,1),transform 0.8s cubic-bezier(0.16,1,0.3,1)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:0.1s}.reveal-delay-2{transition-delay:0.2s}.reveal-delay-3{transition-delay:0.3s}.reveal-delay-4{transition-delay:0.4s}.reveal-delay-5{transition-delay:0.5s}/* ============================================ PAGE HERO (inner pages) ============================================ */ .page-hero{background:var(--charcoal);padding:180px 0 120px;position:relative;overflow:hidden}.page-hero::before{content:'';position:absolute;top:-30%;right:-10%;width:65%;height:160%;background:radial-gradient(ellipse,rgba(82,183,136,0.12) 0%,transparent 70%)}.page-hero::after{content:'';position:absolute;bottom:-30%;left:-10%;width:55%;height:160%;background:radial-gradient(ellipse,rgba(181,147,58,0.08) 0%,transparent 70%)}.page-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.03) 1px,transparent 1px);background-size:80px 80px}.page-hero-content{position:relative;z-index:2;max-width:900px}.page-hero-eyebrow{display:inline-flex;align-items:center;gap:12px;font-family:'Poppins',sans-serif;font-size:11px;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:var(--accent-light);margin-bottom:32px;opacity:0;animation:fadeUp 0.8s 0.2s forwards}.page-hero-eyebrow::before{content:'';display:block;width:24px;height:1px;background:var(--accent-light)}.page-hero-title{font-family:'Playfair Display',serif;font-size:clamp(52px,7vw,96px);font-weight:500;line-height:1.02;letter-spacing:-0.03em;color:var(--white);margin-bottom:32px;opacity:0;animation:fadeUp 0.9s 0.35s forwards}.page-hero-title em{font-style:italic;color:var(--accent-light)}.page-hero-sub{font-family:'Inter',sans-serif;font-size:19px;line-height:1.75;color:rgba(255,255,255,0.55);max-width:620px;opacity:0;animation:fadeUp 0.9s 0.5s forwards}@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(0.8)}}/* ============================================ LOADING SCREEN ============================================ */ #loader{position:fixed;inset:0;background:var(--charcoal);z-index:9999;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;transition:opacity 0.6s ease,visibility 0.6s ease}#loader.hidden{opacity:0;visibility:hidden}.loader-logo{font-family:'Poppins',sans-serif;font-size:28px;font-weight:700;color:var(--white);letter-spacing:-0.02em}.loader-logo span{color:var(--accent-light)}.loader-bar{width:200px;height:2px;background:rgba(255,255,255,0.1);border-radius:2px;overflow:hidden}.loader-fill{height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent-light));border-radius:2px;animation:loaderFill 1.2s cubic-bezier(0.16,1,0.3,1) forwards}@keyframes loaderFill{to{width:100%}}@media(max-width:480px){nav{height:60px}.page-hero{padding-top:120px;padding-bottom:80px}.page-hero-title{font-size:clamp(34px,10vw,52px)}.page-hero-sub{font-size:16px}.cta-banner{padding:80px 0}.cta-title{font-size:clamp(32px,10vw,44px)}.container{padding:0 20px}.nav-logo-text{font-size:16px}.mobile-menu a{font-size:14px;padding:12px 0}.cta-sub{font-size:15px}}