/*
Theme Name: Studio Gallitelli Premium
Author: OpenAI
Version: 1.1
Text Domain: studio-gallitelli
*/
:root{--bg:#050912;--bg2:#0b1220;--text:#f4f8fd;--muted:#b7c7da;--gold:#d7b46f;--gold2:#f2d9a9;--cyan:#73d8ff;--line:rgba(255,255,255,.10);--container:min(1240px,92%);--radius:22px;--mx:50%;--my:50%}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Manrope,Arial,sans-serif;color:var(--text);background:radial-gradient(circle at 10% 0%, rgba(115,216,255,.12), transparent 25%),radial-gradient(circle at 90% 0%, rgba(215,180,111,.12), transparent 25%),linear-gradient(180deg,#03070d,#08101a);overflow-x:hidden}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(420px 420px at var(--mx) var(--my), rgba(115,216,255,.08), transparent 60%)}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.sg-wrap{position:relative;z-index:2}.sg-container{width:var(--container);margin:auto;position:relative;z-index:2}
.sg-nav{position:sticky;top:0;backdrop-filter:blur(14px);background:rgba(7,13,22,.7);border-bottom:1px solid var(--line);z-index:99}
.sg-nav-inner{width:var(--container);margin:auto;display:flex;justify-content:space-between;align-items:center;padding:14px 0;gap:18px;flex-wrap:wrap}
.sg-brand strong{color:var(--gold2);letter-spacing:.1em;font-size:.9rem;text-transform:uppercase}.sg-brand span{display:block;font-size:.74rem;color:#cddaea;margin-top:3px}
.sg-menu{display:flex;gap:10px;flex-wrap:wrap}.sg-menu a{padding:8px 14px;border-radius:999px;font-weight:700;font-size:.85rem;border:1px solid transparent;transition:.25s ease}.sg-menu a:hover{background:rgba(115,216,255,.1);border-color:rgba(115,216,255,.18)}
.sg-hero{min-height:66vh;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(0,0,0,.82),rgba(0,0,0,.45)), var(--hero-image, linear-gradient(180deg,#08101a,#0b1220));background-size:cover;background-position:center;border-bottom:1px solid var(--line)}
.sg-hero::before{content:"";position:absolute;right:-140px;top:20px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle, rgba(115,216,255,.18), transparent 65%);filter:blur(10px)}
.sg-hero::after{content:"";position:absolute;left:-140px;bottom:-140px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle, rgba(215,180,111,.14), transparent 65%);filter:blur(10px)}
.sg-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:24px;align-items:center;padding:90px 0 72px;position:relative;z-index:2}
.sg-hero h1{font-size:clamp(2.4rem,4vw,4.8rem);margin:0 0 18px;line-height:1.02}.sg-hero p{max-width:760px;font-size:1.08rem;color:#d7e3f5}
.sg-hero-panel,.sg-card,.sg-note-box,.sg-highlight{border-radius:var(--radius);background:rgba(255,255,255,.04);border:1px solid var(--line);position:relative;overflow:hidden;box-shadow:0 14px 30px rgba(0,0,0,.16);padding:24px}
.sg-hero-panel::after,.sg-card::after,.sg-note-box::after,.sg-highlight::after,.sg-faq-item::after{content:"";position:absolute;inset:0;background:radial-gradient(300px at var(--mx) var(--my), rgba(255,255,255,.09), transparent);opacity:0;transition:.3s;pointer-events:none}
.sg-hero-panel:hover::after,.sg-card:hover::after,.sg-note-box:hover::after,.sg-highlight:hover::after,.sg-faq-item:hover::after{opacity:1}
.sg-card:hover,.sg-highlight:hover,.sg-note-box:hover{transform:translateY(-5px);border-color:rgba(115,216,255,.18);transition:.3s ease}
.sg-pill{display:inline-flex;align-items:center;gap:10px;padding:7px 13px;border-radius:999px;border:1px solid rgba(215,180,111,.35);background:linear-gradient(180deg, rgba(215,180,111,.12), rgba(215,180,111,.04));font-size:.74rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--gold2);margin-bottom:14px}
.sg-pill::before{content:"";width:8px;height:8px;border-radius:50%;background:radial-gradient(circle,var(--gold2),var(--gold));box-shadow:0 0 12px rgba(215,180,111,.45)}
h1,h2,h3{margin:0 0 12px}.sg-section{padding:88px 0;position:relative;z-index:2}.sg-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:28px}.sg-section-head p{max-width:640px}
.sg-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.sg-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.sg-list{margin:0;padding-left:18px;color:#dce8f8}.sg-list li{margin-bottom:8px}
.sg-tag{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#baf1ff;background:rgba(115,216,255,.08);border:1px solid rgba(115,216,255,.18);margin-bottom:12px}
.sg-service-link,.sg-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:14px;font-weight:800;font-size:.92rem;transition:.28s ease}
.sg-service-link{margin-top:16px;border-radius:999px;border:1px solid rgba(115,216,255,.22);background:rgba(115,216,255,.08)}
.sg-service-link:hover,.sg-btn-secondary:hover{background:rgba(115,216,255,.14);transform:translateY(-2px)}
.sg-btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#111;box-shadow:0 16px 34px rgba(215,180,111,.22)}
.sg-btn-secondary{background:rgba(115,216,255,.08);border:1px solid rgba(115,216,255,.20);color:#eef8ff}
.sg-btn-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.sg-footer{padding:30px;text-align:center;border-top:1px solid var(--line);color:#b8c8dc;position:relative;z-index:2}
.sg-contact-lines{display:grid;gap:12px;margin-top:18px}.sg-contact-line{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}
.sg-form{display:grid;gap:12px}.sg-field{display:grid;gap:7px}.sg-field label{font-size:.84rem;font-weight:800;color:#dce8f8}
.sg-field input,.sg-field textarea,.sg-field select{width:100%;padding:13px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg, rgba(8,15,25,.78), rgba(8,15,25,.62));color:#fff;font:inherit}.sg-field textarea{min-height:136px;resize:vertical}
.sg-map iframe{display:block;width:100%;min-height:320px;border:0}
.sg-faq-list{display:grid;gap:16px}.sg-faq-item{border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.04);overflow:hidden;position:relative}
.sg-faq-question{width:100%;background:transparent;border:none;color:var(--text);text-align:left;padding:22px 56px 22px 22px;font:inherit;font-weight:800;font-size:1.02rem;cursor:pointer;position:relative;z-index:2}
.sg-faq-question::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:1.4rem;font-weight:400;color:var(--gold2);transition:.25s ease}
.sg-faq-item.open .sg-faq-question::after{transform:translateY(-50%) rotate(45deg)}
.sg-faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease}.sg-faq-answer-inner{padding:0 22px 22px;color:var(--muted);line-height:1.7}
.sg-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease}.sg-reveal.visible{opacity:1;transform:none}
@media(max-width:1180px){.sg-hero-grid{grid-template-columns:1fr}.sg-grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.sg-nav-inner{align-items:flex-start;flex-direction:column}.sg-menu{width:100%}.sg-hero-grid{padding:20px 0 0}}
@media(max-width:640px){.sg-section{padding:66px 0}.sg-grid-2,.sg-grid-3{grid-template-columns:1fr}.sg-btn,.sg-service-link{width:100%}.sg-card,.sg-hero-panel,.sg-note-box,.sg-highlight{padding:20px 18px}}

