:root{--color-primary:#1e3a8a;--color-secondary:#0ea5e9;--color-accent:#e0f2fe;--color-background:#f8fafc;--color-background-offset:#f1f5f9;--color-surface:#fff;--color-text:#0f172a;--color-text-muted:#475569;--color-glass:#ffffffc7;--color-border:#0f172a1a;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--shadow-sm:0 1px 2px #0f172a14;--shadow-md:0 10px 25px #0f172a14;--shadow-lg:0 18px 40px #0f172a1f;--shadow-premium:0 50px 100px -20px #32325d26, 0 30px 60px -30px #0003}html{scroll-behavior:smooth;scroll-padding-top:6rem}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(circle at top left, #0ea5e91f, transparent 28%), radial-gradient(circle at bottom right, #1e3a8a1a, transparent 34%), var(--color-background);min-height:100vh;color:var(--color-text);-webkit-font-smoothing:antialiased;font-family:Open Sans,sans-serif;line-height:1.6}a{color:inherit}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,.btn-primary,.btn-outline,.eyebrow,.nav-link,.brand-mark{font-family:Poppins,sans-serif}:focus-visible{outline-offset:3px;outline:3px solid #0ea5e961}.glass{background:var(--color-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #ffffff80}.card-premium{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-xl);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;min-height:100%;transition:all .4s cubic-bezier(.165,.84,.44,1);display:flex;position:relative;overflow:hidden}.card-premium:hover{box-shadow:var(--shadow-lg);border-color:var(--color-secondary);transform:translateY(-4px)}.card-premium:after{content:"";background:linear-gradient(90deg, var(--color-primary), var(--color-secondary));opacity:0;width:100%;height:4px;transition:opacity .3s;position:absolute;top:0;left:0}.card-premium:hover:after{opacity:1}.btn-primary{background:var(--color-primary);color:#fff;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:1rem 2.5rem;font-size:.85rem;font-weight:600;transition:all .3s;display:inline-flex}.btn-primary:hover{background:var(--color-secondary);transform:translateY(-2px);box-shadow:0 0 20px #0ea5e94d}.btn-primary:disabled{opacity:.75;cursor:wait;transform:none}.btn-outline{color:var(--color-primary);border:2px solid var(--color-primary);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border-radius:8px;padding:1rem 2.5rem;font-size:.85rem;font-weight:600;transition:all .3s}.btn-outline:hover{background:var(--color-primary);color:#fff;transform:translateY(-2px)}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--color-secondary);margin-bottom:1rem;font-size:.7rem;font-weight:800;display:block}.editorial{font-family:Playfair Display,serif;font-style:italic;font-weight:400}.reveal{opacity:0;animation:1s cubic-bezier(.19,1,.22,1) forwards fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.reveal-delay-1{animation-delay:.15s}.reveal-delay-2{animation-delay:.3s}.reveal-delay-3{animation-delay:.45s}.page-shell{background:0 0}.content-shell{width:min(1200px,100% - 2rem);margin:0 auto}.section-shell{padding:var(--space-4xl) 0}.section-shell-tight{padding:var(--space-3xl) 0}.section-layer{background:var(--color-background-offset)}.section-header{text-align:center;max-width:800px;margin:0 auto 5rem}.section-header h2{color:var(--color-primary);text-transform:uppercase;margin-bottom:1.5rem;font-size:2.5rem;line-height:1.1}.section-header p{color:var(--color-text-muted);font-size:1.1rem;line-height:1.8}.split-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(2rem,4vw,5rem);display:grid}.grid-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;display:grid}.site-header{z-index:1000;border-bottom:1px solid #fff6;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;width:min(1200px,100% - 2rem);margin:0 auto;padding:1rem 0;display:flex;position:relative}.brand-mark{letter-spacing:-.04em;font-size:1.6rem;font-weight:800;text-decoration:none}.brand-mark span{color:var(--color-secondary)}.header-nav{align-items:center;gap:2rem;display:flex}.nav-link{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);font-size:.8rem;font-weight:700;text-decoration:none;transition:color .2s}.nav-link:hover,.nav-link-active{color:var(--color-primary)}.header-menu-button{border:1px solid var(--color-border);background:var(--color-surface);width:2.75rem;height:2.75rem;color:var(--color-primary);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;display:none}.hero-section{color:#fff;justify-content:center;align-items:center;min-height:min(85vh,900px);display:flex;position:relative;overflow:hidden}.hero-panel{z-index:2;text-align:center;width:min(920px,100% - 2rem);padding:7rem 0 5rem;position:relative}.hero-panel h1{letter-spacing:-.03em;margin-bottom:1.5rem;font-size:clamp(2.5rem,7vw,4.5rem);line-height:1.05}.hero-panel p{width:min(700px,100%);margin:0 auto 2rem;font-size:clamp(1rem,2vw,1.15rem)}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.logo-strip{text-align:center;opacity:.5;filter:grayscale();grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:1.5rem;display:grid}.contact-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr);align-items:start;gap:clamp(2rem,4vw,5rem);display:grid}.contact-form-card{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-lg);border-radius:12px;padding:clamp(1.5rem,3vw,3rem)}.form-grid-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.field-group{flex-direction:column;gap:.5rem;display:flex}.field-label{letter-spacing:.08em;color:var(--color-primary);font-size:.72rem;font-weight:800}.field-input,.field-select,.field-textarea{width:100%;color:var(--color-text);background:#fff;border:1px solid #94a3b88c;border-radius:8px;padding:.85rem 1rem;transition:border-color .2s,box-shadow .2s}.field-input:focus,.field-select:focus,.field-textarea:focus{border-color:var(--color-secondary);outline:none;box-shadow:0 0 0 3px #0ea5e91f}.gallery-filter-bar{background:#fff;border-bottom:1px solid #94a3b833;padding:1.5rem 0}.gallery-filter-list{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.gallery-card-button{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;display:block}.lightbox-overlay{z-index:2000;background:#0a2647f5;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.lightbox-frame{width:min(1100px,100%);height:min(80vh,800px);position:relative}.lightbox-close{width:2.75rem;height:2.75rem;color:var(--color-primary);cursor:pointer;background:#fff;border:none;border-radius:999px;font-size:1.3rem;font-weight:900;position:absolute;top:1.5rem;right:1.5rem}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;display:grid}.footer-links,.social-links{flex-wrap:wrap;gap:1rem;display:flex}.social-links a,.footer-links a{opacity:.85;text-decoration:none}.footer-links a:hover,.social-links a:hover{opacity:1}@media (max-width:1024px){.grid-cards,.split-layout,.contact-grid,.footer-grid,.logo-strip{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr}}@media (max-width:768px){html{scroll-padding-top:5rem}.section-shell{padding:var(--space-3xl) 0}.section-shell-tight{padding:var(--space-2xl) 0}.header-menu-button{display:inline-flex}.header-nav{box-shadow:var(--shadow-lg);background:#fffffffa;border:1px solid #94a3b833;border-radius:14px;flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem;display:none;position:absolute;top:calc(100% + .75rem);left:1rem;right:1rem}.header-nav[data-open=true]{display:flex}.grid-cards,.split-layout,.form-grid-two,.footer-grid,.logo-strip{grid-template-columns:1fr}.hero-panel{padding:6rem 0 4rem}}@media (max-width:640px){.content-shell,.header-inner{width:min(100% - 1.5rem,1200px)}.btn-primary,.btn-outline{width:100%}.hero-actions{flex-direction:column}.card-premium{padding:1.25rem}.section-header{margin-bottom:3rem}.section-header h2{font-size:2rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;animation:none}}
