:root{--c-bg: #f1ecdf;--c-bg2: #ede7d4;--c-card: rgba(255, 255, 255, .62);--c-card-h: rgba(255, 255, 255, .9);--c-border: rgba(143, 155, 107, .22);--c-border-h: rgba(143, 155, 107, .55);--c-olive: #8f9b6b;--c-olive-d: #6f7b52;--c-gold: #b7a66a;--c-gold-l: #d4c48a;--c-text: #2f2f2a;--c-sub: #6f7360;--c-muted: #9a9d8c;--c-shadow: rgba(90, 90, 60, .12);--c-glow: rgba(143, 155, 107, .3);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1)}.dark{--c-bg: #12140f;--c-bg2: #161910;--c-card: rgba(26, 32, 18, .75);--c-card-h: rgba(36, 44, 26, .96);--c-border: rgba(168, 181, 138, .18);--c-border-h: rgba(168, 181, 138, .5);--c-olive: #a8b58a;--c-olive-d: #c1cf9a;--c-gold: #c9b070;--c-gold-l: #dfc98a;--c-text: #e7e9dd;--c-sub: #a3a88f;--c-muted: #6f7360;--c-shadow: rgba(0, 0, 0, .55);--c-glow: rgba(168, 181, 138, .3)}*,*:before,*:after{box-sizing:border-box;margin:0}.contact-page{min-height:100vh;padding:clamp(40px,8vw,80px) clamp(20px,5vw,60px) 60px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(40px,6vw,64px);position:relative;overflow:hidden}.contact-page:before{content:"";position:fixed;top:-20%;right:-15%;width:clamp(400px,60vw,800px);height:clamp(400px,60vw,800px);background:radial-gradient(circle,rgba(143,155,107,.07) 0%,transparent 70%);pointer-events:none;z-index:0}.contact-page:after{content:"";position:fixed;bottom:-10%;left:-10%;width:clamp(300px,40vw,600px);height:clamp(300px,40vw,600px);background:radial-gradient(circle,rgba(183,166,106,.06) 0%,transparent 70%);pointer-events:none;z-index:0}.contact-header{text-align:center;position:relative;z-index:1;animation:fadeUp .7s var(--ease-smooth) both}.contact-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:var(--c-olive);margin-bottom:18px}.contact-eyebrow:before,.contact-eyebrow:after{content:"";display:block;width:28px;height:1.5px;background:linear-gradient(90deg,transparent,var(--c-olive));border-radius:99px}.contact-eyebrow:after{background:linear-gradient(90deg,var(--c-olive),transparent)}.contact-title{font-size:clamp(2.6rem,6vw,4.2rem);font-weight:900;letter-spacing:-2.5px;line-height:1;color:var(--c-text);font-variant:small-caps;position:relative}.contact-title .accent{background:linear-gradient(125deg,var(--c-olive) 0%,var(--c-gold) 60%,var(--c-gold-l) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact-desc{margin-top:18px;max-width:500px;margin-inline:auto;font-size:clamp(.95rem,2vw,1.05rem);line-height:1.75;color:var(--c-sub)}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:100%;max-width:900px;position:relative;z-index:1}.contact-card{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:32px 28px 28px;background:var(--c-card);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border:1px solid var(--c-border);border-radius:20px;text-decoration:none;color:var(--c-text);position:relative;overflow:hidden;transition:transform .4s var(--ease-spring),box-shadow .35s var(--ease-smooth),background .3s var(--ease-smooth),border-color .3s var(--ease-smooth);box-shadow:0 4px 20px var(--c-shadow);animation:cardIn .6s var(--ease-spring) both}.contact-card:nth-child(1){animation-delay:.1s}.contact-card:nth-child(2){animation-delay:.18s}.contact-card:nth-child(3){animation-delay:.26s}.contact-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(145deg,rgba(143,155,107,.12) 0%,transparent 50%);opacity:0;transition:opacity .35s var(--ease-smooth);pointer-events:none}.contact-card:after{content:"";position:absolute;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--c-olive),var(--c-gold));border-radius:0 0 3px;transition:width .45s var(--ease-smooth)}.contact-card:hover{transform:translateY(-6px) scale(1.015);background:var(--c-card-h);border-color:var(--c-border-h);box-shadow:0 16px 48px var(--c-shadow),0 0 0 1px #8f9b6b26,0 4px 12px var(--c-glow)}.contact-card:hover:before{opacity:1}.contact-card:hover:after{width:100%}.card-icon-wrap{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#8f9b6b26,#b7a66a1a);border:1px solid rgba(143,155,107,.25);display:flex;align-items:center;justify-content:center;transition:all .4s var(--ease-spring);flex-shrink:0}.contact-card:hover .card-icon-wrap{background:linear-gradient(135deg,var(--c-olive),var(--c-gold));border-color:transparent;transform:scale(1.08) rotate(-4deg);box-shadow:0 8px 20px var(--c-glow)}.card-icon-wrap svg{width:24px;height:24px;color:var(--c-olive);transition:color .3s ease;flex-shrink:0}.contact-card:hover .card-icon-wrap svg{color:#fff}.card-body{display:flex;flex-direction:column;gap:6px}.card-label{font-size:10px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;color:var(--c-muted);transition:color .25s ease}.contact-card:hover .card-label{color:var(--c-olive)}.card-name{font-size:1.25rem;font-weight:800;letter-spacing:-.5px;color:var(--c-text);line-height:1.2}.card-detail{font-size:.875rem;color:var(--c-sub);line-height:1.55;font-weight:400}.card-arrow{margin-top:auto;width:32px;height:32px;border-radius:50%;border:1.5px solid var(--c-border-h);display:flex;align-items:center;justify-content:center;color:var(--c-muted);transition:all .35s var(--ease-spring);align-self:flex-end}.card-arrow svg{width:14px;height:14px;transition:transform .3s var(--ease-spring)}.contact-card:hover .card-arrow{background:linear-gradient(135deg,var(--c-olive),var(--c-gold));border-color:transparent;color:#fff;transform:scale(1.1)}.contact-card:hover .card-arrow svg{transform:translate(2px,-2px)}@keyframes fadeUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes cardIn{0%{opacity:0;transform:translateY(36px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:760px){.contact-grid{grid-template-columns:1fr;max-width:480px}.contact-card{flex-direction:row;align-items:center;gap:16px;padding:22px 20px}.card-body{flex:1;min-width:0}.card-arrow{margin-top:0;align-self:center}.contact-card:hover{transform:translate(4px) scale(1.01)}}@media(max-width:480px){.contact-page{padding:30px 16px 50px}.contact-title{letter-spacing:-1.5px}}