/* Menu mobile compatto - fix */
.sg-menu-toggle-checkbox{display:none}
.sg-menu-toggle{display:none;width:44px;height:40px;border:1px solid rgba(115,216,255,.22);border-radius:12px;background:rgba(115,216,255,.08);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;margin-left:auto}
.sg-menu-toggle span{display:block;width:20px;height:2px;background:#eef8ff;border-radius:999px;transition:.25s ease}
@media(max-width:900px){
  .sg-nav-inner{display:grid!important;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:12px 0;}
  .sg-brand{min-width:0;}
  .sg-brand strong{font-size:.78rem;line-height:1.2;}
  .sg-brand span{font-size:.68rem;line-height:1.25;}
  .sg-menu-toggle{display:flex;}
  .sg-menu{grid-column:1 / -1;width:100%;display:grid!important;grid-template-columns:1fr;gap:6px;max-height:0;overflow:hidden;opacity:0;transition:max-height .28s ease, opacity .2s ease;padding:0;}
  .sg-menu a{display:block;width:100%;padding:11px 12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);}
  .sg-menu-toggle-checkbox:checked ~ .sg-menu{max-height:650px;opacity:1;padding-top:8px;}
  .sg-menu-toggle-checkbox:checked + .sg-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .sg-menu-toggle-checkbox:checked + .sg-menu-toggle span:nth-child(2){opacity:0;}
  .sg-menu-toggle-checkbox:checked + .sg-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
}
