:root{
--dark:#0d0d0d;
--darker:#050505;
--footer:#050505;
--light-bg:#f7f2ec;
--body-text:#f8f4f0;
--ink:#1a1512;
--accent:#e60202;
--gold:#c9a227;
--max:1280px;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Montserrat',sans-serif;color:var(--ink);background:var(--light-bg);line-height:1.55;overflow-x:hidden;}
h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.15;}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 40px;}
ul{list-style:none;}
/* NAV */
.site-nav{position:fixed;top:16px;left:50%;transform:translateX(-50%);width:min(1100px,92%);z-index:100;
background:rgba(13,13,13,0.82);backdrop-filter:blur(8px);border-radius:999px;
display:flex;align-items:center;justify-content:space-between;padding:10px 14px 10px 22px;}
.nav-logo{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;letter-spacing:.5px;}
.nav-logo img{height:34px;width:auto;border-radius:6px;}
.nav-links{display:flex;gap:28px;}
.nav-links a{color:#f1ece6;font-size:14px;font-weight:500;opacity:.9;}
.nav-links a:hover{opacity:1;color:var(--accent);}
.nav-cta{background:var(--accent);color:#fff;font-size:14px;font-weight:600;padding:10px 22px;border-radius:999px;white-space:nowrap;}
@media (max-width:960px){.nav-links{display:none;}}
/* HERO */
.om-hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;}
.om-media-bg{position:absolute;inset:0;}
.om-media-bg img{width:100%;height:100%;object-fit:cover;}
.om-hero-shade{position:absolute;inset:0;background:linear-gradient(to right, rgba(8,8,8,0.90) 35%, rgba(8,8,8,0.35) 75%, rgba(8,8,8,0.15) 100%);}
.om-hero-inner{position:relative;z-index:2;max-width:var(--max);margin:0 auto;width:100%;padding:150px 40px 80px;
display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;}
.hero-eyebrow{display:inline-block;color:var(--gold);font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:18px;}
.om-hero-inner h1{color:#fff;font-size:clamp(32px,5vw,64px);margin-bottom:20px;}
.om-hero-inner h1 span{color:var(--accent);}
.hero-sub{color:#e9e2da;font-size:18px;max-width:520px;margin-bottom:34px;}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:15px 28px;border-radius:999px;font-weight:700;font-size:15px;}
.btn-primary{background:var(--accent);color:#fff;}
.btn-ghost{background:rgba(255,255,255,0.08);color:#fff;border:1.5px solid rgba(255,255,255,0.5);}
.hero-screening{background:rgba(13,13,13,0.55);border:1px solid rgba(255,255,255,0.15);border-radius:20px;padding:28px;color:#fff;backdrop-filter:blur(6px);}
.hero-screening h3{font-size:18px;margin-bottom:14px;color:var(--gold);}
.hero-screening p{font-size:14px;color:#e9e2da;margin-bottom:8px;}
@media (max-width:960px){.om-hero-inner{grid-template-columns:1fr;padding:130px 24px 60px;}.hero-screening{display:none;}}
/* MEDIA STRIP TICKER */
.om-media-strip{background:var(--darker);overflow:hidden;padding:16px 0;}
.ticker-track{display:flex;white-space:nowrap;animation:ticker 32s linear infinite;width:max-content;}
.om-media-strip:hover .ticker-track{animation-play-state:paused;}
.ticker-track span{color:#e9e2da;font-size:14px;font-weight:600;letter-spacing:1px;text-transform:uppercase;padding:0 22px;border-right:1px solid rgba(255,255,255,0.15);}
@keyframes ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}
/* SCENE SPLIT */
.om-scene-split{background:#fff;padding:100px 40px;}
.scene-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.scene-inner .label{color:var(--accent);font-weight:700;letter-spacing:2px;font-size:13px;text-transform:uppercase;margin-bottom:14px;display:block;}
.scene-inner h2{font-size:34px;margin-bottom:20px;}
.scene-inner p{color:#5a5048;margin-bottom:14px;font-size:16px;}
.scene-img{border-radius:20px;overflow:hidden;height:420px;}
.scene-img img{width:100%;height:100%;object-fit:cover;}
@media (max-width:960px){.scene-inner{grid-template-columns:1fr;}.om-scene-split{padding:70px 24px;}}
/* SEO CONTENT */
.om-seo-content{background:var(--light-bg);padding:100px 40px;}
.seo-inner{max-width:var(--max);margin:0 auto;}
.seo-cols{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-bottom:80px;}
.seo-cols .label{color:var(--accent);font-weight:700;letter-spacing:2px;font-size:12px;text-transform:uppercase;display:block;margin-bottom:14px;}
.seo-cols h2{font-size:30px;margin-bottom:18px;}
.seo-cols p{color:#5a5048;margin-bottom:14px;}
.seo-img-placeholder{border-radius:20px;height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#9c8f7e;}
.seo-img-placeholder svg{width:44px;height:44px;opacity:.6;}
.seo-tags-block{text-align:center;margin-bottom:80px;}
.seo-tags-block h3{font-size:22px;margin-bottom:26px;}
.seo-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;}
.seo-tag{border:1.5px solid #d8cdbd;border-radius:999px;padding:9px 20px;font-size:14px;font-weight:600;color:var(--ink);background:#fff;transition:.2s;}
.seo-tag:hover{background:var(--accent);border-color:var(--accent);color:#fff;}
.seo-map-block h3{font-size:22px;margin-bottom:8px;text-align:center;}
.seo-map-block .addr{text-align:center;color:#5a5048;margin-bottom:24px;}
.seo-map-wrap{position:relative;border-radius:20px;overflow:hidden;height:420px;box-shadow:0 20px 40px rgba(0,0,0,0.08);}
.seo-map-wrap iframe{width:100%;height:100%;border:0;}
.map-badge{position:absolute;top:20px;left:20px;background:#fff;padding:12px 20px;border-radius:14px;box-shadow:0 8px 20px rgba(0,0,0,0.15);z-index:10;font-weight:700;font-size:14px;}
.map-badge span{display:block;font-weight:500;font-size:12px;color:#5a5048;}
@media (max-width:960px){.seo-cols{grid-template-columns:1fr;gap:30px;}.om-seo-content{padding:70px 24px;}.seo-map-wrap{height:300px;}}
@media (max-width:560px){.seo-tags{gap:8px;}.seo-tag{font-size:12px;padding:7px 14px;}.seo-map-wrap{height:260px;}}
/* CHAPTERS */
.om-chapters{background:#fff;padding:100px 40px;}
.chapters-inner{max-width:var(--max);margin:0 auto;}
.chapters-inner > .head{text-align:center;margin-bottom:56px;}
.chapters-inner .head .label{color:var(--accent);font-weight:700;letter-spacing:2px;font-size:13px;text-transform:uppercase;}
.chapters-inner .head h2{font-size:32px;margin-top:10px;}
.chapters-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
.chapter-card{background:var(--light-bg);border-radius:20px;padding:36px 30px;}
.chapter-num{font-family:'Playfair Display',serif;font-size:40px;color:var(--accent);margin-bottom:14px;}
.chapter-card h3{font-family:'Montserrat',sans-serif;font-size:19px;margin-bottom:12px;}
.chapter-card p{color:#5a5048;font-size:14.5px;}
@media (max-width:960px){.chapters-grid{grid-template-columns:1fr;}.om-chapters{padding:70px 24px;}}
/* SERVICES */
.om-services{background:var(--light-bg);padding:100px 40px;}
.services-inner{max-width:var(--max);margin:0 auto;}
.services-inner > .head{text-align:center;margin-bottom:56px;}
.services-inner .head .label{color:var(--accent);font-weight:700;letter-spacing:2px;font-size:13px;text-transform:uppercase;}
.services-inner .head h2{font-size:32px;margin-top:10px;}
.pills-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;}
.service-card{background:#fff;border-radius:18px;padding:28px 20px;text-align:center;box-shadow:0 6px 20px rgba(0,0,0,0.05);}
.service-card .ic{width:44px;height:44px;margin:0 auto 16px;color:var(--accent);}
.service-card h4{font-size:15.5px;margin-bottom:8px;}
.service-card p{font-size:13px;color:#7a6f62;}
@media (max-width:960px){.pills-grid{grid-template-columns:repeat(2,1fr);}.om-services{padding:70px 24px;}}
/* CASES / RECENSIONI */
.om-cases{background:var(--dark);padding:100px 40px;}
.cases-inner{max-width:var(--max);margin:0 auto;}
.cases-inner > .head{text-align:center;margin-bottom:56px;}
.cases-inner .head .label{color:var(--gold);font-weight:700;letter-spacing:2px;font-size:13px;text-transform:uppercase;}
.cases-inner .head h2{color:#fff;font-size:32px;margin-top:10px;}
.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.case-card{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:20px;padding:32px 28px;}
.case-card .stars{color:var(--gold);margin-bottom:16px;font-size:16px;letter-spacing:2px;}
.case-card p{color:#e9e2da;font-size:14.5px;margin-bottom:18px;}
.case-card .who{color:#a89e91;font-size:13px;font-weight:600;}
@media (max-width:960px){.cases-grid{grid-template-columns:1fr;}.om-cases{padding:70px 24px;}}
/* CONTACT FINAL */
.om-contact-final{background:linear-gradient(135deg, var(--dark) 0%, #1a0505 100%);padding:100px 40px;}
.contact-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:center;}
.contact-inner h2{color:#fff;font-size:34px;margin-bottom:16px;}
.contact-inner p{color:#e9e2da;margin-bottom:26px;max-width:480px;}
.contact-side{background:rgba(255,255,255,0.06);border-radius:20px;padding:30px;color:#fff;}
.contact-side p{color:#e9e2da;font-size:14px;margin-bottom:10px;}
.contact-side strong{color:var(--gold);}
@media (max-width:960px){.contact-inner{grid-template-columns:1fr;}.om-contact-final{padding:70px 24px;}}
/* FOOTER */
.site-footer{background:var(--footer);color:#cfc7bd;padding:70px 40px 30px;}
.footer-top{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,0.08);}
.footer-brand h3{color:#fff;font-size:20px;margin-bottom:12px;}
.footer-brand p{font-size:13.5px;color:#9c9288;}
.site-footer h4{color:#fff;font-size:14px;margin-bottom:16px;letter-spacing:1px;text-transform:uppercase;}
.site-footer li{margin-bottom:10px;font-size:14px;}
.site-footer a:hover{color:var(--accent);}
.footer-bottom{margin:0 auto;padding-top:24px;font-size:12.5px;color:#8b8177;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}
@media (max-width:960px){.footer-top{grid-template-columns:1fr 1fr;}.footer-brand{grid-column:1/-1;}.site-footer{padding:50px 24px 24px;}}
/* FAB */
.fab-stack{position:fixed;right:22px;bottom:26px;display:flex;flex-direction:column;gap:14px;z-index:200;}
.fab{width:56px;height:56px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:24px;box-shadow:0 10px 24px rgba(0,0,0,0.3);color:#fff;}
.fab-phone{background:var(--accent);}
.fab-whatsapp{background:#25D366;}