/*
Theme Name: Modulab Ristorante Essential
Theme URI: https://modulabweb.com
Author: Modulab
Description: Sito ristorante con contenuti personalizzabili, layout essential, pronto per il collaudo WordPress.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 8.0
Text Domain: modulab-rest
License: GPL-2.0-or-later
*/
/* Modulab Restaurant Theme 1.0 — CSS responsive e senza dipendenze */
:root{--bg:#f7f4ec;--ink:#26231e;--muted:#6b6963;--accent:#c84a32;--border:#d9d5ca;--paper:#fff}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
img{max-width:100%;display:block;object-fit:cover}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.wrap{width:min(1240px,calc(100% - 64px));margin-inline:auto}
.skip{position:absolute;top:-100px;left:10px;background:#fff;padding:10px;z-index:999}
.skip:focus{top:10px}.site-header{position:relative;z-index:20}
.nav{display:flex;min-height:95px;align-items:center;justify-content:space-between;gap:24px}
.brand{font-size:22px;font-weight:800;letter-spacing:-.05em;line-height:1.1;max-width:280px}
.brand img{max-height:54px;width:auto}.navlinks{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}
.menu-list{display:flex;align-items:center;gap:32px;padding:0;list-style:none}
.nav-cta{border:1px solid var(--ink);padding:12px 17px;font-size:12px;font-weight:700;white-space:nowrap}
.nav-cta span{margin-left:13px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:var(--accent);color:#fff;padding:15px 22px;font-size:13px;font-weight:750;line-height:1.4;border:1px solid var(--accent);transition:transform .22s ease,background .22s ease}
.button:hover{transform:translateY(-2px);filter:brightness(.94)}
.eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.17em;line-height:1.55;text-transform:uppercase;color:var(--accent)}
h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;letter-spacing:-.05em}p{color:var(--muted)}
.text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:750;border-bottom:1px solid currentColor;padding-bottom:6px}
.site-footer{background:#211e1b;color:#fff;padding:85px 0 26px}
.footer-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:90px;padding-bottom:80px}
.site-footer .eyebrow{color:#e1bb7d}.site-footer h2{font-size:clamp(32px,4vw,60px);margin:18px 0}.site-footer p{color:#c6c3be}
.footer-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.footer-meta b{font-size:10px;letter-spacing:.16em}.footer-meta p{font-size:13px;margin-top:12px}
.footer-meta a:hover{text-decoration:underline}.foot-bottom{border-top:1px solid #48433d;padding-top:20px;display:flex;justify-content:space-between;color:#bbb4aa;font-size:12px}
.inner-page{padding:100px 0 160px;min-height:60vh}.inner-page h1{font-size:clamp(44px,7vw,92px)}.wp-content{max-width:850px}.wp-content img{height:auto}
.post-card{border-bottom:1px solid var(--border);padding:24px 0}.post-card h2{font-size:24px}
@media(max-width:800px){.wrap{width:calc(100% - 36px)}.nav{min-height:74px;flex-wrap:wrap;padding:15px 0}.brand{font-size:19px}.navlinks{order:3;width:100%;justify-content:center;gap:24px;font-size:12px}.navlinks .menu-list{justify-content:center;gap:20px;flex-wrap:wrap}.nav-cta{padding:9px 11px;font-size:11px}.nav-cta span{display:none}.footer-grid{grid-template-columns:1fr;gap:40px;padding-bottom:50px}.footer-meta{gap:18px}.site-footer{padding-top:60px}}
@media(max-width:520px){.footer-meta{grid-template-columns:1fr}.foot-bottom{gap:15px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

:root{--bg:#f9f5ec;--ink:#25251f;--muted:#635f58;--accent:#bb4c32}
.site-header{background:var(--bg);border-bottom:1px solid var(--border)}
.hero{padding-top:72px;padding-bottom:88px;display:grid;grid-template-columns:.95fr 1.05fr;gap:72px;align-items:stretch}
.hero-copy{padding:35px 0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(56px,6.1vw,100px);letter-spacing:-.065em;max-width:610px;margin:21px 0 24px}
.hero .lead{font-size:19px;max-width:490px;line-height:1.75}
.hero-actions{display:flex;align-items:center;gap:29px;margin-top:20px;flex-wrap:wrap}
.hero-foot{margin-top:60px;display:flex;gap:15px;align-items:center;font-size:12px;font-weight:700;color:#69665e}
.star{font-size:26px;color:var(--accent)}.hero-photo{min-height:610px;position:relative}
.hero-photo img{width:100%;height:100%;border-radius:210px 210px 10px 10px}
.photo-note{position:absolute;right:-16px;bottom:38px;background:#fff;padding:21px 24px;font-size:13px;line-height:1.55;font-weight:700;box-shadow:0 12px 55px #34291c25}
.photo-note span{margin-left:20px;color:var(--accent)}
.values{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding-top:33px;padding-bottom:36px;gap:30px}
.value{position:relative;padding:4px 18px 0 0}.value:not(:last-child){border-right:1px solid var(--border)}
.value-n{font-size:12px;color:var(--accent);font-weight:800}.value h2{font-size:21px;margin:15px 0 11px}.value p{font-size:13px;max-width:300px;margin:0}
.story{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:10%;padding-top:115px;padding-bottom:115px}
.story-photo img{width:100%;height:450px;border-radius:8px}.story h2,.menu-head h2{font:400 clamp(42px,5vw,73px)/1.1 Georgia,serif;letter-spacing:-.055em;margin:18px 0 26px}
.story-content p{max-width:440px;font-size:18px;line-height:1.85}.story-content .text-link{margin-top:25px}
.menu-section{background:#eae4d7;padding:108px 0 115px}.menu-head{text-align:center;margin:0 auto 55px;max-width:620px}
.menu-head p{font-size:17px}.menu-items{max-width:940px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:0 45px}
.dish{display:flex;justify-content:space-between;gap:15px;padding:28px 0;border-top:1px solid #beb7aa}
.dish h3{font-size:19px;margin:0 0 9px}.dish p{font-size:13px;margin:0}.dish strong{font-size:15px;white-space:nowrap}
.menu-cta{text-align:center;margin-top:48px}
.end-image{padding:115px 0;display:grid;grid-template-columns:1.4fr .6fr;align-items:center;gap:70px}
.end-image img{width:100%;height:330px;border-radius:220px 220px 18px 18px}.end-image h2{font:400 clamp(36px,4vw,62px)/1.13 Georgia,serif;letter-spacing:-.05em;margin-top:18px}
@media(max-width:1000px){.hero{gap:30px}.hero-photo{min-height:510px}.hero h1{font-size:64px}.end-image{gap:30px}}
@media(max-width:740px){.hero{display:flex;flex-direction:column;padding:36px 0 60px}.hero-copy{padding:0}.hero h1{font-size:clamp(47px,11vw,72px);margin:18px 0}.hero-foot{margin-top:25px}.hero-photo{min-height:0;height:360px}.hero-photo img{border-radius:160px 160px 8px 8px}.photo-note{right:0;bottom:12px}.values{grid-template-columns:1fr;gap:20px}.value:not(:last-child){border:0;border-bottom:1px solid var(--border);padding-bottom:20px}.story,.end-image{grid-template-columns:1fr;gap:35px;padding:68px 0}.story-photo img{height:300px}.menu-section{padding:75px 0}.menu-items{grid-template-columns:1fr}.end-image img{height:280px}}
