:root { --contact-yellow:#f5c400; --contact-cream:#f5f2ea; --contact-black:#080709; }
.page-contatti-minimal { min-height:100svh; overflow-x:hidden; background:var(--contact-black); color:var(--contact-cream); }
.page-contatti-minimal main { position:relative; min-height:100svh; color:var(--contact-cream)!important; isolation:isolate; background:radial-gradient(circle at 75% 42%,rgba(107,44,137,.24),transparent 34%),linear-gradient(135deg,#080709 0%,#140d1b 58%,#080709 100%)!important; }
.page-contatti-minimal main::before { content:""; position:absolute; z-index:-2; inset:0; background:linear-gradient(90deg,rgba(8,7,9,.96) 0%,rgba(8,7,9,.78) 45%,rgba(8,7,9,.62) 100%),url('../img/school-gemini-corridor.webp') center/cover; opacity:.42; transform:scale(1.04); filter:saturate(.55) contrast(1.08); }
.page-contatti-minimal main::after { content:""; position:absolute; z-index:-1; inset:0; pointer-events:none; background:radial-gradient(circle at var(--contact-mx,72%) var(--contact-my,38%),rgba(245,196,0,.13),transparent 18%),repeating-linear-gradient(90deg,transparent 0 14vw,rgba(245,196,0,.035) 14vw 14.1vw); }
.page-contatti-minimal .minimal-nav { z-index:20; }
.contact-minimal { position:relative; display:flex; flex-direction:column; justify-content:center; padding:clamp(150px,18vh,190px) clamp(22px,7vw,110px) 56px; }
.contact-minimal::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.35; background:radial-gradient(circle at 20% 70%,rgba(112,37,142,.2),transparent 25%); }
.contact-ambient { position:absolute; z-index:0; inset:0; pointer-events:none; overflow:hidden; }
.contact-ambient span { position:absolute; display:block; border:1px solid rgba(245,196,0,.14); border-radius:50%; filter:blur(.3px); transform:translate3d(calc(var(--contact-dx,0px) * .4),calc(var(--contact-dy,0px) * .4),0); transition:transform .8s cubic-bezier(.22,1,.36,1); }
.contact-ambient span:nth-child(1){width:32vw;height:32vw;top:-15vw;right:-10vw}.contact-ambient span:nth-child(2){width:19vw;height:19vw;bottom:-8vw;left:-6vw}.contact-ambient span:nth-child(3){width:8vw;height:8vw;top:28%;left:47%}
.contact-minimal-hero { position:relative; z-index:1; width:min(1180px,100%); margin:0 auto; display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,470px); gap:clamp(45px,9vw,150px); align-items:center; background:transparent!important; }
.contact-minimal-copy { max-width:650px; }
.contact-kicker,.contact-panel-heading span,.contact-minimal-details small { color:var(--contact-yellow); font:600 10px/1 var(--sans); letter-spacing:.22em; text-transform:uppercase; }
.contact-kicker { margin:0 0 25px; }
.contact-minimal-copy h1 { margin:0; color:var(--contact-cream); font:500 clamp(4.2rem,8vw,8.7rem)/.86 Manrope,sans-serif; letter-spacing:-.11em; }
.contact-minimal-copy h1 em { color:var(--contact-yellow); font-style:normal; }
.contact-intro { max-width:480px; margin:35px 0 0; color:rgba(245,242,234,.72); font-size:1.08rem; line-height:1.6; }
.contact-actions { display:flex; align-items:center; flex-wrap:wrap; gap:14px; margin-top:34px; }
.contact-whatsapp,.contact-email { display:inline-flex; align-items:center; gap:24px; min-height:56px; padding:0 24px; border-radius:999px; font:600 11px/1 var(--sans); letter-spacing:.14em; text-transform:uppercase; transition:transform .3s ease,background .3s ease,color .3s ease; }
.contact-whatsapp { color:var(--contact-black); background:var(--contact-yellow); }
.contact-email { color:var(--contact-cream); border:1px solid rgba(245,242,234,.28); }
.contact-whatsapp:hover,.contact-email:hover { transform:translateY(-3px); }
.contact-email:hover { color:var(--contact-yellow); border-color:var(--contact-yellow); }
.contact-whatsapp span,.contact-email span { font-size:18px; font-weight:400; }
.contact-minimal-panel { padding:30px; border:1px solid rgba(245,242,234,.28); border-radius:28px 8px 28px 8px; background:linear-gradient(145deg,rgba(28,16,36,.78),rgba(8,7,9,.7)); box-shadow:0 30px 90px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.16); backdrop-filter:blur(22px) saturate(1.2); transform:translate3d(calc(var(--contact-dx,0px) * .06),calc(var(--contact-dy,0px) * .06),0) rotateY(calc(var(--contact-dx,0px) * .012deg)) rotateX(calc(var(--contact-dy,0px) * -.008deg)); transition:transform .7s cubic-bezier(.22,1,.36,1); }
.contact-panel-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:28px; }
.contact-panel-heading i { width:8px; height:8px; border-radius:50%; background:var(--contact-yellow); box-shadow:0 0 18px rgba(245,196,0,.7); }
.contact-minimal-panel form { display:grid; gap:18px; }
.contact-minimal-panel label:not(.contact-check) { display:grid; gap:8px; color:rgba(245,242,234,.62); font:600 9px/1 var(--sans); letter-spacing:.16em; text-transform:uppercase; }
.contact-minimal-panel input:not([type=checkbox]),.contact-minimal-panel textarea { width:100%; padding:13px 0; color:var(--contact-cream); background:transparent; border:0; border-bottom:1px solid rgba(245,242,234,.2); border-radius:0; outline:0; font:400 15px/1.4 var(--sans); }
.contact-minimal-panel textarea { min-height:72px; resize:vertical; }
.contact-minimal-panel input:focus,.contact-minimal-panel textarea:focus { border-color:var(--contact-yellow); }
.contact-minimal-panel input::placeholder,.contact-minimal-panel textarea::placeholder { color:rgba(245,242,234,.35); }
.contact-check { display:flex; gap:8px; align-items:flex-start; color:rgba(245,242,234,.5); font-size:11px; line-height:1.4; }
.contact-check input { accent-color:var(--contact-yellow); margin-top:2px; }
.contact-check a { color:var(--contact-yellow); }
.contact-minimal-panel button { display:flex; justify-content:space-between; align-items:center; width:100%; min-height:54px; padding:0 20px; color:var(--contact-black); background:var(--contact-yellow); border:1px solid var(--contact-yellow); border-radius:999px; font:600 10px/1 var(--sans); letter-spacing:.16em; text-transform:uppercase; cursor:pointer; transition:background .3s ease,color .3s ease; }
.contact-minimal-panel button:hover { color:var(--contact-yellow); background:transparent; }
.contact-minimal-panel button span { font-size:18px; }
.contact-minimal-details { position:relative; z-index:1; width:min(1180px,100%); margin:clamp(48px,8vh,90px) auto 0; padding:22px 26px; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; border:1px solid rgba(245,242,234,.14); border-radius:16px; background:rgba(8,7,9,.45); backdrop-filter:blur(14px); }
.contact-minimal-details { display:none; }
.contact-minimal-details div { display:grid; gap:10px; }
.contact-minimal-details a,.contact-minimal-details span { color:rgba(245,242,234,.76); font-size:14px; }
.contact-minimal-details a:hover { color:var(--contact-yellow); }
@media (max-width:900px){.contact-minimal{padding:125px 22px 35px}.contact-minimal-hero{grid-template-columns:1fr;gap:42px}.contact-minimal-copy h1{font-size:clamp(3.5rem,14vw,6.2rem)}.contact-intro{margin-top:24px;font-size:.98rem}.contact-actions{margin-top:25px}.contact-minimal-panel{padding:24px}.contact-minimal-details{grid-template-columns:1fr;margin-top:44px;gap:18px}.contact-minimal-details div{display:flex;justify-content:space-between;align-items:center}}
