/*
Theme Name: Atelier Viora Elegance
Theme URI: https://atelier-viora.nl
Author: Atelier Viora
Description: Luxe, modern en elegant WordPress template voor een pretecho atelier. Logo centraal, subtiele typografie, informatieblokken en pakketten.
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: atelier-viora-elegance
*/

:root{
  --av-bg:#fbf3ec;
  --av-bg-soft:#fff9f5;
  --av-ink:#5d5047;
  --av-muted:#8d7d71;
  --av-gold:#bd8b3e;
  --av-gold-soft:#e6c99d;
  --av-line:rgba(189,139,62,.28);
  --av-white:#ffffff;
  --av-shadow:0 24px 80px rgba(93,80,71,.11);
  --av-radius:30px;
  --av-serif:'Cormorant Garamond', Georgia, serif;
  --av-sans:'Montserrat', Arial, sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.9), transparent 38%),
    linear-gradient(180deg,var(--av-bg),#fffaf6 58%,#f8eee6);
  color:var(--av-ink);
  font-family:var(--av-sans);
  font-size:13px;
  line-height:1.9;
  letter-spacing:.04em;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}

.av-topbar{
  position:sticky;top:0;z-index:50;
  backdrop-filter:blur(18px);
  background:rgba(251,243,236,.72);
  border-bottom:1px solid var(--av-line);
}
.av-nav{
  max-width:1180px;margin:0 auto;padding:16px 26px;
  display:flex;align-items:center;justify-content:center;gap:34px;
  font-size:10px;text-transform:uppercase;letter-spacing:.24em;color:var(--av-muted);
}
.av-nav a{transition:.25s ease}
.av-nav a:hover{color:var(--av-gold)}

.av-hero{min-height:92vh;display:grid;place-items:center;padding:72px 22px 82px;position:relative;overflow:hidden}
.av-hero:before,.av-hero:after{content:"";position:absolute;border:1px solid var(--av-line);border-radius:999px;pointer-events:none}
.av-hero:before{width:560px;height:560px;top:11%;left:50%;transform:translateX(-50%);opacity:.45}
.av-hero:after{width:760px;height:760px;top:2%;left:50%;transform:translateX(-50%);opacity:.18}
.av-hero-inner{position:relative;z-index:2;text-align:center;max-width:880px;margin:0 auto}
.av-logo-frame{
  width:min(420px,78vw);
  margin:0 auto 28px;
  padding:18px;
  filter:drop-shadow(0 24px 48px rgba(93,80,71,.1));
}
.av-kicker{font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:var(--av-gold);margin:0 0 14px}
.av-title{font-family:var(--av-serif);font-weight:400;font-size:clamp(36px,8vw,86px);line-height:.92;letter-spacing:.16em;margin:0 0 22px;text-transform:uppercase;color:#5a4c42}
.av-subtitle{max-width:600px;margin:0 auto 34px;color:var(--av-muted);font-size:12px;letter-spacing:.08em}
.av-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.av-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:999px;border:1px solid var(--av-gold);font-size:10px;text-transform:uppercase;letter-spacing:.22em;transition:.25s ease}
.av-button.primary{background:var(--av-gold);color:#fffaf5;box-shadow:0 14px 34px rgba(189,139,62,.24)}
.av-button:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(93,80,71,.13)}

.av-section{padding:92px 22px}
.av-container{max-width:1120px;margin:0 auto}
.av-section-head{text-align:center;max-width:700px;margin:0 auto 48px}
.av-label{font-size:10px;text-transform:uppercase;letter-spacing:.32em;color:var(--av-gold);margin-bottom:12px}
.av-heading{font-family:var(--av-serif);font-weight:400;font-size:clamp(30px,4vw,56px);letter-spacing:.08em;line-height:1.05;margin:0 0 18px;color:#5a4c42}
.av-copy{color:var(--av-muted);font-size:12px;margin:0}

.av-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.av-card{background:rgba(255,255,255,.54);border:1px solid var(--av-line);border-radius:var(--av-radius);padding:34px 30px;box-shadow:var(--av-shadow);position:relative;overflow:hidden}
.av-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.78),transparent 48%);pointer-events:none}
.av-card>*{position:relative;z-index:2}
.av-icon{font-family:var(--av-serif);font-size:38px;color:var(--av-gold);line-height:1;margin-bottom:14px}
.av-card h3{font-family:var(--av-serif);font-size:28px;font-weight:400;letter-spacing:.05em;margin:0 0 10px;color:#5a4c42}
.av-card p{margin:0;color:var(--av-muted);font-size:12px}

.av-packages{background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(248,238,230,.72));border-top:1px solid var(--av-line);border-bottom:1px solid var(--av-line)}
.av-package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.av-package{background:rgba(255,255,255,.72);border:1px solid var(--av-line);border-radius:34px;padding:34px;box-shadow:var(--av-shadow);display:flex;flex-direction:column;min-height:440px}
.av-package.featured{transform:translateY(-12px);border-color:rgba(189,139,62,.58);background:#fffaf6}
.av-package-tag{font-size:9px;text-transform:uppercase;letter-spacing:.27em;color:var(--av-gold);margin-bottom:12px}
.av-package h3{font-family:var(--av-serif);font-size:34px;font-weight:400;letter-spacing:.04em;margin:0 0 8px;color:#5a4c42}
.av-price{font-family:var(--av-serif);font-size:42px;line-height:1;color:#6a5b50;margin:16px 0 22px}
.av-price small{font-family:var(--av-sans);font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:var(--av-muted)}
.av-list{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:11px;color:var(--av-muted);font-size:12px}
.av-list li{padding-left:20px;position:relative}.av-list li:before{content:"•";position:absolute;left:0;color:var(--av-gold)}
.av-package .av-button{margin-top:auto;width:100%}

.av-split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}
.av-panel{background:rgba(255,255,255,.48);border:1px solid var(--av-line);border-radius:38px;padding:50px;box-shadow:var(--av-shadow)}
.av-panel h2{font-family:var(--av-serif);font-size:48px;font-weight:400;line-height:1.02;letter-spacing:.06em;margin:0 0 20px}.av-panel p{color:var(--av-muted);font-size:12px}
.av-mini-logo{width:210px;margin:0 auto;opacity:.88}

.av-footer{padding:56px 22px;text-align:center;background:#5a4c42;color:#fff7ef}
.av-footer img{width:120px;margin:0 auto 20px;filter:brightness(1.18)}
.av-footer p{font-size:10px;text-transform:uppercase;letter-spacing:.25em;color:rgba(255,247,239,.76);margin:8px 0}

@media(max-width:900px){.av-info-grid,.av-package-grid,.av-split{grid-template-columns:1fr}.av-package.featured{transform:none}.av-nav{gap:16px;font-size:9px;overflow:auto;justify-content:flex-start}.av-section{padding:70px 20px}.av-panel{padding:34px}}
