/* === Base === */
:root{
  --bg:#0b0e12;
  --card:#11151b;
  --text:#e8edf3;
  --muted:#a9b4c3;
  --accent:#18e2c3;
  --accent-2:#73ffd8;
  --grid:rgba(115,255,216,.08);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  color:var(--text);
  background:var(--bg);
  font:16px/1.6 system-ui, -apple-system, Segoe UI, Roboto, Inter, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji", "Segoe UI Symbol";
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

.container{width:min(1100px, 92vw); margin-inline:auto}

.site-header{position:sticky; top:0; z-index:50; background:rgba(7,10,15,.8); backdrop-filter: blur(6px); border-bottom:1px solid rgba(255,255,255,.06)}
.nav{display:flex; align-items:center; justify-content:space-between; padding:.9rem 0}

.logo-wrap{display:flex; align-items:center; gap:.6rem; text-decoration:none; color:var(--text)}
.logo{display:grid; place-items:center; width:38px; height:38px; border:1px solid var(--grid); border-radius:8px; color:var(--accent)}
.wordmark{letter-spacing:.06em; font-weight:800; white-space:nowrap}

.topnav a{color:var(--text); opacity:.9; text-decoration:none; margin-left:1rem}
.topnav a:hover{color:white}

.hero{position:relative; padding:clamp(3rem, 8vw, 6rem) 0}
.grid-bg{position:absolute; inset:0; background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px); background-size:32px 32px, 32px 32px; mask-image:linear-gradient(to bottom, rgba(0,0,0,.7), rgba(0,0,0,1) 40%, rgba(0,0,0,.6)); opacity:.7; pointer-events:none}

.hero-title{font-size:clamp(1.8rem, 4.2vw, 3rem); margin:0 0 .5rem 0}
.hero-sub{margin:0 0 1.1rem 0; color:var(--muted)}

.button{display:inline-flex; align-items:center; justify-content:center; padding:.7rem 1rem; border-radius:999px; text-decoration:none; font-weight:700; border:1px solid rgba(255,255,255,.16)}
.button.primary{background:linear-gradient(90deg, var(--accent), var(--accent-2)); color:#032c2b; border-color:transparent}
.button.ghost{color:var(--text)}
.cta-row{display:flex; gap:.8rem; flex-wrap:wrap}

.section{padding:clamp(2rem, 6vw, 3.5rem) 0}
.section--about{background:linear-gradient(180deg, rgba(18,24,30,.5), transparent)}

.grid-3{display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:840px){.grid-3{grid-template-columns:1fr}}

.card{background:var(--card); border:1px solid rgba(255,255,255,.06); border-radius:14px; padding:1rem}
.card h3{margin-top:0}

.section--contact form{display:grid; gap:1rem; margin-top:.75rem}
.form-grid{display:grid; gap:.8rem; grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:700px){.form-grid{grid-template-columns:1fr}}

label{display:grid; gap:.35rem}
input, textarea{width:100%; padding:.7rem .8rem; border-radius:10px; background:#0e1318; border:1px solid rgba(255,255,255,.12); color:var(--text)}
input:focus, textarea:focus{outline:2px solid var(--accent); border-color:transparent}

.hp{position:absolute; left:-9999px}
.small{font-size:.95rem}
.muted{color:var(--muted)}

.site-footer{border-top:1px solid rgba(255,255,255,.06); padding:1rem 0; color:var(--muted)}


.site-footer a, .muted a{color:var(--accent); text-decoration:none}
.site-footer a:hover, .muted a:hover{text-decoration:underline}



/* === Pricing Section (Culinary Blueprint) === */
:root{
  --cb-bg:#0b1220;
  --cb-card:#0f1a2e;
  --cb-line:#1f355d;
  --cb-accent:#3ba9ff;
  --cb-text:#e9f1ff;
  --cb-muted:#b5c7e6;
}
.cb-section{position:relative; padding:72px 16px; background:var(--cb-bg); color:var(--cb-text); overflow:hidden}
.cb-section::before{
  content:""; position:absolute; inset:-10% -10% -10% -10%;
  background:
    linear-gradient(0deg, transparent 24px, var(--cb-line) 25px, transparent 26px),
    linear-gradient(90deg, transparent 24px, var(--cb-line) 25px, transparent 26px);
  background-size:48px 48px; opacity:.12; pointer-events:none;
}
.cb-container{max-width:1200px; margin:0 auto; position:relative; z-index:1}
.cb-header{text-align:center; margin-bottom:32px}
.cb-header h2{font-size:clamp(28px,4vw,40px); letter-spacing:.5px; margin:0}
.cb-sub{color:var(--cb-muted); margin-top:8px}
.cb-grid{display:grid; grid-template-columns:repeat(12,1fr); gap:16px}
.cb-card{
  grid-column:span 12; background:var(--cb-card); border:1px solid rgba(255,255,255,.06);
  border-radius:16px; padding:20px; position:relative; box-shadow:0 10px 25px rgba(0,0,0,.25)
}
.cb-card h3{margin:0 0 12px; font-size:clamp(20px,2.8vw,24px)}
.cb-list{list-style:none; padding:0; margin:0}
.cb-list li{padding:10px 0; border-top:1px dashed rgba(255,255,255,.12); line-height:1.5}
.cb-list li:first-child{border-top:none}
.cb-price{color:var(--cb-accent); font-weight:700}
.cb-note{color:var(--cb-muted); font-size:.95rem}
.cb-accent{border-color:rgba(59,169,255,.35); box-shadow:0 14px 30px rgba(59,169,255,.2)}
.cb-badge{
  position:absolute; top:14px; right:14px; background:var(--cb-accent); color:#00172a; font-weight:800;
  padding:6px 10px; border-radius:999px; font-size:.8rem; letter-spacing:.4px
}
.cb-bundle-price{font-size:clamp(22px,3.5vw,28px); margin:4px 0 8px; color:var(--cb-accent); font-weight:800}
.cb-footer{text-align:center; margin-top:24px}
.cb-fine{color:var(--cb-muted); margin-bottom:16px}
.cb-btn{
  display:inline-block; padding:12px 20px; border-radius:12px; background:var(--cb-accent); color:#00172a;
  text-decoration:none; font-weight:800; transition:transform .08s ease, box-shadow .2s ease
}
.cb-btn:hover{transform:translateY(-2px); box-shadow:0 10px 22px rgba(59,169,255,.35)}
@media (min-width:720px){ .cb-card{grid-column:span 6} }
@media (min-width:1024px){ .cb-card{grid-column:span 4} .cb-card.cb-accent{grid-column:span 4} }

