/* GRELVONA — css/style.css */
:root{--bg:#F5F3EE;--soft:#EAE8E2;--ink:#1A1A16;--olive:#7A8A5A;--muted:#6A7A4A;--line:rgba(26,26,22,.12);--display:'Playfair Display',Georgia,serif;--body:'Source Sans 3',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.55}a{color:var(--olive);text-decoration:none}a:hover{text-decoration:underline}
.shell{width:min(1160px,calc(100% - 40px));margin:auto}
.topbar{background:var(--soft);color:var(--muted);text-align:center;font-size:14px;padding:9px 20px;border-bottom:1px solid var(--line)}
.site-header{border-bottom:1px solid var(--line);background:var(--bg)}
.nav-wrap{min-height:86px;display:flex;align-items:center;gap:24px}
.wordmark{font:700 34px var(--display);color:var(--ink);letter-spacing:-1px}
.wordmark.light{color:#fff}
.main-nav{display:flex;gap:18px;align-items:center;flex:1;justify-content:center;font-size:15px}
.phone{white-space:nowrap;color:var(--ink);font-weight:500}
.menu-toggle{display:none;background:none;border:0;font-size:24px}
.hero{padding:110px 0 100px;background:var(--ink);color:#fff}
.hero h1,.hero h2,.hero p{color:#fff}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center}
.hero h1{font:700 clamp(48px,7vw,86px)/1.02 var(--display);margin:18px 0}
.hero p{font-size:22px;max-width:650px}
.eyebrow{color:var(--olive);font-weight:500;letter-spacing:2px;text-transform:uppercase;font-size:13px}
.hero img{width:100%;height:460px;object-fit:cover;border-radius:3px}
body .hero h1,body .hero h2,body .hero h3,body .hero p,body .hero li{color:#fff}
.section{padding:88px 0}
.section h2{font:700 clamp(34px,5vw,58px)/1.08 var(--display);margin:0 0 22px}
.section h3{font:700 25px var(--display)}
.section p,.section li{color:var(--ink)}
.soft{background:var(--soft)}
.olive-band{background:var(--olive);color:#fff}
.olive-band h2,.olive-band h3,.olive-band p,.olive-band li{color:#fff}
.olive-band .kicker{color:#fff}
.olive-band .button{background:#fff;color:var(--olive)}
.intro{max-width:760px;margin-bottom:40px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.card{border:1px solid var(--line);padding:30px;background:rgba(255,255,255,.22)}
.card img{width:100%;height:220px;object-fit:cover;margin-bottom:20px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.split img{width:100%;height:390px;object-fit:cover}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.stat strong{display:block;font:700 48px var(--display);color:#fff}
.stat span{color:#fff}
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.timeline article{border-top:3px solid var(--olive);padding-top:18px}
.quote{font:700 27px/1.3 var(--display);border-left:4px solid var(--olive);padding:15px 25px;margin:25px 0}
.faq details{border-bottom:1px solid var(--line);padding:18px 0}
.faq summary{font-weight:500;cursor:pointer}
.table-wrap{overflow:auto;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.3)}th,td{text-align:left;padding:15px;border-bottom:1px solid var(--line)}th{font-weight:500;color:var(--muted)}
.article{max-width:860px;margin:auto}
.article h1{font:700 clamp(42px,6vw,72px)/1.08 var(--display)}
.article h2{margin-top:55px}
.article img{width:100%;height:330px;object-fit:cover;margin:25px 0}
.callout{padding:28px;background:var(--soft);border-left:5px solid var(--olive);margin:30px 0}
.site-footer{background:var(--ink);color:#fff;padding-top:70px}
.site-footer p,.site-footer h3,.site-footer a{color:#fff}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:35px;padding-bottom:55px}
.footer-grid a{display:block;margin:8px 0}
.footer-grid h3{font:700 20px var(--display)}
.footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,.18);padding:20px;color:#fff}
.cookie-banner{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);width:min(1000px,calc(100% - 30px));background:var(--bg);border:1px solid var(--line);padding:18px;z-index:5;box-shadow:0 8px 40px rgba(0,0,0,.16)}
.cookie-banner>div{display:flex;justify-content:space-between;align-items:center;gap:20px}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}
.cookie-actions button{border:1px solid var(--line);border-radius:30px;padding:9px 16px;background:transparent;color:var(--ink);cursor:pointer}
.cookie-actions button:first-child{background:var(--olive);color:#fff;border:0}
.map{height:390px}
.map iframe{width:100%;height:100%}
.button{display:inline-block;background:var(--olive);color:#fff;padding:12px 20px;border-radius:30px}
.kicker{color:var(--muted);font-weight:500}
.not-found{text-align:center;padding:140px 0}
.not-found h1{font:700 80px var(--display)}@media(max-width:850px){.main-nav{display:none}
.phone{margin-left:auto}
.menu-toggle{display:block}
.hero-grid,.split{grid-template-columns:1fr}
.grid-3,.grid-2{grid-template-columns:1fr 1fr}
.timeline{grid-template-columns:1fr 1fr}
.footer-grid{grid-template-columns:1fr 1fr}
.stats{grid-template-columns:1fr 1fr}
.hero{padding:70px 0}
.hero img{height:320px}}@media(max-width:560px){body{font-size:17px}
.shell{width:min(100% - 28px,1160px)}
.grid-3,.grid-2,.timeline,.footer-grid{grid-template-columns:1fr}
.nav-wrap{min-height:70px}
.wordmark{font-size:29px}
.phone{font-size:13px}
.hero h1{font-size:48px}
.section{padding:60px 0}
.cookie-banner>div{display:block}
.cookie-actions{margin-top:10px}
.article img{height:240px}}
