:root{color-scheme:light;--font-display:"Lexend",system-ui,sans-serif;--font-sans:"Lexend",system-ui,sans-serif;--ink:#12151c;--ink-muted:#4a5568;--paper:#f3f0ea;--paper-deep:#e4dfd4;--accent:#0f6b5c;--accent-hover:#0c564a;--accent-soft:#d7ebe6;--line:#cfc7b8;--hero-glow:#c8ddd6}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{margin:0;font-family:var(--font-sans);color:var(--ink);background:radial-gradient(1200px 600px at 80% -10%,var(--hero-glow),transparent 55%),linear-gradient(165deg,#f7f4ee 0,var(--paper) 45%,#ebe6db 100%);min-height:100vh;line-height:1.55}a{color:inherit}.site-header{display:flex;align-items:center;justify-content:space-between;padding:20px clamp(20px,4vw,48px);max-width:1200px;margin:0 auto}.brand{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.25rem);letter-spacing:-.02em}.brand,.header-cta{font-weight:600;text-decoration:none}.header-cta{font-size:.95rem;color:var(--accent)}.hero{position:relative;min-height:calc(100vh - 88px);display:grid;align-content:center;grid-gap:20px;gap:20px;padding:clamp(32px,8vh,72px) clamp(20px,4vw,48px) 64px;max-width:1200px;margin:0 auto;overflow:hidden}.hero:before{content:"";position:absolute;inset:8% -10% auto 35%;height:min(70vh,640px);background:linear-gradient(135deg,rgb(15 107 92/.18),transparent 60%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Crect fill='%230f6b5c' fill-opacity='0.06' width='80' height='80'/%3E%3Crect fill='%230f6b5c' fill-opacity='0.04' x='80' y='80' width='80' height='80'/%3E%3C/svg%3E");background-size:cover,48px 48px;border-radius:40% 60% 55% 45%;filter:blur(0);z-index:0;animation:drift 18s ease-in-out infinite alternate}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-2%,3%,0) scale(1.04)}}.hero>*{position:relative;z-index:1}.hero h1{margin:0;font-family:var(--font-display);font-size:clamp(2.6rem,7vw,4.75rem);line-height:1.05;letter-spacing:-.03em;max-width:12ch;animation:rise .9s ease-out both}.hero-lead{margin:0;max-width:36rem;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink-muted);animation:rise .9s ease-out .12s both}.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;animation:rise .9s ease-out .22s both}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-weight:600;font-size:1rem;text-decoration:none;border:1px solid transparent;transition:background .2s ease,color .2s ease,border-color .2s ease}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn-ghost:hover{border-color:var(--ink)}.section{padding:72px clamp(20px,4vw,48px);max-width:1200px;margin:0 auto;border-top:1px solid var(--line)}.section h2{margin:0 0 12px;font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,2.4rem);letter-spacing:-.02em}.section>p{margin:0 0 28px;max-width:36rem;color:var(--ink-muted)}.steps{display:grid;grid-gap:18px;gap:18px;counter-reset:step}.steps li{list-style:none;display:grid;grid-template-columns:auto 1fr;grid-gap:14px;gap:14px;align-items:start}.steps li:before{counter-increment:step;content:counter(step);width:36px;height:36px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:700}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}@media (max-width:800px){.pricing-grid{grid-template-columns:1fr}}.price-tier{padding:24px;border:1px solid var(--line);border-radius:20px;background:rgb(255 255 255/.55)}.price-tier h3{margin:0 0 4px;font-size:1.25rem}.price-tier .price{font-family:var(--font-display);font-size:2rem;margin:0 0 8px}.price-tier p{margin:0;color:var(--ink-muted);font-size:.95rem}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:12px;gap:12px}.gallery-grid figure{margin:0;aspect-ratio:1;border-radius:16px;overflow:hidden;background:var(--paper-deep)}.gallery-grid img{width:100%;height:100%;object-fit:cover;display:block}.site-footer{padding:40px clamp(20px,4vw,48px) 56px;max-width:1200px;margin:0 auto;color:var(--ink-muted);font-size:.9rem;border-top:1px solid var(--line)}