:root{
  --bg:#080808;
  --bg-2:#101010;
  --panel:#151515;
  --soft:#252525;
  --paper:#f2efe8;
  --text:#f6f5f2;
  --muted:#b9b6ae;
  --red:#e11d2f;
  --shadow:0 24px 60px rgba(0,0,0,.35);
  --radius:22px;
  --container:min(1180px, calc(100vw - 2rem));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}
img,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
.container{width:var(--container);margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:.75rem 1rem;z-index:1000}.skip-link:focus{left:1rem}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;background:rgba(8,8,8,.86);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}
.brand{display:flex;align-items:center;gap:.75rem;min-width:0}.brand-wordmark{height:auto;width:min(220px,48vw)}
.site-nav{display:flex;align-items:center;gap:1.15rem;font-size:.95rem}.site-nav a{color:#efeeea;opacity:.88}.site-nav a:hover{opacity:1}.nav-cta{padding:.75rem 1rem;border-radius:999px;background:var(--red)!important;opacity:1!important;font-weight:700}
.menu-toggle{display:none;border:0;background:none;padding:.25rem;cursor:pointer}.menu-toggle span{display:block;width:26px;height:2px;background:#fff;margin:6px 0;border-radius:999px}
.hero{position:relative;min-height:calc(100vh - 76px);display:flex;align-items:center;overflow:hidden;background:#000}
.hero-video,.hero-overlay,.hero-noise{position:absolute;inset:0}.hero-video{width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.02)}
.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.62) 40%,rgba(0,0,0,.55) 60%,rgba(0,0,0,.8) 100%),linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.45))}
.hero-noise{opacity:.08;mix-blend-mode:screen;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.3),transparent 30%),radial-gradient(circle at 70% 20%,rgba(255,255,255,.2),transparent 28%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.15),transparent 28%)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:2.2rem;align-items:center;padding:5rem 0 4rem}
.hero-copy h1,.section-heading h2,.story-copy h2,.contact-copy h2,.final-cta h2,.online-copy h2{font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:.02em;line-height:.95;text-transform:uppercase}
.hero-copy h1{font-size:clamp(3rem,7vw,5.7rem);margin:.2rem 0 1rem}.hero-copy h1 span,.section-heading h2 span,.story-copy h2 span,.contact-copy h2 span,.final-cta h2 span,.online-copy h2 span{color:var(--red)}.hero-copy h3,.service-card h3,.specialty-card h3{margin:.1rem 0 1rem}
.eyebrow,.card-kicker{letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#ff6772;font-size:.78rem;margin:0 0 .9rem}.hero-lead,.section-heading p,.about-copy p,.story-copy p,.online-copy .lead,.faq-grid p,.contact-copy p{color:#ddd7cc}.hero-lead{max-width:44rem;font-size:1.1rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:1.5rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.92rem 1.25rem;border-radius:999px;font-weight:800;transition:.2s transform,.2s opacity,.2s background}.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--red);color:#fff}.button-ghost{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.04);color:#fff}.button-dark{background:#111;color:#fff}.button-light{background:#fff;color:#111}
.hero-proof{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:.8rem;margin-top:2rem}.hero-proof div{padding:1rem;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(255,255,255,.03);backdrop-filter:blur(6px)}.hero-proof strong{display:block;font-size:1.55rem;font-weight:900}.hero-proof span{display:block;font-size:.82rem;color:#d0cbc2;text-transform:uppercase;letter-spacing:.08em}
.hero-brand{justify-self:end;max-width:540px;filter:drop-shadow(0 20px 40px rgba(0,0,0,.35))}
.scroll-cue{position:absolute;left:50%;bottom:1rem;transform:translateX(-50%);font-size:1.5rem;opacity:.7}
.ticker{overflow:hidden;white-space:nowrap;background:#111;border-block:1px solid rgba(255,255,255,.06)}.ticker-track{display:inline-flex;gap:1rem;padding:1rem 0;min-width:200%;animation:ticker 28s linear infinite;text-transform:uppercase;font-weight:800;letter-spacing:.12em;color:#f0ece4}.ticker i{font-style:normal;color:var(--red)}@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.section{padding:6rem 0}.section-heading{max-width:720px;margin-bottom:2rem}.section-heading.compact{max-width:580px}.section-heading h2{font-size:clamp(2.3rem,5vw,4.2rem);margin:0 0 1rem}
.services{background:#0a0a0a}.service-grid,.pricing-grid,.specialty-grid,.video-grid,.faq-grid,.contact-grid,.online-grid{display:grid;gap:1.5rem}
.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{display:grid;grid-template-columns:auto 1fr;gap:1.25rem;padding:1.6rem;border:1px solid rgba(255,255,255,.09);border-radius:var(--radius);background:linear-gradient(180deg,#171717,#101010);box-shadow:var(--shadow)}.service-number{font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:3.5rem;color:#3d3d3d;line-height:1}.service-card p{margin:.2rem 0 1rem;color:var(--muted)}.service-card ul,.price-card ul{margin:0;padding-left:1.1rem;color:#ece6db}.service-card li,.price-card li{margin:.45rem 0}.service-area{margin-top:1.6rem;padding:1rem 1.2rem;border-radius:999px;border:1px solid rgba(255,255,255,.08);display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;background:#101010}.service-area span{font-size:.85rem;text-transform:uppercase;letter-spacing:.16em;color:#ff6772}.service-area i{font-style:normal;color:var(--red)}
.pricing{background:#111}.pricing-grid{grid-template-columns:repeat(2,1fr)}.price-card{padding:1.8rem;border-radius:var(--radius);background:#181818;border:1px solid rgba(255,255,255,.08)}.price-card.featured{border-top:4px solid var(--red)}.price{display:flex;align-items:flex-end;gap:.6rem;margin:1rem 0}.price strong{font-size:clamp(2.6rem,5vw,4.8rem);line-height:1}.price span{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:.8rem;padding-bottom:.7rem}
.about{background:var(--paper);color:#141414}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:2rem;align-items:center}.about-media{position:relative}.about-media img{border-radius:28px;box-shadow:0 18px 40px rgba(0,0,0,.17)}.about-stamp{position:absolute;right:1rem;bottom:1rem;background:#111;color:#fff;border-radius:18px;padding:.8rem 1rem;box-shadow:var(--shadow)}.about-stamp span{display:block;font-size:.72rem;letter-spacing:.15em;color:#f3989f}.about-stamp strong{font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:1.55rem}.about-copy .eyebrow{color:#c82d39}.about-copy p{color:#57534b}.about-copy .lead{font-size:1.15rem;color:#1e1e1b}.credential-row{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.4rem 0 1.6rem}.credential-row span{padding:.68rem 1rem;background:#fff;border:1px solid #d2ccc0;border-radius:999px;font-size:.92rem;font-weight:700}
.story-strip{display:grid;grid-template-columns:1.15fr .85fr;background:#0d0d0d}.story-image img{width:100%;height:100%;object-fit:cover}.story-copy{padding:4rem 4vw;display:flex;flex-direction:column;justify-content:center}.story-copy h2{font-size:clamp(2.2rem,5vw,4rem);margin:0 0 1rem}
.specialty-grid{grid-template-columns:repeat(4,1fr)}.specialty-card{padding:1.4rem;border-radius:22px;background:#141414;border:1px solid rgba(255,255,255,.08)}.specialty-card span{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:#22090c;color:#ff6772;font-weight:900;margin-bottom:1rem}.specialty-card p{color:var(--muted)}
.photo-bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:1rem}.gallery-item{position:relative;border:0;border-radius:22px;overflow:hidden;padding:0;background:#111;cursor:pointer;box-shadow:var(--shadow)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.gallery-item:hover img{transform:scale(1.04)}.gallery-item::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 36%,rgba(0,0,0,.82) 100%)}.gallery-item span{position:absolute;left:1rem;right:1rem;bottom:.95rem;z-index:2;font-weight:800}.gallery-item.wide{grid-column:span 2}.gallery-item.portrait{grid-row:span 2}
.videos{background:#101010}.video-grid{grid-template-columns:repeat(3,1fr)}.media-tile{margin:0;padding:0;background:#141414;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.media-tile video{aspect-ratio:16/9;object-fit:cover;background:#000}.media-tile figcaption{padding:1rem;font-weight:700}
.online{background:#0c0c0c}.online-grid{grid-template-columns:1.1fr .9fr;align-items:center}.steps{display:grid;gap:1rem;margin:1.5rem 0}.steps div{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1rem;border-radius:18px;background:#141414;border:1px solid rgba(255,255,255,.06)}.steps span{display:inline-flex;width:42px;height:42px;border-radius:50%;align-items:center;justify-content:center;background:#24080b;color:#ff7982;font-weight:800}
.phone-mockup{justify-self:end;width:min(360px,100%);padding:1rem;border-radius:40px;background:#050505;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.08)}.phone-notch{width:38%;height:24px;background:#111;border-radius:0 0 16px 16px;margin:0 auto .8rem}.phone-screen{border-radius:30px;padding:1.2rem;background:linear-gradient(180deg,#171717,#0f0f0f)}.app-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.app-top span{font-weight:900;letter-spacing:.16em}.app-top small{color:#b7b0a5}.app-card{padding:1rem;border-radius:20px;background:linear-gradient(135deg,#202020,#0d0d0d);border:1px solid rgba(255,255,255,.06)}.app-card small,.app-list small{display:block;color:#ff6772;letter-spacing:.14em;margin-bottom:.4rem}.app-card strong{display:block;font-size:1.35rem;margin-bottom:.25rem}.app-card span{color:#d4d0c7}.app-card button{margin-top:1rem;border:0;background:var(--red);color:#fff;padding:.85rem 1rem;border-radius:999px;font-weight:800}.progress-row{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem;margin:1rem 0}.progress-row div,.app-list{padding:1rem;border-radius:18px;background:#121212;border:1px solid rgba(255,255,255,.06)}.progress-row strong{display:block;font-size:1.5rem}.progress-row span,.app-list p{color:#d6d0c5}.app-list p{margin:.45rem 0}
.faq-grid{grid-template-columns:.85fr 1.15fr;align-items:start}.faq-list details{padding:1rem 1.15rem;border-radius:18px;background:#141414;border:1px solid rgba(255,255,255,.08);margin-bottom:.9rem}.faq-list summary{cursor:pointer;font-weight:800;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list p{margin:.8rem 0 0;color:var(--muted)}
.contact{background:#111}.contact-grid{grid-template-columns:.9fr 1.1fr;align-items:start}.contact-note{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border-radius:16px;background:#171717;border:1px solid rgba(255,255,255,.06);margin:.75rem 0}.contact-note span{color:#d7d0c5;text-align:right}.direct-contact{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem;margin-top:1.2rem}.contact-action{padding:1rem;border-radius:18px;background:#141414;border:1px solid rgba(255,255,255,.08)}.contact-action strong{display:block;margin-bottom:.3rem}.contact-action span{color:var(--muted);font-size:.95rem}
.contact-form{padding:1.4rem;border-radius:24px;background:#171717;border:1px solid rgba(255,255,255,.08)}.contact-form label{display:block;font-weight:700;margin-bottom:.9rem}.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:.45rem;border:1px solid rgba(255,255,255,.12);background:#0f0f0f;color:#fff;border-radius:14px;padding:.95rem 1rem;font:inherit}.contact-form textarea{resize:vertical}.consent-row{display:flex;gap:.75rem;align-items:flex-start}.consent-row input{width:auto;margin-top:.1rem}.form-help{display:block;color:var(--muted);margin-top:1rem}.form-help a{color:#fff;text-decoration:underline}.hidden-field{position:absolute;left:-9999px}
.final-cta{padding:5rem 0;background:linear-gradient(180deg,#100d0e,#070707);text-align:center}.final-cta p{color:#ff7e87;letter-spacing:.14em;text-transform:uppercase;font-weight:800}.final-cta h2{font-size:clamp(2.4rem,5vw,4.2rem);margin:.5rem 0 1.5rem}.centered{justify-content:center}
.site-footer{padding:2.5rem 0 6rem;background:#0b0b0b;border-top:1px solid rgba(255,255,255,.06)}.footer-grid{display:grid;gap:1rem}.footer-wordmark{width:min(300px,60vw);height:auto}.footer-links{display:flex;flex-wrap:wrap;gap:1rem;color:#dad3c8}.footer-small,.copyright{color:#a79f92;font-size:.95rem}
.mobile-book-bar{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:40;display:none;grid-template-columns:repeat(3,1fr);gap:.6rem;padding:.6rem;background:rgba(8,8,8,.85);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:18px;box-shadow:var(--shadow)}.mobile-book-bar a{padding:.9rem .75rem;text-align:center;border-radius:12px;background:#151515;font-weight:800}.mobile-book-bar a.primary{background:var(--red)}
.lightbox{width:min(92vw,1100px);padding:0;border:0;background:#000;border-radius:22px;overflow:hidden}.lightbox::backdrop{background:rgba(0,0,0,.75)}.lightbox img{width:100%;height:auto;display:block}.lightbox-close{position:absolute;top:.8rem;right:.8rem;width:44px;height:44px;border:0;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:2rem;line-height:1;cursor:pointer}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width: 980px){.menu-toggle{display:block}.site-nav{position:absolute;top:100%;right:1rem;left:1rem;background:#101010;border:1px solid rgba(255,255,255,.08);padding:1rem;border-radius:18px;display:none;flex-direction:column;align-items:flex-start;box-shadow:var(--shadow)}.site-nav.open{display:flex}.hero-grid,.about-grid,.story-strip,.online-grid,.faq-grid,.contact-grid,.service-grid,.pricing-grid{grid-template-columns:1fr}.video-grid{grid-template-columns:repeat(2,1fr)}.hero-grid{padding-top:4rem}.hero-brand{justify-self:start;max-width:420px}.photo-bento{grid-template-columns:repeat(2,1fr)}.specialty-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 720px){.video-grid{grid-template-columns:1fr}.site-header{padding:.75rem .9rem}.brand-wordmark{width:min(170px,52vw)}.hero{min-height:auto}.hero-grid{padding:4.4rem 0 3.5rem}.hero-proof{grid-template-columns:repeat(2,1fr)}.hero-brand img{width:100%}.section{padding:4.5rem 0}.story-copy{padding:2rem 1rem 2.5rem}.service-area{border-radius:22px}.specialty-grid,.direct-contact{grid-template-columns:1fr}.photo-bento{grid-template-columns:1fr;grid-auto-rows:250px}.gallery-item.wide,.gallery-item.portrait{grid-column:auto;grid-row:auto}.contact-note{flex-direction:column}.contact-note span{text-align:left}.mobile-book-bar{display:grid}.site-footer{padding-bottom:7rem}}

.inline-link{color:#a10f1e;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.inline-link:hover{color:#d61f32}.bio-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin-top:1.1rem}.button-outline-dark{background:transparent;color:#111;border:1px solid #111}.button-outline-dark:hover{background:#111;color:#fff}
