:root{--bg:#F7F2F4;--band:#EFE4EA;--card:#FFFFFF;--ink:#23131C;--muted:#4A3642;--soft:#6B5562;--berry:#8E1F4F;--berry-dark:#6E1239;--night:#2A1622;--lilac:#D9B8C8;--rose:#E9B7CC;--leaf:#2E5E3F;--leaf-light:#3F7A55;--line:#E4D6DD;--danger:#A3283C;--warn:#9A6A12;--display:"Bodoni Moda",Didot,"Times New Roman",serif;--body:"Albert Sans","Segoe UI",Arial,sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}img,video{max-width:100%}a{color:var(--berry)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--berry);outline-offset:2px}[hidden]{display:none!important}.wrap{max-width:1160px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.eyebrow{margin:0;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--berry);font-weight:600}.h2{margin:0;font-family:var(--display);font-weight:500;font-size:clamp(34px,4vw,48px);line-height:1.1;text-wrap:balance}.h1 em,.h2 em{color:var(--berry)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;font:600 16px/1 var(--body);text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:background .15s,color .15s,border-color .15s}.btn-green{background:var(--leaf);color:#fff}.btn-green:hover{background:#244c33}.btn-line{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-line:hover{background:var(--ink);color:#fff}.btn-sm{min-height:40px;padding:0 16px;font-size:14px}.btn-danger{background:transparent;color:var(--danger);border-color:var(--danger)}.btn:disabled{opacity:.5;cursor:default}.linkbtn{background:none;border:0;padding:0;font:inherit;color:var(--berry);font-weight:600;cursor:pointer;text-decoration:underline}.top{position:-webkit-sticky;position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);background:rgba(247,242,244,.92);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px)}.top .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding-block:10px}.logo{display:flex;flex-direction:column;gap:4px;line-height:1.1;color:var(--ink);text-decoration:none}.logo b{font-family:var(--display);font-style:italic;font-weight:500;font-size:26px}.logo small{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--soft);font-weight:600}.nav{display:flex;flex-wrap:wrap;align-items:center;gap:6px 22px;font-size:15px;font-weight:500}.nav a{color:var(--ink);text-decoration:none}.nav a:hover{color:var(--berry)}.nav a.btn-green,.nav a.btn-green:hover{color:#fff}.nav a.on{color:var(--berry)}.nav-phone{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.subnav{display:none;gap:4px;overflow-x:auto;padding:6px 12px 10px;border-top:1px solid var(--line)}.subnav a{flex:none;padding:8px 12px;border-radius:999px;font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;background:var(--band)}.subnav a.on{background:var(--berry);color:#fff}@media (max-width:900px){.nav .nav-link,.nav-phone{display:none}.subnav{display:flex}}.band{background:var(--band)}.dark{background:var(--night);color:var(--bg)}.section{padding-block:80px;display:flex;flex-direction:column;gap:36px}.section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 40px}.section-head>div{display:flex;flex-direction:column;gap:12px;max-width:640px}.services{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:0 28px;gap:0 28px;border-top:1.5px solid var(--ink)}.svc-col{padding-block:24px;display:flex;flex-direction:column;gap:6px;border-bottom:1px solid var(--line)}.svc-col h3{margin:0 0 8px;font-family:var(--display);font-style:italic;font-weight:500;font-size:28px;line-height:1.1}.svc{padding:10px 0;border-top:1px solid var(--line)}.svc b{display:block;font-weight:600;font-size:16px}.svc span{font-size:14px;color:var(--soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.svc-col .more{margin-top:auto;padding-top:12px;font-weight:600;font-size:15px;color:var(--leaf);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.bridal{display:flex;flex-wrap:wrap;gap:48px;align-items:flex-start}.bridal>div:first-child{flex:999 1 440px;min-width:0;display:flex;flex-direction:column;gap:22px}.bridal .h2{font-size:clamp(36px,4.6vw,58px)}.bridal .h2 em{color:var(--rose)}.bridal .eyebrow{color:var(--lilac)}.bridal p{margin:0;color:#E4D3DB;font-size:18px;max-width:32em}.checklist{flex:1 1 320px;min-width:0;border:1px solid #4a2e3e;border-radius:4px;padding:28px}.checklist p{margin:0 0 12px;font-weight:600;color:var(--bg)}.checklist ul{margin:0;padding:0;list-style:none}.checklist li{padding:12px 0;border-top:1px solid #4a2e3e;color:#E4D3DB;display:flex;gap:12px}.checklist li:before{content:"—";color:var(--rose)}.btn-wa-light{background:var(--leaf-light);color:#fff}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:16px;gap:16px}.gallery figure{margin:0;aspect-ratio:4/5;max-width:100%;border-radius:4px;overflow:hidden;background:var(--band);border:1px dashed #c9afbd;display:flex;align-items:flex-end;padding:16px}.gallery figure.has{border:0;padding:0}.gallery img{width:100%;height:100%;object-fit:cover;display:block}.gallery figcaption{font-size:13px;color:var(--soft)}.contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:16px;gap:16px}.contact .card{background:var(--card);border-radius:4px;padding:28px;display:flex;flex-direction:column;gap:12px;min-width:0}.card h3{margin:0;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--soft);font-weight:600}.hours div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--line);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hours div:last-child{border-bottom:1px solid var(--line)}.hours b{font-weight:600}.foot{border-top:1px solid var(--line)}.foot a{color:var(--soft)}.page{padding-block:48px 120px;display:flex;flex-direction:column;gap:28px;max-width:860px}.steps{display:flex;gap:8px;flex-wrap:wrap;font-size:14px;color:var(--soft)}.steps span{padding:6px 12px;border-radius:999px;background:var(--band)}.steps span.on{background:var(--berry);color:#fff}.panel{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:24px;display:flex;flex-direction:column;gap:16px;min-width:0}.panel h2{margin:0;font-size:20px}.choice-list{display:flex;flex-direction:column;gap:8px}.choice{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;text-align:left;padding:14px 16px;border:1px solid var(--line);border-radius:6px;background:var(--card);font:inherit;color:inherit;cursor:pointer}.choice.on,.choice:hover{border-color:var(--berry)}.choice.on{box-shadow:inset 0 0 0 1px var(--berry)}.choice small{color:var(--soft);font-size:14px;text-align:right}.days{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px}.day{flex:none;min-width:76px;padding:10px 8px;border:1px solid var(--line);border-radius:6px;background:var(--card);font:inherit;font-size:14px;cursor:pointer;color:var(--ink)}.day.on{background:var(--berry);border-color:var(--berry);color:#fff}.day:disabled{opacity:.4;cursor:default}.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));grid-gap:8px;gap:8px}.slot{min-height:44px;border:1px solid var(--line);border-radius:6px;background:var(--card);font:600 15px var(--body);cursor:pointer;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.slot.on{background:var(--leaf);border-color:var(--leaf);color:#fff}.field{display:flex;flex-direction:column;gap:6px}.field label{font-weight:600;font-size:15px}.field input,.field select,.field textarea{min-height:46px;padding:10px 12px;border:1px solid #cdbac4;border-radius:6px;font:16px var(--body);color:var(--ink);background:#fff;width:100%}.field textarea{min-height:90px;resize:vertical}.check{display:flex;gap:10px;align-items:flex-start;font-size:15px}.check input{width:20px;height:20px;margin-top:3px;flex:none}.err{color:var(--danger)}.err,.ok{margin:0;font-weight:600}.ok{color:var(--leaf)}.note{margin:0;font-size:14px}.muted,.note{color:var(--soft)}.summary{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:6px;background:var(--band)}.hero-slider{position:relative;min-height:min(78vh,720px);display:flex;align-items:flex-end;background:var(--night);color:var(--bg);overflow:hidden;isolation:isolate}.hs-frames{z-index:-1}.hs-frame,.hs-frames{position:absolute;inset:0}.hs-frame{opacity:0;transition:opacity 1.1s ease}.hs-frame.on{opacity:1}.hs-frame img{width:100%;height:100%;object-fit:cover;display:block}.hs-frame.on .hs-art,.hs-frame.on img{animation:hszoom 4.5s ease-out both}@keyframes hszoom{0%{transform:scale(1.06)}to{transform:scale(1)}}.hs-art{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 70% 30%,#5a2a44 0,#2A1622 60%)}.hs-art span{font-family:var(--display);font-style:italic;font-size:clamp(60px,14vw,200px);color:rgba(233,183,204,.12);white-space:nowrap;letter-spacing:-.03em}.f1 .hs-art{background:radial-gradient(ellipse at 30% 70%,#6E1239 0,#2A1622 65%)}.f2 .hs-art{background:radial-gradient(ellipse at 60% 80%,#3F2436 0,#2A1622 65%)}.f3 .hs-art{background:radial-gradient(ellipse at 20% 20%,#7a3056 0,#2A1622 65%)}.f4 .hs-art{background:radial-gradient(ellipse at 80% 60%,#2E5E3F 0,#2A1622 70%)}.hs-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(42,22,34,.92) 0,rgba(42,22,34,.55) 40%,rgba(42,22,34,.15))}.hs-text{position:relative;width:100%;padding-block:64px 72px;display:flex;flex-direction:column;gap:18px;animation:hsin .8s ease both}@keyframes hsin{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.hs-text .eyebrow{color:var(--rose)}.hs-text .lead{color:#E4D3DB;max-width:30em}.h1{margin:0;font-family:var(--display);font-weight:500;font-size:clamp(42px,6vw,84px);line-height:1.02;letter-spacing:-.02em;text-wrap:balance;max-width:14em}.h1-sm{font-size:clamp(34px,4.6vw,58px)}.lead{margin:0;max-width:34em;font-size:19px;color:var(--muted)}.row{display:flex;flex-wrap:wrap;gap:12px}.btn-ghost{background:rgba(247,242,244,.1);color:#fff;border-color:rgba(247,242,244,.5)}.btn-ghost:hover{background:#fff;color:var(--ink)}.hs-dots{position:absolute;right:max(16px,env(safe-area-inset-right,0px));bottom:22px;display:flex;gap:8px}.hs-dots button{width:36px;height:24px;padding:0;border:0;background:none;cursor:pointer;display:flex;align-items:center}.hs-dots button span{display:block;width:100%;height:3px;border-radius:2px;background:rgba(247,242,244,.35);position:relative;overflow:hidden}.hs-dots button.on span:after{content:"";position:absolute;inset:0;background:var(--rose);transform-origin:left;animation:hsbar linear both;animation-duration:inherit;animation-play-state:inherit}@keyframes hsbar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (max-width:760px){.hero-slider{min-height:72vh}.hs-text{padding-block:40px 64px}.hs-dots{left:16px;right:auto}}@media (prefers-reduced-motion:reduce){.hs-frame,.hs-text{animation:none;transition:none}.hs-frame.on .hs-art,.hs-frame.on img{animation:none}}.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px 24px;gap:12px 24px;padding-block:28px;border-bottom:1px solid var(--line)}.strip div{display:flex;flex-direction:column;gap:2px}.strip b{font-family:var(--display);font-size:26px;font-weight:500;line-height:1.1}.strip span{font-size:14px;color:var(--soft)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:16px;gap:16px}.card-svc{background:var(--card);border-radius:6px;overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:8px;padding-bottom:20px;border:1px solid var(--line);transition:transform .2s,box-shadow .2s}.card-svc:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(42,22,34,.12)}.card-img{aspect-ratio:4/3;background:var(--band) center/cover no-repeat;position:relative}.card-img:not([style*=url]):after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 70% 30%,#E9B7CC55,transparent 60%),linear-gradient(135deg,#EFE4EA,#D9B8C8)}.card-svc h3,.post h3{margin:12px 20px 0;font-family:var(--display);font-style:italic;font-weight:500;font-size:26px;line-height:1.1}.card-svc .note,.post .note,.post p{margin:0 20px}.more{margin:auto 20px 0;padding-top:8px;font-weight:600;font-size:15px;color:var(--leaf)}.about{display:flex;flex-direction:row;flex-wrap:wrap;gap:48px;align-items:center}.about-media{flex:1 1 360px;min-width:0;position:relative}.about-media .ph,.about-media img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:6px;display:block}.about-media .ph{background:var(--band);border:1px dashed #c9afbd;display:flex;align-items:center;justify-content:center;color:var(--soft);font-size:14px}.badge-years{position:absolute;right:-12px;bottom:24px;background:var(--berry);color:#fff;padding:16px 20px;border-radius:6px;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(42,22,34,.25)}.badge-years b{font-family:var(--display);font-size:24px;font-weight:500}.badge-years span{font-size:13px;color:var(--rose)}.about-text{flex:999 1 420px;min-width:0;display:flex;flex-direction:column;gap:20px}.about-text p{margin:0;color:var(--muted);font-size:18px}.ticks{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:10px;gap:10px}.ticks li{display:flex;gap:10px;font-weight:600}.ticks li:before{content:"✓";color:var(--leaf)}.posts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:16px;gap:16px}.post{background:var(--card);border:1px solid var(--line);border-radius:6px;overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:8px;padding-bottom:20px}.post h3{font-style:normal;font-size:22px}.post p{color:var(--muted);font-size:15px}.post .note{margin-top:4px}.cta-band{align-items:center}.cta-band,.cta-band .lead{text-align:center}.cta-band .row{justify-content:center}.page-intro{padding-block:48px 32px;display:flex;flex-direction:column;gap:14px}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.stack-16{gap:16px}.stack-16,.svc-block{display:flex;flex-direction:column}.svc-block{gap:12px;padding-block:24px;border-top:1.5px solid var(--ink);scroll-margin-top:24px}.svc-block-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}.svc-table{display:flex;flex-direction:column}.svc-row{display:grid;grid-template-columns:1fr auto auto;grid-gap:8px 20px;gap:8px 20px;align-items:baseline;padding:12px 0;border-top:1px solid var(--line)}.svc-row b{font-weight:600}.svc-price{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;text-align:right}.svc-price small{font-weight:400;color:var(--soft)}@media (max-width:560px){.svc-row{grid-template-columns:1fr auto}.svc-row .muted{grid-column:1;font-size:14px}.svc-price{grid-row:1/3;align-self:center}}.gallery-lg{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.contact-page{display:grid;grid-template-columns:minmax(280px,1fr) minmax(300px,1.4fr);grid-gap:24px;gap:24px;align-items:start}@media (max-width:760px){.contact-page{grid-template-columns:1fr}}.contact-page .card{background:var(--card);border-radius:4px;padding:24px;display:flex;flex-direction:column;gap:12px}.map{display:block;width:100%;height:380px;border:0;filter:saturate(.8)}.article .cover{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:6px}.prose{display:flex;flex-direction:column;gap:16px;font-size:18px;color:var(--muted)}.prose ol,.prose p,.prose ul{margin:0}.prose strong{color:var(--ink)}.foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:24px 40px;gap:24px 40px;padding-block:40px 24px}.foot-grid>div{display:flex;flex-direction:column;gap:8px}.foot-grid h4{margin:0 0 4px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--soft)}.foot-grid a{color:var(--ink);text-decoration:none;font-size:15px}.foot-grid a:hover{color:var(--berry)}.foot-logo{font-family:var(--display);font-style:italic;font-weight:500;font-size:24px}.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-block:16px 28px;font-size:14px;color:var(--soft);border-top:1px solid var(--line)}