:root{--paper:#fbf9f4;--line:#e7e3ed;--muted:#6d6876}
body{overflow-x:clip}header{background:rgba(251,249,244,.95);height:92px;padding-inline:6%;border-bottom:1px solid #3c2a9812}nav a{position:relative}nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--ink);transition:right .25s}nav a:hover:after{right:0}nav a:hover{text-decoration:none}
.hero{margin:22px 28px 0;border-radius:22px;overflow:hidden;background:#ede8df;min-height:700px}.hero-copy{min-height:700px;max-width:720px;padding:100px 5% 105px}.hero-photo:after{background:linear-gradient(90deg,rgba(251,249,244,.97) 0%,rgba(251,249,244,.86) 28%,rgba(251,249,244,.08) 63%,transparent 100%)}.hero h1{color:var(--secondary);font-size:clamp(54px,5.8vw,86px);letter-spacing:-3px;max-width:570px}.hero .eyebrow{color:var(--ink);letter-spacing:2px}.hero .lead{color:#55545d;max-width:370px;font-size:18px}.hero .button{background:var(--ink);color:white;padding:16px 25px;box-shadow:0 8px 28px #3c2a9824}.hero .button:hover{background:#503bb2}.hero-tabs{margin-top:36px}.hero-tabs button{background:#ffffffb8;backdrop-filter:blur(6px);border-color:#245c6030}.hero-tabs button[aria-pressed=true]{background:var(--secondary)}.caption{font-size:10px;letter-spacing:1.5px;right:28px;bottom:22px;background:#ffffffd9}
.intro{background:transparent;color:var(--secondary);padding:65px 7%;border-bottom:1px solid var(--line);grid-template-columns:1fr 2.8fr}.intro .eyebrow{color:var(--ink);padding-top:8px}.intro p{font-size:25px;max-width:850px}section{padding:100px 7%}.section-top h2{max-width:620px}.section-top p{font-size:15px}.grid{gap:30px}.card{border-radius:16px;background:white;box-shadow:0 8px 32px #20222b05;transition:box-shadow .3s,transform .3s}.card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #20222b10}.card img{height:400px}.card-copy{padding:26px}.card h3{font-family:Georgia,serif;font-size:27px}.card p{font-size:15px}.detail-button{font-size:13px;padding:10px 18px}.compare{margin:0 28px;border-radius:22px;background:#203f40;padding:75px 5%;gap:50px}.compare-images img{height:430px;border-radius:16px}.compare select{background:#ffffffed}.production{background:linear-gradient(135deg,#f1edf8,#eeefeb);margin-top:85px}.steps{gap:24px}.step{position:relative;overflow:hidden;padding:35px 30px;box-shadow:0 10px 35px #3c2a9805}.num{font-size:54px;font-style:italic;color:#3c2a9850;margin-bottom:26px}.step h3{font-family:Georgia,serif;font-size:25px}.about{background:var(--paper)}.closing{margin:0 28px 28px;border:0;border-radius:22px;padding:45px 5%}.contact-invite{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding:65px 7%;background:var(--paper)}.contact-invite h2{font-size:40px;margin:0}.contact-invite .button{border-radius:30px;white-space:nowrap;margin:0}
@media(min-width:801px){.hero-photo img{object-position:center 50%}}
@media(max-width:1100px){nav{gap:20px}.hero-copy{max-width:630px}.hero h1{font-size:66px}.hero-photo:after{background:linear-gradient(90deg,#fbf9f4ed,#fbf9f4b8 35%,#fbf9f420 80%)}.grid{gap:20px}.card img{height:350px}}
@media(max-width:800px){.hero{margin:14px 14px 0;min-height:860px}.hero-copy{min-height:0;max-width:none;padding:40px 7% 20px}.hero h1{font-size:58px;letter-spacing:-2px}.hero .lead{max-width:440px}.hero-photo{inset:430px 0 0;min-height:0}.hero-photo:after{background:linear-gradient(180deg,#fbf9f4 0%,#fbf9f430 25%,transparent 60%)}.hero-photo img{object-position:70% center}.hero-tabs{margin-top:25px}.caption{bottom:14px;right:14px}.intro{padding:45px 7%;grid-template-columns:1fr;gap:14px}.intro p{font-size:23px}.compare{margin:0 14px;padding:55px 7%;grid-template-columns:1fr}.compare-images img{height:320px}.production{margin-top:60px}.steps{grid-template-columns:1fr;gap:18px}.step{padding:25px}.num{font-size:38px;margin-bottom:12px}.closing{margin:0 14px 14px}.contact-invite{flex-direction:column;align-items:flex-start}.contact-invite h2{font-size:34px}}
@media(max-width:500px){header{height:auto;min-height:100px;padding:16px 6%;row-gap:16px}nav{gap:18px;font-size:12px;overflow-x:auto;justify-content:flex-start;white-space:nowrap}.hero{min-height:835px}.hero-copy{padding:35px 7% 20px}.hero h1{font-size:47px;line-height:1.08;margin-block:20px}.hero .lead{font-size:16px}.hero .eyebrow{font-size:10px;letter-spacing:1px}.hero .button{font-size:13px;padding:14px 20px}.hero-photo{top:420px}.hero-tabs{gap:8px}.hero-tabs button{font-size:12px}.grid{grid-template-columns:1fr}.card img{height:360px}.card-copy{padding:22px}.compare-images{gap:10px}.compare-images img{height:240px}.compare h2{font-size:36px}section{padding:65px 7%}.intro p{font-size:21px}.closing{gap:20px}.contact-invite h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.hero-photo video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 50%;z-index:1}.hero-photo video[hidden]{display:none}.hero-photo:after{z-index:2;pointer-events:none}.hero-photo .caption{z-index:3}@media(max-width:800px){.hero-photo video{object-position:70% center}}

.hero-video-toggle{position:absolute;z-index:4;right:28px;bottom:65px;border:1px solid #245c6030;border-radius:999px;padding:9px 14px;background:#ffffffe0;color:#245c60;font:inherit;font-size:12px;cursor:pointer}.hero-video-toggle[hidden]{display:none}.hero-video-toggle:focus-visible{outline:3px solid #503bb2;outline-offset:3px}

.hero-copy{z-index:5}
