
:root{--ink:#09090a;--ink2:#111113;--cream:#f3eee4;--cream2:#d9d0c0;--gold:#caa65b;--gold2:#ebd39c;--line:rgba(235,211,156,.22);--muted:#a8a196;--green:#1f6e43;--red:#a43d36;--radius:26px;--shell:min(1180px,calc(100vw - 48px));}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}body::selection{background:var(--gold);color:var(--ink)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{width:var(--shell);margin:0 auto}.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;transition:.35s ease;border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(9,9,10,.78);backdrop-filter:blur(18px);border-color:rgba(255,255,255,.07)}.nav-shell{height:90px;display:flex;align-items:center;gap:32px}.brand{display:inline-flex;flex-direction:column;line-height:1;min-width:max-content}.brand-main{font-family:Georgia,'Times New Roman',serif;font-size:27px;letter-spacing:-1.2px;font-weight:700}.brand-main i{color:var(--gold);font-weight:400}.brand-sub{font-size:8px;letter-spacing:5.5px;margin:7px 0 0 3px;color:#d9d4cc}.desktop-nav{display:flex;align-items:center;gap:25px;margin-left:auto}.desktop-nav a{font-size:12px;color:#c8c2b8;position:relative;transition:.25s}.desktop-nav a:hover,.desktop-nav a.active{color:#fff}.desktop-nav a.active::after{content:"";position:absolute;left:0;bottom:-10px;width:100%;height:1px;background:var(--gold)}.mini-cta{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;padding:12px 16px;font-size:11px;letter-spacing:.2px;transition:.25s;background:rgba(255,255,255,.025)}.mini-cta:hover{border-color:var(--gold);background:rgba(202,166,91,.08)}.menu-toggle,.mobile-menu{display:none}.hero{min-height:100vh;position:relative;display:flex;flex-direction:column;justify-content:center;padding:138px 0 40px;overflow:hidden;background:radial-gradient(circle at 72% 42%,rgba(202,166,91,.13),transparent 27%),radial-gradient(circle at 12% 18%,rgba(255,255,255,.035),transparent 24%),linear-gradient(180deg,#080809,#0b0b0c 72%,#0d0d0f)}.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 49.8%,rgba(255,255,255,.035) 50%,transparent 50.2%),linear-gradient(0deg,transparent 0 49.8%,rgba(255,255,255,.025) 50%,transparent 50.2%);background-size:120px 120px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 82%)}.hero-noise{position:absolute;inset:0;opacity:.22;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E")}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:40px}.eyebrow{margin:0 0 22px;text-transform:uppercase;letter-spacing:3.1px;color:var(--gold2);font-size:10px;font-weight:700}.hero h1,.section h2,.legal-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-3px;line-height:.98;margin:0}.hero h1{font-size:clamp(58px,6.8vw,98px);max-width:760px}.hero-lead{font-size:16px;line-height:1.75;color:#bbb4aa;max-width:620px;margin:28px 0 0}.hero-actions{display:flex;gap:12px;align-items:center;margin-top:32px;flex-wrap:wrap}.button{display:inline-flex;gap:20px;align-items:center;justify-content:center;min-height:50px;padding:0 20px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.15px;transition:.3s ease}.button span{font-size:16px}.button-primary{background:var(--cream);color:var(--ink);border:1px solid var(--cream)}.button-primary:hover{background:var(--gold2);border-color:var(--gold2);transform:translateY(-2px)}.button-ghost{border:1px solid rgba(255,255,255,.14);color:#ddd6cc}.button-ghost:hover{border-color:var(--gold);color:#fff;background:rgba(202,166,91,.06)}.launch-note{display:flex;align-items:center;gap:10px;margin-top:27px;color:#857f77;font-size:11px}.launch-note span{width:31px;height:1px;background:var(--gold)}.hero-stage{min-height:560px;position:relative;display:grid;place-items:center}.stage-aura{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(202,166,91,.13),transparent 67%);filter:blur(3px)}.pizza-art{width:min(100%,520px);overflow:visible;filter:drop-shadow(0 38px 55px rgba(0,0,0,.45));animation:float 6s ease-in-out infinite}.pizza-rotor{transform-origin:260px 260px;animation:spin 48s linear infinite}.spark{animation:pulse 2.5s ease-in-out infinite}.spark-b{animation-delay:.8s}.spark-c{animation-delay:1.6s}.orbit-label{position:absolute;font-size:8px;letter-spacing:2.6px;color:#aaa197;border:1px solid rgba(255,255,255,.09);padding:9px 12px;border-radius:999px;background:rgba(8,8,9,.72);backdrop-filter:blur(10px)}.orbit-label-a{top:21%;right:2%}.orbit-label-b{bottom:25%;left:1%}.stage-caption{position:absolute;right:6%;bottom:4%;display:flex;gap:14px;align-items:flex-start;width:230px}.stage-caption span{color:var(--gold);font-size:10px;padding-top:4px}.stage-caption p{margin:0;color:#a8a197;font-size:11px;line-height:1.5}.trust-strip{position:relative;z-index:2;margin-top:30px;display:flex;align-items:center;justify-content:center;gap:17px;color:#6f6a64;text-transform:uppercase;letter-spacing:2.1px;font-size:8px}.trust-strip i{width:3px;height:3px;background:var(--gold);border-radius:50%}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translateY(-12px)}}@keyframes pulse{50%{opacity:.25;transform:scale(.7)}}.section{padding:130px 0;position:relative}.section-heading h2{font-size:clamp(44px,5.2vw,73px)}.section-heading h2 em,.cta-panel h2 em{color:var(--gold2);font-weight:400}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.manifesto{background:var(--cream);color:var(--ink)}.manifesto .eyebrow,.inner-story .eyebrow{color:#8e6c2e}.manifesto-copy{padding-top:37px}.manifesto-copy p{font-family:Georgia,'Times New Roman',serif;font-size:20px;line-height:1.65;color:#3d3a35;margin:0 0 22px}.text-link{display:inline-flex;align-items:center;gap:16px;margin-top:12px;padding-bottom:5px;border-bottom:1px solid #b18d4c;font-size:12px;font-weight:700}.services-section{background:#0d0d0f}.section-heading.compact{max-width:700px;margin-bottom:50px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-card{min-height:390px;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:28px;background:radial-gradient(circle at 84% 8%,rgba(202,166,91,.1),transparent 28%),#101012;display:flex;flex-direction:column;transition:transform .25s ease,border-color .25s ease,background .25s}.service-card:hover{border-color:rgba(202,166,91,.55);background:radial-gradient(circle at 84% 8%,rgba(202,166,91,.15),transparent 31%),#121214}.service-top{display:flex;justify-content:space-between;align-items:center;color:#7c756c;font-size:10px}.service-icon{width:52px;height:52px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--gold)}.service-icon svg{width:23px;fill:none;stroke:currentColor;stroke-width:1.4}.service-card h3{font-family:Georgia,'Times New Roman',serif;font-size:34px;font-weight:400;margin:90px 0 14px}.service-card p{color:#928b82;line-height:1.65;font-size:13px;margin:0;max-width:290px}.service-card b{margin-top:auto;font-size:11px;color:#e0d9cf;display:flex;justify-content:space-between;align-items:center}.service-card b span{font-size:17px;color:var(--gold)}.experience{background:#0d0d0f;padding-top:0}.experience-card{border-radius:34px;min-height:640px;padding:66px;background:linear-gradient(110deg,rgba(7,7,8,.93),rgba(10,10,11,.69)),radial-gradient(circle at 74% 50%,rgba(202,166,91,.17),transparent 30%),linear-gradient(135deg,#171719,#0a0a0b);border:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:end;overflow:hidden;position:relative}.experience-card::after{content:"";position:absolute;width:480px;height:480px;border:1px solid rgba(202,166,91,.16);border-radius:50%;right:-90px;top:-95px;box-shadow:0 0 0 70px rgba(202,166,91,.025),0 0 0 140px rgba(202,166,91,.018)}.experience-intro{position:relative;z-index:2}.experience-intro h2{font-size:57px}.steps{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.steps article{border-left:1px solid rgba(255,255,255,.12);padding-left:20px;min-height:190px}.steps span{font-size:9px;color:var(--gold)}.steps h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:22px;margin:65px 0 10px}.steps p{font-size:11px;line-height:1.6;color:#918a82;margin:0}.local-seo{background:var(--cream);color:var(--ink)}.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.local-art{height:520px;border-radius:32px;background:radial-gradient(circle at 65% 35%,rgba(202,166,91,.3),transparent 25%),linear-gradient(145deg,#171719,#060607);position:relative;overflow:hidden;display:grid;place-items:center}.local-art::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:50px 50px;transform:rotate(-10deg) scale(1.2)}.map-word{color:#27272a;font-family:Georgia,serif;font-size:61px;letter-spacing:-3px;transform:rotate(-9deg);text-shadow:0 1px 0 rgba(255,255,255,.04)}.pin{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 8px rgba(202,166,91,.1),0 0 35px rgba(202,166,91,.4)}.pin-1{left:34%;top:34%}.pin-2{right:25%;top:46%;width:7px;height:7px}.pin-3{left:52%;bottom:26%;width:8px;height:8px}.local-badge{position:absolute;left:32px;bottom:30px;border:1px solid rgba(255,255,255,.12);border-radius:50%;width:94px;height:94px;display:grid;place-content:center;text-align:center;color:var(--cream);font-family:Georgia,serif;font-size:28px}.local-badge small{font-family:Arial;font-size:7px;letter-spacing:3px;color:#918a82}.local-copy .eyebrow{color:#8e6c2e}.local-copy h2{font-size:69px}.local-copy p{font-family:Georgia,serif;font-size:18px;line-height:1.65;color:#49443d}.button-ghost.light{border-color:rgba(0,0,0,.16);color:#181717}.button-ghost.light:hover{border-color:#a57b37;background:rgba(202,166,91,.12)}.inner-story{background:var(--cream);color:var(--ink)}.tone-section{background:#0d0d0f}.tone-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.tone-card{min-height:330px;border-radius:26px;border:1px solid rgba(255,255,255,.08);padding:29px;background:linear-gradient(160deg,rgba(255,255,255,.03),transparent)}.tone-card>span{color:var(--gold);font-size:9px}.tone-card h3{font-family:Georgia,serif;font-weight:400;font-size:30px;margin:110px 0 14px}.tone-card p{color:#999188;font-size:12px;line-height:1.75;margin:0}.faq-section{background:#0b0b0c;border-top:1px solid rgba(255,255,255,.055)}.faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.faq-list{border-top:1px solid rgba(255,255,255,.12)}.faq-item{border-bottom:1px solid rgba(255,255,255,.1)}.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:25px 0;font-family:Georgia,serif;font-size:21px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary b{font-family:Arial;font-weight:300;color:var(--gold);font-size:22px;transition:.2s}.faq-item[open] summary b{transform:rotate(45deg)}.faq-item div{overflow:hidden}.faq-item p{margin:0 50px 25px 0;color:#989188;line-height:1.7;font-size:13px}.final-cta{background:#0b0b0c;padding-top:0}.cta-panel{background:var(--gold2);color:#101011;border-radius:34px;padding:58px 65px;display:flex;justify-content:space-between;gap:60px;align-items:end}.cta-panel .eyebrow{color:#6f5324}.cta-panel h2{font-size:58px}.cta-panel h2 em{color:#735925}.cta-actions{display:flex;flex-direction:column;align-items:stretch;gap:17px}.cta-panel .button-primary{background:#0d0d0e;color:#fff;border-color:#0d0d0e}.contact-inline{text-align:center;font-size:11px;font-weight:700}.contact-section{background:var(--cream);color:var(--ink);padding-top:80px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.contact-details h2{font-size:58px;margin-bottom:35px}.contact-details .eyebrow{color:#8e6c2e}.contact-row{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid rgba(0,0,0,.12)}.contact-row>span{width:44px;height:44px;border:1px solid rgba(0,0,0,.14);border-radius:50%;display:grid;place-items:center}.contact-row svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.6}.contact-row small{display:block;font-size:8px;text-transform:uppercase;letter-spacing:2px;color:#837b70;margin-bottom:5px}.contact-row strong{font-size:15px;font-weight:600}.contact-row b{font-size:20px;color:#9a762f}.contact-footnote{font-size:11px;color:#777066;line-height:1.65;margin-top:26px}.event-form{background:#111113;color:#f3eee4;padding:32px;border-radius:30px;box-shadow:0 35px 80px rgba(0,0,0,.13)}.form-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.form-head span{font-family:Georgia,serif;font-size:25px}.form-head small{color:#79736c;font-size:9px}.event-form label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1.6px;color:#a29b92;margin-bottom:15px}.event-form input,.event-form select,.event-form textarea{width:100%;margin-top:8px;border:1px solid rgba(255,255,255,.11);background:#171719;color:#fff;border-radius:13px;padding:13px 14px;outline:none;text-transform:none;letter-spacing:0;font-size:13px;transition:.2s}.event-form textarea{resize:vertical}.event-form input:focus,.event-form select:focus,.event-form textarea:focus{border-color:var(--gold)}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-button{width:100%;border:0;cursor:pointer;margin-top:4px}.form-status{font-size:9px;color:#746f68;text-align:center;line-height:1.5;margin:12px 0 0}.legal-hero{padding:190px 0 75px;background:#0a0a0b}.legal-hero h1{font-size:70px}.legal{background:var(--cream);color:var(--ink)}.legal-copy{max-width:780px}.legal-copy h2{font-family:Georgia,serif;font-size:28px;margin:42px 0 13px}.legal-copy p{line-height:1.7;color:#4b4640}.legal-alert{border:1px solid #c6a45f;border-radius:16px;padding:20px;margin:25px 0;background:#f8f0de}.legal-alert p{margin-bottom:0}.site-footer{padding:70px 0 30px;background:#070708;border-top:1px solid rgba(255,255,255,.06)}.footer-top{display:flex;justify-content:space-between;gap:70px}.footer-top>div:first-child p{color:#77716a;font-size:11px;margin-top:24px}.footer-links{display:flex;gap:80px}.footer-links>div{display:flex;flex-direction:column;gap:12px}.footer-links small{color:var(--gold);font-size:8px;text-transform:uppercase;letter-spacing:2px;margin-bottom:4px}.footer-links a{color:#aaa39a;font-size:11px}.footer-links a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:60px;padding-top:24px;border-top:1px solid rgba(255,255,255,.07);color:#5f5a55;font-size:9px}.footer-bottom div{display:flex;gap:25px}.mobile-call{display:none}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.js .reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.18s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none}.pizza-art,.pizza-rotor,.spark{animation:none!important}}
@media(max-width:980px){:root{--shell:min(100% - 34px,780px)}.desktop-nav,.desktop-cta{display:none}.menu-toggle{display:flex;margin-left:auto;width:42px;height:42px;border:0;background:none;flex-direction:column;justify-content:center;gap:6px;padding:8px}.menu-toggle span{display:block;height:1px;width:24px;background:#ddd;transition:.25s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu{position:absolute;top:90px;left:17px;right:17px;background:#111113;border:1px solid rgba(255,255,255,.09);border-radius:20px;padding:18px;flex-direction:column;gap:6px;box-shadow:0 22px 60px rgba(0,0,0,.4)}.mobile-menu.open{display:flex}.mobile-menu>a:not(.mini-cta){padding:12px 7px;color:#c8c1b7;font-size:13px}.mobile-menu .mini-cta{margin-top:8px}.hero{min-height:auto;padding-top:135px}.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:760px}.hero-stage{min-height:470px;margin-top:-15px}.pizza-art{width:460px}.trust-strip{flex-wrap:wrap}.split,.local-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.manifesto-copy{padding-top:0}.services-grid,.tone-grid{grid-template-columns:1fr}.service-card{min-height:300px}.service-card h3{margin-top:65px}.experience-card{grid-template-columns:1fr;padding:44px;min-height:auto}.steps{margin-top:25px}.local-art{height:430px;order:2}.local-copy{order:1}.cta-panel{align-items:flex-start;flex-direction:column}.footer-top{flex-direction:column}.footer-links{gap:45px}.contact-section{padding-top:60px}}
@media(max-width:640px){:root{--shell:calc(100vw - 26px);--radius:22px}.nav-shell{height:76px}.brand-main{font-size:23px}.brand-sub{font-size:7px;letter-spacing:4.5px}.mobile-menu{top:76px}.hero{padding:115px 0 28px}.hero h1{font-size:51px;letter-spacing:-2.3px}.hero-lead{font-size:14px}.hero-actions{align-items:stretch}.button{width:100%}.hero-stage{min-height:390px;margin-top:4px}.pizza-art{width:360px}.orbit-label{font-size:6px;letter-spacing:1.8px;padding:7px 9px}.orbit-label-a{top:17%;right:0}.orbit-label-b{bottom:28%;left:0}.stage-caption{display:none}.trust-strip{gap:10px;font-size:6px;margin-top:8px}.section{padding:88px 0}.section-heading h2,.local-copy h2{font-size:44px;letter-spacing:-2px}.manifesto-copy p{font-size:17px}.services-grid{gap:10px}.service-card{padding:23px;min-height:280px}.service-card h3{font-size:31px}.experience-card{padding:28px 22px;border-radius:26px}.experience-intro h2{font-size:43px}.steps{grid-template-columns:1fr}.steps article{min-height:0;padding:18px 0 18px 16px}.steps h3{margin:25px 0 7px}.local-art{height:340px}.map-word{font-size:42px}.local-copy p{font-size:16px}.tone-card{min-height:260px}.tone-card h3{margin-top:65px}.faq-item summary{font-size:17px}.faq-item p{margin-right:0}.cta-panel{padding:35px 24px;border-radius:25px}.cta-panel h2{font-size:42px}.cta-actions{width:100%}.field-pair{grid-template-columns:1fr;gap:0}.event-form{padding:23px}.form-head{align-items:flex-start;gap:12px;flex-direction:column}.contact-details h2{font-size:44px}.contact-row{grid-template-columns:42px 1fr auto}.contact-row strong{font-size:13px}.footer-top{gap:42px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:24px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:15px;padding-bottom:60px}.footer-bottom div{flex-wrap:wrap}.mobile-call{display:flex;position:fixed;z-index:40;left:10px;right:10px;bottom:10px;min-height:51px;border-radius:999px;background:var(--cream);color:#111;align-items:center;justify-content:space-between;padding:0 18px;font-size:11px;font-weight:700;box-shadow:0 14px 40px rgba(0,0,0,.45)}.mobile-call span{font-size:17px}.legal-hero{padding:140px 0 55px}.legal-hero h1{font-size:50px}}


/* =========================================================
   CIBO & FIESTA — V2 MOBILE / POLISH PASS
   Palette: noir profond · crème · or champagne · tricolore italien
   ========================================================= */
:root{
  --ink:#080809;
  --ink2:#111113;
  --cream:#f5efe5;
  --cream2:#ddd3c3;
  --gold:#c7a25b;
  --gold2:#ecd8a5;
  --green:#008c45;
  --red:#cd212a;
  --serif:"Iowan Old Style",Baskerville,"Palatino Linotype","Book Antiqua",Georgia,"Times New Roman",serif;
  --sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
html{scroll-padding-top:100px;background:var(--ink);text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);min-width:0}
.hero h1,.section h2,.legal-hero h1,.manifesto-copy p,.service-card h3,.experience-intro h2,.steps h3,.local-copy h2,.local-copy p,.tone-card h3,.faq-item summary,.cta-panel h2,.contact-details h2,.form-head span,.map-word,.local-badge{font-family:var(--serif)}
img,svg{max-width:100%}
.hero-grid>*,.split>*,.local-grid>*,.faq-grid>*,.contact-grid>*,.experience-card>*,.services-grid>*,.tone-grid>*{min-width:0}
.hero-copy{min-width:0;width:100%}
.pizza-art{width:min(100%,520px);max-width:100%}
.brand{position:relative}
.brand::after{content:"";display:block;width:52px;height:2px;margin:8px 0 0 3px;border-radius:99px;background:linear-gradient(90deg,var(--green) 0 33.333%,var(--cream) 33.333% 66.666%,var(--red) 66.666% 100%);box-shadow:0 0 14px rgba(199,162,91,.08)}
.brand-sub{margin-top:6px}
.site-header.scrolled{background:rgba(8,8,9,.88);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.menu-toggle{cursor:pointer}
.menu-toggle:focus-visible,.button:focus-visible,.mini-cta:focus-visible,.mobile-menu a:focus-visible,.contact-row:focus-visible,.text-link:focus-visible,.mobile-call:focus-visible,.faq-item summary:focus-visible{outline:2px solid var(--gold2);outline-offset:4px}
.button,.mini-cta,.contact-row,.service-card,.text-link{-webkit-tap-highlight-color:transparent}
.service-card{position:relative;overflow:hidden}
.service-card::before,.tone-card::before{content:"";position:absolute;left:28px;right:28px;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--green) 18% 31%,var(--cream) 31% 47%,var(--red) 47% 60%,transparent 82%);opacity:.55}
.tone-card{position:relative;overflow:hidden}
.cta-panel{position:relative;overflow:hidden;background:linear-gradient(135deg,#ead6a2,#c9a55f)}
.cta-panel::before{content:"";position:absolute;top:0;left:0;width:118px;height:4px;background:linear-gradient(90deg,var(--green) 0 33.333%,#fff 33.333% 66.666%,var(--red) 66.666%)}
.event-form input,.event-form select,.event-form textarea{caret-color:var(--gold2)}
.contact-row strong,.footer-links a{overflow-wrap:anywhere}
.mobile-menu a.active{color:var(--gold2)}
.mobile-menu a.active::after{content:"";display:block;width:26px;height:1px;background:var(--gold);margin-top:7px}

@media(max-width:980px){
  .hero-grid{min-width:0}
  .hero-copy,.hero-stage{min-width:0;max-width:100%}
  .pizza-art{width:min(100%,440px)}
  .mobile-menu{
    display:flex;
    position:fixed;
    top:90px;
    left:17px;
    right:17px;
    z-index:60;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-10px) scale(.985);
    transition:opacity .22s ease,transform .22s ease,visibility .22s;
    background:linear-gradient(180deg,rgba(17,17,19,.98),rgba(10,10,11,.98));
    border:1px solid rgba(255,255,255,.10);
    border-radius:22px;
    padding:18px;
    flex-direction:column;
    gap:4px;
    box-shadow:0 28px 80px rgba(0,0,0,.55);
    -webkit-backdrop-filter:blur(20px);
    backdrop-filter:blur(20px)
  }
  .mobile-menu::before{content:"";height:2px;border-radius:99px;margin:0 5px 12px;background:linear-gradient(90deg,var(--green) 0 33.333%,var(--cream) 33.333% 66.666%,var(--red) 66.666%)}
  .mobile-menu.open{display:flex;opacity:1;visibility:visible;pointer-events:auto;transform:none}
  .mobile-menu>a:not(.mini-cta){min-height:46px;display:flex;align-items:center;padding:10px 8px}
  body.menu-open{overflow:hidden}
  body.menu-open .site-header{background:rgba(8,8,9,.96);border-bottom-color:rgba(255,255,255,.08)}
}

@media(max-width:640px){
  :root{--shell:calc(100vw - 32px);--radius:22px}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
  .nav-shell{height:72px}
  .brand-main{font-size:22px;letter-spacing:-.9px}
  .brand-sub{font-size:6.5px;letter-spacing:4.1px}
  .brand::after{width:44px;height:2px;margin-top:7px}
  .menu-toggle{width:46px;height:46px;margin-right:-7px;align-items:center}
  .menu-toggle span{width:22px}
  .mobile-menu{top:72px;left:10px;right:10px;max-height:calc(100dvh - 90px);overflow:auto;padding:16px;border-radius:20px}
  .mobile-menu .mini-cta{min-height:50px}

  .hero{min-height:auto;padding:106px 0 40px;overflow:hidden}
  .hero-grid{grid-template-columns:minmax(0,1fr);gap:10px;width:var(--shell)}
  .hero-copy{max-width:100%;width:100%}
  .eyebrow{font-size:9px;letter-spacing:2.35px;line-height:1.5;margin-bottom:18px;overflow-wrap:anywhere}
  .hero h1{font-size:clamp(43px,13.5vw,54px);line-height:.96;letter-spacing:-.045em;max-width:100%;overflow-wrap:normal}
  .hero-lead{font-size:15px;line-height:1.7;margin-top:24px;color:#bdb6ad}
  .hero-actions{gap:10px;margin-top:26px}
  .button{min-height:52px;padding:0 18px;font-size:11.5px}
  .launch-note{font-size:10px;line-height:1.5;margin-top:23px;align-items:flex-start}
  .launch-note span{flex:0 0 30px;margin-top:7px}
  .hero-stage{min-height:330px;margin-top:24px;display:grid;place-items:center;overflow:visible}
  .pizza-art{width:min(100%,320px);max-width:320px}
  .stage-aura{width:270px;height:270px}
  .orbit-label{font-size:5.8px;letter-spacing:1.45px;padding:7px 8px;white-space:nowrap}
  .orbit-label-a{top:15%;right:0}
  .orbit-label-b{bottom:15%;left:0}
  .trust-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:0;font-size:6.5px;letter-spacing:1.25px;color:#9a938a}
  .trust-strip i{display:none}
  .trust-strip span{min-width:0;text-align:center;border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:10px 7px;background:rgba(255,255,255,.018)}
  .trust-strip span:first-child{grid-column:1/-1;border-color:rgba(199,162,91,.25);color:var(--gold2)}

  .section{padding:76px 0}
  .section-heading h2,.local-copy h2{font-size:clamp(40px,11.5vw,46px);line-height:1.02;letter-spacing:-.045em}
  .manifesto-copy p{font-size:17px;line-height:1.62}
  .text-link{font-size:11px;line-height:1.45}

  .services-grid{gap:10px}
  .service-card{padding:22px;min-height:255px}
  .service-card::before{left:22px;right:22px}
  .service-card h3{font-size:30px;line-height:1.05;margin:44px 0 12px}
  .service-card p{font-size:12.5px;line-height:1.62}
  .service-card b{margin-top:26px}

  .experience{padding-top:0}
  .experience-card{padding:28px 22px 26px;border-radius:25px;min-height:0}
  .experience-card::after{width:300px;height:300px;right:-160px;top:-150px;box-shadow:0 0 0 45px rgba(202,166,91,.025),0 0 0 90px rgba(202,166,91,.018)}
  .experience-intro h2{font-size:clamp(39px,11vw,45px);line-height:1.01;letter-spacing:-.04em}
  .steps{grid-template-columns:1fr;gap:0;margin-top:22px}
  .steps article{min-height:0;padding:18px 0 18px 16px}
  .steps h3{margin:18px 0 7px;font-size:21px}

  .local-grid{gap:34px}
  .local-art{height:300px;border-radius:24px;min-width:0;overflow:hidden}
  .map-word{font-size:clamp(34px,10vw,42px);letter-spacing:-2px;max-width:90%;text-align:center}
  .local-badge{left:20px;bottom:20px;width:78px;height:78px;font-size:24px}
  .local-copy p{font-size:16px;line-height:1.62}

  .tone-grid{gap:10px}
  .tone-card{padding:22px;min-height:235px;border-radius:22px}
  .tone-card::before{left:22px;right:22px}
  .tone-card h3{font-size:28px;margin:48px 0 12px}

  .faq-grid{gap:30px}
  .faq-item summary{min-height:62px;padding:19px 0;font-size:17px;line-height:1.25;gap:20px}
  .faq-item summary b{flex:0 0 auto}
  .faq-item p{margin:0 0 22px;font-size:13px;line-height:1.7}

  .cta-panel{padding:34px 22px;border-radius:24px;gap:30px}
  .cta-panel h2{font-size:clamp(39px,11vw,44px);line-height:1.01;letter-spacing:-.04em}
  .cta-actions{width:100%}

  .contact-grid{gap:42px}
  .contact-details h2{font-size:clamp(40px,11.5vw,46px);line-height:1.02;letter-spacing:-.04em}
  .contact-row{grid-template-columns:42px minmax(0,1fr) auto;gap:12px;padding:16px 0}
  .contact-row>span{width:40px;height:40px}
  .contact-row strong{font-size:13px;line-height:1.35;overflow-wrap:anywhere}
  .event-form{padding:22px;border-radius:24px}
  .event-form input,.event-form select,.event-form textarea{font-size:16px;min-height:48px;padding:12px 13px}
  .event-form textarea{min-height:120px}
  .form-head span{font-size:24px}
  .form-status{font-size:10px}

  .site-footer{padding:58px 0 calc(34px + env(safe-area-inset-bottom,0px))}
  .footer-top{gap:38px}
  .footer-links{grid-template-columns:1fr 1fr;gap:26px}
  .footer-links a{font-size:11.5px;line-height:1.45}
  .footer-bottom{margin-top:44px;padding-bottom:0;gap:14px}
  .footer-bottom div{gap:14px}

  .mobile-call{
    display:flex;
    position:fixed;
    z-index:45;
    left:12px;
    right:12px;
    bottom:calc(10px + env(safe-area-inset-bottom,0px));
    min-height:54px;
    border-radius:999px;
    background:var(--cream);
    color:#111;
    align-items:center;
    justify-content:space-between;
    padding:0 19px;
    font-size:11px;
    font-weight:800;
    box-shadow:0 18px 50px rgba(0,0,0,.5),0 0 0 1px rgba(199,162,91,.22);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(calc(100% + 22px));
    transition:opacity .25s ease,transform .25s ease,visibility .25s
  }
  body.mobile-cta-visible .mobile-call{opacity:1;visibility:visible;pointer-events:auto;transform:none}
  body.menu-open .mobile-call{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(calc(100% + 22px))}
  .mobile-call::before{content:"";width:28px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--green) 0 33.333%,#fff 33.333% 66.666%,var(--red) 66.666%);margin-right:10px}
  .mobile-call span{font-size:17px;margin-left:auto}

  .legal-hero{padding:124px 0 52px}
  .legal-hero h1{font-size:clamp(44px,13vw,54px);line-height:.98;letter-spacing:-.045em}
  .legal-copy p{overflow-wrap:anywhere}
}

@media(max-width:360px){
  :root{--shell:calc(100vw - 28px)}
  .hero h1{font-size:clamp(40px,13vw,46px)}
  .eyebrow{font-size:8.5px;letter-spacing:2px}
  .hero-lead{font-size:14px}
  .hero-stage{min-height:300px}
  .pizza-art{width:min(100%,292px)}
  .orbit-label-a{right:-2px}
  .orbit-label-b{left:-2px}
  .section{padding:68px 0}
  .footer-links{grid-template-columns:1fr}
  .contact-row{grid-template-columns:40px minmax(0,1fr) auto}
  .contact-row b{font-size:17px}
  .cta-panel{padding:30px 19px}
  .event-form{padding:19px}
}

@supports(height:100dvh){
  @media(max-width:980px){.mobile-menu{max-height:calc(100dvh - 100px)}}
}

/* --- Cibo & Fiesta V3: logo officiel + conversion sur mesure --- */
.brand{min-width:0;line-height:normal;flex:0 0 auto}
.brand::after{display:none!important}
.brand-logo{display:block;width:182px;height:auto;max-height:72px;object-fit:contain;object-position:left center;filter:drop-shadow(0 8px 22px rgba(0,0,0,.22))}
.site-footer .brand-logo{width:228px;max-height:none}
.custom-offer{background:#0a0a0b;padding-top:118px}
.custom-offer .section-heading.compact{max-width:780px}
.custom-offer .tone-card{background:radial-gradient(circle at 80% 10%,rgba(202,166,91,.08),transparent 26%),linear-gradient(160deg,rgba(255,255,255,.035),transparent)}
.custom-offer-action{display:flex;justify-content:flex-start;margin-top:28px}
.custom-offer-action .button{min-width:290px}
.launch-note{color:#aaa39a}
.launch-note span{background:linear-gradient(90deg,var(--green),var(--cream),var(--red));width:42px;height:2px;border-radius:99px}
.event-form label textarea[name="preferences"]{min-height:105px}
@media(max-width:980px){
  .brand-logo{width:172px}
  .site-footer .brand-logo{width:215px}
}
@media(max-width:640px){
  .brand-logo{width:148px;max-height:59px}
  .site-footer .brand-logo{width:198px;max-height:none}
  .custom-offer{padding-top:76px}
  .custom-offer-action{margin-top:18px}
  .custom-offer-action .button{min-width:0;width:100%}
}
@media(max-width:360px){.brand-logo{width:138px}}
