.contact-page{min-height:100svh;display:grid;grid-template-columns:1fr 1fr}.contact-image{position:relative;overflow:hidden}.contact-image img{width:100%;height:100%;object-fit:cover}.contact-image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#fdfdfc40,#fdfdfca6);display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-3xl)}.contact-image-text{font-family:var(--font-accent);font-style:italic;font-size:clamp(1.8rem,3vw,2.5rem);color:var(--color-text);line-height:1.3;max-width:400px}.contact-image-accent{width:60px;height:2px;background:var(--color-accent);margin-top:var(--space-lg)}.contact-form-side{display:flex;flex-direction:column;justify-content:center;padding:var(--space-3xl) var(--space-4xl);background:var(--color-bg);position:relative;overflow:hidden}.contact-form-side:before{content:"";position:absolute;top:-50%;right:-30%;width:500px;height:500px;background:radial-gradient(circle,var(--color-accent-glow) 0%,transparent 70%);opacity:.3;pointer-events:none}.form-header{margin-bottom:var(--space-3xl)}.form-header-label{font-family:var(--font-heading);font-weight:500;font-size:.75rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-md)}.form-header h1{font-family:var(--font-heading);font-weight:800;font-size:clamp(2rem,3.5vw,3rem);text-transform:uppercase;letter-spacing:-.02em}.form-header p{margin-top:var(--space-md);color:var(--color-text-secondary);font-size:1rem;line-height:1.7}.contact-form{display:flex;flex-direction:column;gap:var(--space-xl)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}.form-group{position:relative}.form-group input,.form-group textarea,.form-group select{width:100%;padding:var(--space-lg) 0;background:none;border:none;border-bottom:1px solid var(--color-border-hover);font-family:var(--font-body);font-size:1rem;color:var(--color-text);transition:border-color var(--transition-smooth);outline:none}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-accent)}.form-group label{position:absolute;top:var(--space-lg);left:0;font-family:var(--font-heading);font-weight:500;font-size:.85rem;letter-spacing:.05em;color:var(--color-text-muted);transition:all .3s var(--ease-out);pointer-events:none}.form-group input:focus~label,.form-group input:not(:placeholder-shown)~label,.form-group textarea:focus~label,.form-group textarea:not(:placeholder-shown)~label,.form-group select:focus~label,.form-group select:valid~label{top:-4px;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent)}.form-group textarea{resize:vertical;min-height:100px}.form-group select{cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.form-group select option{background:var(--color-surface);color:var(--color-text)}.form-group.select-group:after{content:"▾";position:absolute;right:0;top:var(--space-lg);color:var(--color-text-muted);pointer-events:none;font-size:.8rem}.form-line{position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--color-accent);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease-out-expo)}.form-group input:focus~.form-line,.form-group textarea:focus~.form-line,.form-group select:focus~.form-line{transform:scaleX(1)}.form-submit{margin-top:var(--space-lg)}.submit-btn{width:100%;padding:1.2em 2em;font-family:var(--font-heading);font-weight:700;font-size:.9rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-bg);background:var(--color-accent);border:none;border-radius:var(--radius-full);cursor:pointer;position:relative;overflow:hidden;transition:all var(--transition-smooth)}.submit-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-accent-light);transform:translate(-100%);transition:transform .6s var(--ease-out-expo)}.submit-btn:hover:before{transform:translate(0)}.submit-btn span{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:var(--space-sm)}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 10px 40px var(--color-accent-glow)}.submit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-submit-overlay);pointer-events:none;opacity:0;visibility:hidden}.submit-overlay.active{pointer-events:all;opacity:1;visibility:visible}.submit-overlay-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-bg);opacity:0;transition:opacity .6s var(--ease-out)}.submit-overlay.active .submit-overlay-bg{opacity:.97}.submit-overlay-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xl)}.check-circle{width:120px;height:120px;border-radius:50%;position:relative;opacity:0;transform:scale(.5)}.submit-overlay.active .check-circle{animation:checkCircleIn .8s .4s var(--ease-out-expo) forwards}@keyframes checkCircleIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.check-circle svg{width:100%;height:100%}.check-circle .circle-path{fill:none;stroke:var(--color-accent);stroke-width:2;stroke-dasharray:380;stroke-dashoffset:380}.submit-overlay.active .check-circle .circle-path{animation:drawCircle 1s .5s var(--ease-out-expo) forwards}@keyframes drawCircle{to{stroke-dashoffset:0}}.check-circle .check-path{fill:none;stroke:var(--color-accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60}.submit-overlay.active .check-circle .check-path{animation:drawCheck .5s 1.2s var(--ease-out) forwards}@keyframes drawCheck{to{stroke-dashoffset:0}}.submit-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.particle{position:absolute;width:8px;height:8px;border-radius:50%;opacity:0}.particle.accent{background:var(--color-accent)}.particle.light{background:var(--color-accent-light)}.particle.white{background:#1c1a1740}.submit-overlay.active .particle{animation:particleBurst 1.5s var(--ease-out) forwards}@keyframes particleBurst{0%{opacity:0;transform:translate(0) scale(0)}20%{opacity:1;transform:scale(1)}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(0)}}.submit-success-text{font-family:var(--font-heading);font-weight:800;font-size:clamp(1.5rem,4vw,2.5rem);text-transform:uppercase;letter-spacing:.1em;opacity:0;transform:translateY(30px)}.submit-overlay.active .submit-success-text{animation:textReveal .6s 1.5s var(--ease-out-expo) forwards}.submit-success-sub{font-family:var(--font-accent);font-style:italic;font-size:1.1rem;color:var(--color-accent);opacity:0;transform:translateY(20px)}.submit-overlay.active .submit-success-sub{animation:textReveal .6s 1.8s var(--ease-out-expo) forwards}@keyframes textReveal{to{opacity:1;transform:translateY(0)}}.submit-close-hint{position:absolute;bottom:var(--space-3xl);font-family:var(--font-heading);font-weight:500;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);opacity:0;cursor:pointer;transition:color var(--transition-fast)}.submit-close-hint:hover{color:var(--color-accent)}.submit-overlay.active .submit-close-hint{animation:textReveal .5s 2.5s var(--ease-out) forwards}.form-group input[type=date]{color:var(--color-text-muted)}.form-group input[type=date]:focus,.form-group input[type=date]:valid{color:var(--color-text)}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.1);cursor:pointer}@media(max-width:1024px){.contact-form-side{padding:var(--space-3xl) var(--space-2xl)}}@media(max-width:768px){.contact-page{grid-template-columns:1fr;min-height:auto}.contact-image{height:40svh;min-height:300px}.contact-form-side{padding:var(--space-2xl) var(--space-lg);padding-top:var(--space-2xl);padding-bottom:var(--space-4xl)}.form-row{grid-template-columns:1fr}.contact-image-overlay{padding:var(--space-2xl)}.check-circle{width:90px;height:90px}}@media(max-width:480px){.contact-image{height:35svh;min-height:250px}.contact-image-text{font-size:1.4rem}}
