@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Space+Grotesk:wght@300;400;500;600;700&display=swap";:root{--bg: #0c0c14;--bg-alt: #131320;--surface: rgba(255, 255, 255, .06);--surface-strong: rgba(255, 255, 255, .1);--stroke: rgba(255, 255, 255, .16);--text: #f5f3ef;--muted: rgba(245, 243, 239, .7);--accent: #d7b46a;--accent-2: #7fd6ff;--shadow: 0 24px 70px rgba(0, 0, 0, .5);--radius-lg: 24px;--radius-md: 18px;--font-display: "Cormorant Garamond", serif;--font-body: "Space Grotesk", sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(1200px 600px at 10% 10%,rgba(215,180,106,.18),transparent 60%),radial-gradient(900px 520px at 90% 0%,rgba(127,214,255,.2),transparent 50%),linear-gradient(180deg,#090910,#0d0d16,#0a0a12);color:var(--text);font-family:var(--font-body)}a{color:inherit;text-decoration:none}.page{position:relative;padding:28px 20px 40px;max-width:1200px;margin:0 auto}.ambient{position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'><rect width='180' height='180' fill='none'/><circle cx='20' cy='20' r='1.5' fill='rgba(255,255,255,0.15)'/><circle cx='120' cy='40' r='1' fill='rgba(255,255,255,0.1)'/><circle cx='80' cy='120' r='1.2' fill='rgba(255,255,255,0.12)'/></svg>");opacity:.5;pointer-events:none;mix-blend-mode:screen}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;border:1px solid var(--stroke);border-radius:999px;background:#0c0c1499;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:1}.brand{display:flex;align-items:center;gap:12px}.brand-dot{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 0 0 6px #d7b46a33;animation:float 6s ease-in-out infinite}.brand-title{font-weight:600;letter-spacing:.4px}.brand-sub{font-size:12px;color:var(--muted)}.tag{border:1px solid rgba(215,180,106,.5);border-radius:999px;padding:6px 12px;font-size:12px;color:var(--accent)}.main{display:flex;flex-direction:column;gap:32px;margin-top:28px;position:relative;z-index:1}.hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.hero-left{animation:fadeUp .8s ease both}.hero-right{animation:fadeUp .9s ease .12s both}.hero-left h1{font-family:var(--font-display);font-size:clamp(38px,4vw,60px);letter-spacing:-.5px;margin:12px 0}.kicker{display:inline-flex;border:1px solid rgba(127,214,255,.5);color:var(--accent-2);border-radius:999px;padding:6px 12px;font-size:12px;text-transform:uppercase;letter-spacing:1.6px}.lead{max-width:480px;font-size:16px;line-height:1.6;color:var(--muted)}.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 24px}.btn{padding:12px 18px;border-radius:999px;border:1px solid var(--stroke);font-weight:600;transition:transform .2s ease,box-shadow .2s ease}.btn.primary{background:linear-gradient(130deg,#d7b46ae6,#7fd6ffcc);color:#0b0b10;border:none;box-shadow:0 16px 40px #d7b46a59}.btn.ghost{background:transparent;color:var(--text)}.btn:hover{transform:translateY(-2px)}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.stat{border:1px solid var(--stroke);border-radius:var(--radius-md);padding:12px 14px;background:var(--surface)}.stat-value{font-size:18px;font-weight:600}.stat-label{font-size:12px;color:var(--muted)}.panel{border-radius:var(--radius-lg);padding:20px;background:#0f0f1abf;border:1px solid var(--stroke);box-shadow:var(--shadow)}.panel-title{font-weight:600;margin-bottom:12px;letter-spacing:.6px;text-transform:uppercase;font-size:12px;color:var(--muted)}.panel-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;color:var(--muted);font-size:14px}.panel-row strong{color:var(--text);font-weight:600}.divider{height:1px;background:#ffffff1a;margin:16px 0}.publication-list{display:flex;flex-direction:column;gap:12px}.publication{border:1px solid var(--stroke);border-radius:var(--radius-md);padding:12px 14px;background:var(--surface);display:flex;justify-content:space-between;align-items:center;gap:12px}.publication-title{font-weight:600;margin-bottom:4px}.publication-meta{font-size:12px;color:var(--muted)}.publication-pill{background:#7fd6ff33;color:var(--accent-2);border-radius:999px;padding:4px 10px;font-size:11px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{border-radius:var(--radius-md);padding:18px;border:1px solid var(--stroke);background:var(--surface-strong);animation:fadeUp .8s ease both}.grid .card:nth-child(2){animation-delay:.08s}.grid .card:nth-child(3){animation-delay:.16s}.card h3{margin:0 0 8px;font-size:18px}.card p{margin:0;color:var(--muted);line-height:1.6}.services{border-radius:var(--radius-lg);padding:24px;border:1px solid var(--stroke);background:#0c0c14cc}.services-header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px}.services-header h2{margin:0 0 6px;font-family:var(--font-display);font-size:30px}.services-header p{margin:0;color:var(--muted);max-width:520px}.services-badge{border:1px solid rgba(215,180,106,.5);padding:8px 14px;border-radius:999px;color:var(--accent);font-size:12px;text-transform:uppercase;letter-spacing:1.4px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.service{border-radius:var(--radius-md);padding:16px;border:1px solid var(--stroke);background:#ffffff0d;animation:fadeUp .8s ease both}.service-grid .service:nth-child(2){animation-delay:.08s}.service-grid .service:nth-child(3){animation-delay:.16s}.service-label{font-weight:600;margin-bottom:6px}.service-detail{font-size:14px;color:var(--muted);line-height:1.6}.gallery{border-radius:var(--radius-lg);padding:26px;border:1px solid var(--stroke);background:linear-gradient(135deg,#0f0f1aeb,#0c0c14b3)}.gallery-header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.gallery-header h2{margin:0 0 6px;font-family:var(--font-display);font-size:30px}.gallery-header p{margin:0;color:var(--muted);max-width:520px}.gallery-badge{border:1px solid rgba(127,214,255,.45);padding:8px 14px;border-radius:999px;color:var(--accent-2);font-size:12px;text-transform:uppercase;letter-spacing:1.4px}.contact{border-radius:var(--radius-lg);padding:24px;border:1px solid var(--stroke);background:linear-gradient(135deg,#0c0c14f2,#0f0f1ab3)}.contact-header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.contact-header h2{margin:0 0 6px;font-family:var(--font-display);font-size:30px}.contact-header p{margin:0;color:var(--muted);max-width:520px}.contact-badge{border:1px solid rgba(215,180,106,.45);padding:8px 14px;border-radius:999px;color:var(--accent);font-size:12px;text-transform:uppercase;letter-spacing:1.4px}.contact-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px}.contact-card{border-radius:var(--radius-md);padding:18px;border:1px solid rgba(127,214,255,.2);background:#0a0a10a6;box-shadow:var(--shadow)}.contact-title{font-weight:600;margin-bottom:10px}.contact-list{list-style:none;padding:0;margin:0 0 16px;color:var(--muted);display:grid;gap:8px}.contact-list li{padding-left:16px;position:relative}.contact-list li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-2);position:absolute;left:0;top:8px}.contact-highlight{border-radius:14px;padding:12px 14px;border:1px solid rgba(215,180,106,.4);color:var(--accent);font-size:13px;background:#d7b46a14}.contact-form{border-radius:var(--radius-md);padding:18px;border:1px solid var(--stroke);background:#08080e99}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contact-field{display:flex;flex-direction:column;gap:6px;font-size:12px;text-transform:uppercase;letter-spacing:1.2px;color:#f5f3efcc}.contact-field.full{grid-column:1 / -1}.contact-field input,.contact-field textarea,.contact-field select{border-radius:12px;border:1px solid rgba(127,214,255,.25);background:#0a0a12b3;color:var(--text);padding:10px 12px;font-size:14px;font-family:var(--font-body)}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#f5f3ef80}.contact-field select{text-transform:none;letter-spacing:0}.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px}.contact-status{font-size:12px;color:var(--muted)}.contact-status.success{color:#7fd6ffe6}.contact-status.error{color:#f28b82}.carousel{display:flex;flex-direction:column;gap:16px}.carousel-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center}.carousel-jump{display:flex;gap:8px;align-items:center}.carousel-jump input{width:80px;padding:8px 10px;border-radius:999px;border:1px solid rgba(127,214,255,.4);background:#0a0a1099;color:var(--text);font-size:12px}.carousel-jump input::placeholder{color:#f5f3ef8c}.gallery-card{border-radius:20px;overflow:hidden;background:#ffffff0a;border:1px solid var(--stroke);display:flex;flex-direction:column;min-height:100%;animation:fadeUp .8s ease both;flex:0 0 100%}.carousel-window{overflow:hidden;border-radius:22px;border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow);width:100%;max-width:100%;margin:0 auto}.carousel-track{display:flex;transition:transform .6s ease;width:100%}.carousel-btn{border:1px solid rgba(127,214,255,.45);background:transparent;color:var(--accent-2);border-radius:999px;padding:10px 16px;text-transform:uppercase;letter-spacing:1.6px;font-size:11px;cursor:pointer}.carousel-btn:hover{background:#7fd6ff1a}.carousel-indicators{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px}.carousel-progress{flex:1;height:3px;border-radius:999px;background:#ffffff1a;overflow:hidden}.carousel-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .6s ease}.carousel-count{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.gallery-image{position:relative;height:clamp(420px,62vh,680px);aspect-ratio:3 / 4;overflow:hidden;background:radial-gradient(circle at top,rgba(215,180,106,.12),transparent 60%),#0a0a10e6;display:block;text-align:center}.gallery-media{position:relative;height:100%;width:auto;max-width:100%;display:inline-block}.gallery-media picture{height:100%;display:block;width:auto}.gallery-image img{width:auto;height:100%;max-width:100%;object-fit:contain;object-position:center;display:block;margin:0 auto;transition:transform .2s ease}.gallery-index{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;gap:6px;background:#0009;border:1px solid rgba(255,255,255,.2);color:#fff;padding:6px 10px;border-radius:999px;font-size:11px;letter-spacing:1px;text-transform:uppercase;z-index:2}.zoom-overlay{position:absolute;top:10px;left:10px;display:flex;gap:8px;z-index:2}.zoom-overlay button{border:1px solid rgba(255,255,255,.3);background:#08080ea6;color:var(--text);border-radius:999px;padding:6px 10px;font-size:10px;letter-spacing:1px;text-transform:uppercase;cursor:pointer}.zoom-overlay button:hover{background:#7fd6ff33}.image-loader{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;gap:6px;color:var(--muted);font-size:12px;background:#08080eb3;z-index:1}.loader-spinner{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.3);border-top-color:var(--accent-2);animation:spin .9s linear infinite}.gallery-status{display:inline-flex;align-items:center;align-self:flex-start;gap:6px;background:#00000059;border:1px solid rgba(255,255,255,.2);color:#fff;padding:6px 10px;border-radius:999px;font-size:11px;letter-spacing:1px;text-transform:uppercase}.gallery-body{padding:16px;display:flex;flex-direction:column;gap:10px}.gallery-title{font-size:18px;font-weight:600}.gallery-meta{display:flex;justify-content:flex-start;gap:12px;font-size:12px;color:var(--muted)}.gallery-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;font-size:12px;justify-items:start;align-items:start}.detail-label{display:block;text-transform:uppercase;letter-spacing:1.2px;font-size:10px;color:#ffffff8c;margin-bottom:4px}.detail-value{display:inline-flex;align-items:center;gap:6px;background:#00000059;border:1px solid rgba(255,255,255,.2);color:#fff;padding:6px 10px;border-radius:999px;font-size:11px;letter-spacing:1px;text-transform:uppercase}.gallery-tags{display:flex;flex-wrap:wrap;gap:8px}.tag-pill{border:1px solid rgba(127,214,255,.35);color:var(--accent-2);border-radius:999px;padding:4px 10px;font-size:11px;text-transform:uppercase;letter-spacing:1px}.gallery-links{display:flex;flex-wrap:wrap;gap:10px}.gallery-action{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(127,214,255,.4);color:var(--accent-2);padding:8px 12px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:1.4px;transition:transform .2s ease,background .2s ease;background:transparent;cursor:pointer}.gallery-action:hover{transform:translateY(-1px);background:#7fd6ff1f}.gallery-action.primary{border-color:#d7b46a99;color:#0b0b10;background:linear-gradient(120deg,#d7b46af2,#7fd6ffbf)}.action-icon{border:1px solid rgba(255,255,255,.3);padding:2px 6px;border-radius:999px;font-size:10px;letter-spacing:1px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:24px}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;background:#06060cb3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{position:relative;z-index:1;width:min(920px,100%);max-height:90vh;display:grid;grid-template-rows:auto 1fr auto;gap:16px;padding:20px;border-radius:20px;border:1px solid rgba(127,214,255,.35);background:#0c0c14f2;box-shadow:var(--shadow)}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.modal-title{font-size:18px;font-weight:600}.modal-subtitle{font-size:12px;color:var(--muted);margin-top:2px}.modal-close{border:1px solid rgba(127,214,255,.45);background:transparent;color:var(--accent-2);border-radius:999px;padding:8px 14px;text-transform:uppercase;letter-spacing:1.4px;font-size:11px;cursor:pointer}.modal-body{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#08080ee6}.modal-body iframe{width:100%;height:60vh;border:none;background:#0a0a12}.modal-footer{display:flex;justify-content:flex-end}.footer{margin-top:32px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted)}.footer-links{display:flex;gap:12px;flex-wrap:wrap}.footer-links a{border-bottom:1px solid rgba(255,255,255,.2)}.footer-note{max-width:520px;color:var(--muted)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}@media (max-width: 980px){.hero,.grid,.service-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.services-header,.gallery-header,.contact-header{flex-direction:column;align-items:flex-start}.contact-body{grid-template-columns:1fr}.carousel-controls{justify-content:flex-start}.carousel-indicators{flex-direction:column;align-items:flex-start}.gallery-image{height:auto;aspect-ratio:4 / 5}.zoom-overlay{display:none}}@media (max-width: 1180px){.gallery-header{flex-direction:column;align-items:flex-start}.carousel-controls{justify-content:flex-start}.carousel-window{max-width:100%}.gallery-image{height:clamp(360px,56vh,600px);aspect-ratio:4 / 5}}@media (min-width: 1181px){.gallery-image{height:clamp(630px,93vh,1020px)}}@media (max-width: 640px){.topbar{flex-direction:column;align-items:flex-start}.stats{grid-template-columns:1fr}.gallery,.contact{padding:20px}.contact-grid{grid-template-columns:1fr}.gallery-image{height:auto;aspect-ratio:2 / 3}.gallery-meta{flex-direction:column;align-items:flex-start;gap:4px}.gallery-details{grid-template-columns:1fr}.gallery-links{flex-direction:column;align-items:stretch}.gallery-body{padding:14px;gap:8px}.gallery-title{font-size:16px}.gallery-action{justify-content:center}.carousel{gap:12px}.carousel-controls{flex-direction:row;flex-wrap:wrap;justify-content:flex-start}.carousel-btn{padding:8px 12px}.carousel-jump{width:100%}.carousel-jump input{flex:1}}
