:root{--bg:#090909;--panel:#171717;--text:#fafafa;--muted:#b1b1b1;--accent:#ff3347;--line:#303030;--purple:#ed001b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{max-width:100%;display:block}button{color:inherit}p{margin:0 0 1.25rem;color:var(--muted)}h1,h2,h3{margin:0;line-height:1.06;letter-spacing:-.045em}h2{font-size:clamp(2.1rem,4.2vw,4rem);font-weight:700}h3{font-size:1.7rem;letter-spacing:-.03em}.wrap{max-width:1320px;margin:auto;padding-left:64px;padding-right:64px}.section{padding-top:115px;padding-bottom:115px}.muted{color:#999999}.accent{color:var(--accent)}.eyebrow{font-size:.75rem;letter-spacing:.16em;font-weight:bold;color:var(--text);margin-bottom:25px;display:flex;align-items:center;gap:12px}.line{display:inline-block;width:28px;height:2px;background:var(--accent)}.header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:sticky;top:0;z-index:50;background:#090909ed;backdrop-filter:blur(16px);border-bottom:1px solid #ffffff12}.brand{display:flex;flex-direction:column;line-height:1.1}.brand-name{font-size:1.3rem;font-weight:900;letter-spacing:-.04em}.brand-dot{color:var(--accent)}.brand-sub{font-size:.65rem;letter-spacing:.3em;margin-top:8px}.header nav{display:flex;align-items:center;gap:30px;font-size:.875rem}.header nav a:not(.nav-cta){color:#d4d4d4}.header nav a:hover{color:var(--accent)}.nav-cta{border:1px solid #ffffff40;border-radius:3px;padding:11px 17px}.nav-cta span{margin-left:14px}.menu-toggle{display:none}.hero{position:relative;min-height:720px;overflow:hidden;background:#170b0d}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center;animation:photo-in 1.5s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080808fa 0%,#080808e3 24%,#08080850 65%,#0808082a),linear-gradient(0deg,#090909e0,transparent 40%)}.hero-content{position:relative;padding-top:79px;padding-bottom:24px}.hero h1{font-size:clamp(3.5rem,7.3vw,7rem);line-height:1;letter-spacing:-.065em;animation:enter .85s both}.hero h1 span{color:var(--accent)}.hero-copy{margin-top:29px;color:#d3d3d3;line-height:1.7;font-size:1.05rem;animation:enter 1s .1s both}.actions{display:flex;align-items:center;gap:28px;margin-top:34px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;padding:15px 21px;min-height:52px;font-size:.875rem;font-weight:bold;border:1px solid transparent;border-radius:3px;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0004}.primary{background:var(--accent);color:#ffffff}.primary:hover{background:#b90016}.outline{border:1px solid #777777;background:transparent}.outline:hover{background:#ffffff10}.text-link{font-size:.875rem;border-bottom:1px solid #777777;padding-bottom:6px;display:inline-block}.text-link:hover{color:var(--accent);border-color:var(--accent)}.hero-bottom{margin-top:74px;display:flex;justify-content:space-between;gap:16px;font-size:.65rem;letter-spacing:.09em;color:#c4c4c4;border-top:1px solid #ffffff24;padding-top:22px}.hero-bottom a{letter-spacing:0;font-size:.8rem}.photo-tag{position:absolute;right:6%;bottom:125px;padding:18px 0 18px 20px;border-left:2px solid var(--accent);text-shadow:0 2px 20px #000}.photo-tag span{display:block;font-size:.6rem;letter-spacing:.12em;margin-bottom:7px}.photo-tag strong{font-size:1.2rem;line-height:1.2}.ticker{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#141414;padding:21px 0}.ticker-track{display:flex;width:max-content;animation:ticker 35s linear infinite}.ticker-track span{white-space:nowrap;font-size:1.1rem;font-weight:700;letter-spacing:.13em}.ticker b{color:var(--accent);margin:0 42px;font-size:1.6rem}.section-head{display:flex;justify-content:space-between;gap:70px;align-items:flex-end;margin-bottom:48px}.section-head>p{max-width:370px;font-size:.95rem;margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{padding:30px 28px;background:var(--panel);border:1px solid #303030;border-radius:5px;transition:border-color .25s,transform .25s}.service:hover{border-color:#ff334790;transform:translateY(-7px)}.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:46px;color:#999999;font-size:.8rem}.service-icon{color:var(--accent);font-size:2.3rem;line-height:1}.service h3{margin-bottom:18px}.service p{font-size:.95rem;min-height:125px}.service a{display:flex;justify-content:space-between;gap:12px;font-size:.85rem;padding-top:18px;border-top:1px solid var(--line)}.service-note{display:flex;gap:35px;margin-top:32px;border-bottom:1px solid var(--line);padding-bottom:27px}.service-note span{font-size:1rem;white-space:nowrap;font-weight:bold}.service-note p{font-size:.875rem;margin:0}.wedding{display:grid;grid-template-columns:1fr 1fr;background:#151011}.wedding-photo{min-height:670px;overflow:hidden}.wedding-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.wedding-photo:hover img{transform:scale(1.04)}.wedding-content{padding:75px max(5vw,32px);align-self:center}.wedding-content h2{font-size:clamp(2.2rem,3.7vw,3.4rem);margin-bottom:26px}.wedding-content p{font-size:.95rem}.checks{list-style:none;padding:0;margin:24px 0}.checks li{padding:6px 0;font-size:.9rem}.checks li:before{content:'✓';color:var(--accent);margin-right:12px}.wedding details{margin-bottom:25px}.gallery{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px}.gallery-item{position:relative;overflow:hidden;height:350px;background:#242424;border:0;border-radius:4px;padding:0;text-align:left}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.gallery-item:hover img{transform:scale(1.06)}.gallery-item:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#000b)}.gallery-item span{position:absolute;bottom:21px;left:21px;right:21px;z-index:1;font-size:.9rem;display:flex;justify-content:space-between}.gallery-item b{color:var(--accent)}.video-row{display:flex;gap:30px;justify-content:space-between;align-items:center;margin-top:35px}.video-row h3{font-size:1.25rem;letter-spacing:-.02em;margin-bottom:8px}.video-row p{font-size:.875rem;margin:0}.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;padding-top:20px}.about-photo{position:relative;align-self:start;border-radius:4px;overflow:hidden}.about-photo img{width:100%;height:510px;object-fit:cover}.about-photo>span{position:absolute;bottom:0;left:0;right:0;padding:19px 25px;display:flex;justify-content:space-between;background:var(--accent);color:#ffffff;font-weight:700;letter-spacing:.1em}.about-copy h2{font-size:clamp(2rem,3.4vw,3.1rem);margin-bottom:29px}.about-copy .lead{font-size:1.35rem;color:var(--text);line-height:1.5}.about-copy p{font-size:.95rem}.references{border-top:1px solid var(--line)}.client-names{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:38px 0;color:#c5c5c5;font-weight:800;font-size:1.6rem;line-height:1.05}.client-names small{font-size:.8rem;font-weight:400}.reference-details{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:25px}details{font-size:.9rem}summary{cursor:pointer;padding:12px 0}details p{font-size:.875rem;line-height:1.8;padding-top:12px}.config-section{background:#190d0f;padding:100px 0}.config-launch{border:1px solid #66353a;border-radius:5px;padding:40px;background:#100c0d}.config-steps{display:flex;gap:50px;margin-bottom:30px}.config-steps span{display:flex;gap:12px;font-size:.9rem;align-items:center}.config-steps b{font-size:.75rem;color:var(--accent);border:1px solid #666666;padding:5px 8px;border-radius:50%}.config-launch .small{margin:20px 0 12px;max-width:620px}#config-frame iframe{width:100%;height:820px;border:0;border-radius:5px;background:#fff}.download-row{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:25px;font-size:.875rem}.download-row a{border-bottom:1px solid #aaa}.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.contact-copy h2{font-size:clamp(2.8rem,4.4vw,4.3rem);margin-bottom:27px}.contact-copy>p{max-width:370px}.phone{font-size:1.55rem;display:block;margin:27px 0 8px;letter-spacing:-.03em}.contact-copy>.text-link{display:block;width:max-content;margin-bottom:23px}.contact-copy>.small{margin-top:32px}.contact-form{background:var(--panel);border:1px solid var(--line);padding:33px;border-radius:6px;align-self:start}.contact-form h3{margin-bottom:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid label{font-size:.875rem;color:#d5d5d5;display:flex;flex-direction:column;gap:7px;min-width:0}.full{grid-column:1/-1}input,textarea,select{background:#0e0e0e;color:#eee;border:1px solid #414141;border-radius:3px;min-width:0;width:100%;padding:11px 12px;font-size:16px;color-scheme:dark}textarea{resize:vertical}.small{font-size:.75rem;line-height:1.7;color:#b3b3b3}.contact-form>.small{margin-top:20px}.contact-form .button{width:100%;margin-top:5px}.copy-button{border:0;background:none;font-size:.8rem;text-decoration:underline;padding:12px 0;color:#c6c6c6}footer{border-top:1px solid var(--line);padding:45px 0 25px;background:#000000}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:30px}.footer-top p{font-size:.85rem;margin:0}.footer-links{display:flex;gap:20px;align-items:center;flex-wrap:wrap;border-top:1px solid #292929;padding-top:25px;font-size:.75rem;color:#b4b4b4}.footer-links>span{margin-right:auto}.footer-links button{background:none;border:1px solid #555555;padding:6px 9px;font-size:.75rem;border-radius:3px}.preview-note{font-size:.75rem;margin-top:24px;color:#999999}.skip{position:fixed;top:-70px;left:20px;z-index:100;background:var(--accent);color:#000;padding:12px}.skip:focus{top:12px}dialog{border:1px solid #777;background:#090909;padding:12px;max-width:90vw;max-height:90vh;overflow:visible}dialog::backdrop{background:#000d}dialog img{max-height:82vh;max-width:85vw}#close-lightbox{position:absolute;right:0;top:-45px;font-size:1.4rem;background:#222;border:1px solid #aaa;border-radius:50%;height:38px;width:38px}.js-motion .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s,transform .7s}.js-motion .reveal.visible{opacity:1;transform:none}.motion-paused *{animation-play-state:paused!important}.motion-paused .reveal{opacity:1;transform:none}.motion-paused{scroll-behavior:auto}@keyframes enter{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes photo-in{from{opacity:.4;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes ticker{to{transform:translateX(-50%)}}@media(min-width:1400px){.hero-content{padding-top:105px}.hero{min-height:780px}}@media(max-width:1000px){.wrap{padding-left:32px;padding-right:32px}.header nav{gap:19px}.photo-tag{display:none}.section{padding-top:80px;padding-bottom:80px}.section-head{gap:30px}.about,.contact{gap:40px}.service{padding:23px 20px}.service p{min-height:175px}.gallery{grid-template-columns:1fr 1fr}.gallery .wide{grid-column:1/-1;height:400px}.gallery-item{height:290px}.wedding-content{padding:45px 30px}.config-steps{gap:25px}.reference-details{gap:20px}.about-photo img{height:460px}}@media(max-width:760px){.header{height:78px;padding:0 22px}.brand-name{font-size:1.1rem}.brand-sub{font-size:.6rem}.menu-toggle{display:block;background:none;border:1px solid #555555;padding:8px 12px;font-size:.85rem}.menu-toggle span{margin-left:10px}.header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#111111;padding:24px;flex-direction:column;align-items:stretch;border-bottom:1px solid #555555}.header nav.open{display:flex}.header nav a{padding:10px 0}.header nav .nav-cta{padding:12px}.wrap{padding-left:23px;padding-right:23px}.hero{min-height:695px}.hero-content{padding-top:65px}.hero h1{font-size:clamp(3.5rem,12vw,5rem)}.hero-photo{object-position:62% center}.hero-shade{background:linear-gradient(90deg,#080808e6,#08080880),linear-gradient(0deg,#090909e0,transparent)}.hero-copy{font-size:1rem}.hero-bottom{margin-top:65px;flex-direction:column;gap:12px}.hero-bottom>span{font-size:.58rem}.actions{gap:23px}.section-head{flex-direction:column;align-items:flex-start;gap:24px}.section-head>p{max-width:none}.section{padding-top:65px;padding-bottom:65px}.services{grid-template-columns:1fr}.service-top{margin-bottom:26px}.service p{min-height:0;margin-bottom:26px}.service{padding:28px}.service-note{flex-direction:column;gap:10px}.wedding{grid-template-columns:1fr}.wedding-photo{min-height:0;height:350px}.wedding-content{padding:45px 23px}.gallery{gap:12px}.gallery-item{height:220px}.gallery .wide{height:300px}.gallery-item span{left:13px;right:13px;bottom:14px;font-size:.8rem}.video-row{align-items:flex-start;flex-direction:column}.about,.contact{grid-template-columns:1fr;gap:35px}.about-photo img{height:440px}.about{padding-top:0}.about-copy{padding-top:12px}.client-names{font-size:1.3rem;justify-content:flex-start;gap:25px 35px}.reference-details{grid-template-columns:1fr;gap:0}.reference-details details{border-bottom:1px solid var(--line)}.config-section{padding:65px 0}.config-launch{padding:25px}.config-steps{flex-direction:column;gap:16px}.download-row{gap:10px;flex-direction:column;align-items:flex-start}.contact-form{padding:24px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.footer-top{flex-direction:column;align-items:flex-start}.footer-links{gap:17px}.footer-links>span{width:100%}.footer-links a,.footer-links button{font-size:.8rem}.eyebrow{font-size:.7rem}.ticker-track span{font-size:.95rem}.ticker b{margin:0 25px}.contact-copy h2{font-size:3.3rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}

/* Red / black brand presentation; original logo artwork is preserved. */
:root{--button-red:#d9001b}
.primary{background:var(--button-red);color:#fff}.primary:hover{background:#b90016}.about-photo>span{background:var(--button-red);color:#fff}.skip{background:#d9001b;color:#fff}.header{height:120px;background:#000000f5}.brand{flex-shrink:0}.brand-logo{display:block;width:190px;height:auto;object-fit:contain}.footer-top .brand-logo{width:260px}.hero h1 span{color:#ff3347}.nav-cta{border-color:#b60017}.nav-cta:hover{background:#d9001b;color:#fff!important}.hero-shade{background:linear-gradient(90deg,#080808fa 0%,#080808e3 24%,#08080850 65%,#0808082a),linear-gradient(0deg,#090909e0,transparent 40%)}html{scroll-padding-top:135px}
@media(max-width:760px){.header{height:98px}.header .brand-logo{width:155px}.header nav{top:98px}.footer-top .brand-logo{width:250px}html{scroll-padding-top:110px}.hero-shade{background:linear-gradient(90deg,#080808e6,#08080880),linear-gradient(0deg,#090909e0,transparent)}}
/* Sourced experience figures and customer feedback. */
[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.proof-strip{display:flex;align-items:center;gap:35px;padding-top:48px;padding-bottom:48px;border-bottom:1px solid var(--line);flex-wrap:wrap}.proof-intro{flex:1 1 240px}.proof-intro .eyebrow{color:var(--accent);margin-bottom:13px}.proof-intro p:last-child{font-size:.9rem;max-width:290px;margin:0}.proof-stat{flex:1 1 170px;border-left:1px solid #3d282b;padding-left:26px}.proof-stat strong{display:block;font-size:3.7rem;color:var(--accent);letter-spacing:-.06em;line-height:1.15;font-variant-numeric:tabular-nums}.proof-stat>span:not(.sr-only){display:block;font-size:.9rem;margin-top:8px}.proof-stat small{display:block;font-size:.75rem;color:var(--muted);margin-top:5px}.reviews-section{padding-top:35px}.review-source-card{background:linear-gradient(120deg,#231013,#141414 65%);border:1px solid #623138;border-radius:5px;padding:38px;display:flex;align-items:center;justify-content:space-between;gap:35px}.review-source-card>div{max-width:640px}.review-source-label{display:block;font-size:.75rem;letter-spacing:.12em;color:var(--accent);margin-bottom:19px}.review-source-card h3{margin-bottom:15px}.review-source-card p{margin:0;font-size:.95rem}.review-source-card .button{flex-shrink:0}.review-quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:24px}.review-quote{margin:0;padding:30px;background:var(--panel);border-top:3px solid var(--accent);border-radius:3px}.review-quote blockquote{margin:0 0 25px;font-size:1.05rem;line-height:1.7;white-space:pre-line}.review-quote figcaption{display:flex;flex-direction:column;gap:7px}.review-quote figcaption a{font-size:.875rem;color:var(--muted);text-decoration:underline}.header nav{gap:22px}
@media(max-width:1050px) and (min-width:761px){.header nav{gap:12px;font-size:.8rem}.header .brand-logo{width:160px}.header{padding-left:25px;padding-right:25px}}
@media(max-width:760px){.proof-strip{gap:27px;padding-top:35px;padding-bottom:35px}.proof-intro{flex-basis:100%}.proof-stat{flex-basis:40%;padding-left:17px}.proof-stat strong{font-size:3rem}.review-source-card{padding:26px;flex-direction:column;align-items:flex-start}.reviews-section{padding-top:0}.header nav{gap:12px}}
.music-philosophy{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:20px;padding-bottom:95px}.music-statement h2{font-size:clamp(2rem,3.5vw,3.4rem)}.music-story .lead{font-size:1.2rem;color:var(--text)}.music-story .music-finale{border-left:3px solid var(--accent);padding:12px 0 12px 22px;color:var(--text);font-size:1.15rem;margin:28px 0 0}.client-names{justify-content:flex-start;gap:34px 45px}.client-names>span{flex:1 1 185px}@media(max-width:760px){.music-philosophy{grid-template-columns:1fr;gap:26px;padding-top:0;padding-bottom:65px}.client-names>span{flex-basis:135px}}
.personal-promise{border-left:3px solid var(--accent);padding:7px 0 7px 23px;margin:28px 0}.personal-promise h3{font-size:1.55rem;line-height:1.15;margin-bottom:15px}.personal-promise p{margin:0}
.equipment-story{display:grid;grid-template-columns:1fr 1.5fr;gap:45px;margin-top:38px;padding:30px 0 0}.equipment-story h3{font-size:2rem;line-height:1.15}.equipment-story p{font-size:.95rem}.equipment-story .eyebrow{font-size:.75rem;color:var(--accent)}@media(max-width:760px){.equipment-story{grid-template-columns:1fr;gap:22px}}
.personal-promise .backup-note{margin-top:20px;padding-top:17px;border-top:1px solid var(--line)}.backup-note strong{display:block;color:var(--text);margin-bottom:7px}
.song-wishes{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:38px;padding-bottom:45px;border-top:1px solid var(--line)}.song-wishes h2{font-size:clamp(2.1rem,4vw,3.6rem)}.song-wishes>div>p{max-width:560px}.wish-how{background:linear-gradient(135deg,#291115,#141414);border:1px solid #623138;border-radius:5px;padding:30px}.wish-how ol{list-style:none;padding:0;margin:0}.wish-how li{display:flex;gap:19px;margin-bottom:22px}.wish-how li>span{color:var(--accent);font-size:.85rem;font-weight:700;padding-top:4px}.wish-how h3{font-size:1.1rem;margin:0 0 7px}.wish-how li p{font-size:.95rem;margin:0}.wish-how>.small{margin:0;border-top:1px solid var(--line);padding-top:18px}@media(max-width:760px){.song-wishes{grid-template-columns:1fr;gap:20px;padding-top:30px;padding-bottom:30px}.wish-how{padding:23px}}
/* Grouped pages and compact topic overview */
.header nav a[aria-current="page"]{color:var(--accent);text-decoration:underline;text-underline-offset:8px}
.topic-section{padding-top:65px;padding-bottom:70px}.topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.topic-card{display:flex;flex-direction:column;position:relative;min-height:290px;padding:32px;border:1px solid #3b3032;border-radius:16px;background:#171717;overflow:hidden;transition:transform .25s,border-color .25s}.topic-card:hover{transform:translateY(-4px);border-color:var(--accent)}.topic-card h3{font-size:2rem;margin-bottom:18px}.topic-card p{font-size:.95rem;max-width:470px}.topic-card .eyebrow{font-size:.65rem;margin-bottom:25px}.topic-wide{grid-column:span 2}.topic-photo{justify-content:flex-end;min-height:330px}.topic-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.topic-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#080808f5 0%,#080808c0 42%,#08080822 100%)}.topic-photo>div{position:relative;z-index:1}.topic-photo p{color:#ddd}.topic-link{display:block;margin-top:auto;font-size:.85rem;font-weight:bold;color:#fff}.topic-red{background:linear-gradient(130deg,#7c1120,#321014)}.topic-red p{color:#f0d9dd}.page-intro{padding-top:45px;padding-bottom:55px}.back-link{display:inline-block;margin-bottom:35px;font-size:.85rem;color:var(--muted)}.page-intro h1{font-size:clamp(2.7rem,5.5vw,5rem);line-height:1.02;max-width:950px;margin-bottom:23px}.page-intro>p:last-child{max-width:660px;font-size:1.1rem;margin:0}.page-intro .eyebrow{color:var(--accent);margin-bottom:18px}.inner-page .section{padding-top:45px;padding-bottom:65px}.inner-page .music-philosophy{padding-top:20px;padding-bottom:55px}.inner-page .song-wishes{padding-bottom:65px}.inner-page .wedding{margin-top:15px}.inner-page .wedding-photo{min-height:550px}.inner-page .references{margin-top:10px}.inner-page .reviews-section{padding-top:20px}.closing-cta{display:flex;justify-content:space-between;align-items:center;gap:35px;padding-top:55px;padding-bottom:55px;border-top:1px solid var(--line)}.closing-cta h2{font-size:2.4rem;margin-bottom:15px}.closing-cta p{max-width:560px;margin-bottom:0}.closing-cta .eyebrow{margin-bottom:18px;color:var(--accent)}.closing-cta .button{flex-shrink:0}.personal-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:22px;padding-bottom:65px}.personal-card{border:1px solid #3b3032;border-radius:16px;padding:35px;background:#151515}.personal-card h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:25px}.personal-card h3{font-size:1.8rem;margin-bottom:22px}.personal-card p:last-child{margin-bottom:0}.personal-card .lead{font-size:1.2rem;color:#fff}.personal-card .eyebrow{font-size:.7rem;color:var(--accent)}.personal-life{background:linear-gradient(145deg,#3a1119,#171214)}.personal-life p{color:#d2c4c7}.personal-card details{border-top:1px solid var(--line);margin-top:24px}.qr-card{display:flex;flex-direction:column;align-items:center;gap:20px;background:#181315;border:1px solid #623138;border-radius:16px;padding:30px;text-align:center;align-self:start}.qr-card .eyebrow,.qr-card p{margin:0}.qr-card img{width:260px;max-width:100%;height:auto;border-radius:8px;background:#fff}.qr-card h3{font-size:1.55rem}.qr-card .small{max-width:360px}.wish-steps{padding-left:22px;color:#ddd}.wish-steps li{padding-bottom:14px}.home-page .hero{min-height:640px}.home-page .hero-content{padding-top:55px}.home-page .hero h1{font-size:clamp(3.5rem,6.5vw,6rem)}
@media(max-width:1000px){.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-wide{grid-column:span 1}.topic-card{padding:25px}.personal-card{padding:27px}.closing-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.topic-grid,.personal-grid{grid-template-columns:1fr}.topic-card{min-height:240px}.topic-photo{min-height:290px}.topic-card h3{font-size:1.8rem}.topic-section{padding-top:40px;padding-bottom:45px}.topic-section .section-head{margin-bottom:28px}.page-intro{padding-top:28px;padding-bottom:35px}.page-intro h1{font-size:clamp(2.5rem,10vw,4rem)}.page-intro>p:last-child{font-size:1rem}.back-link{margin-bottom:25px}.personal-grid{gap:16px;padding-bottom:45px}.personal-card{padding:25px}.personal-card .eyebrow{font-size:.65rem}.inner-page .section{padding-top:35px;padding-bottom:45px}.inner-page .wedding-photo{min-height:0;height:290px}.qr-card{padding:24px}.qr-card .button{width:100%}.closing-cta{padding-top:38px;padding-bottom:38px}.home-page .hero h1{font-size:clamp(3.4rem,12vw,5rem)}.home-page .hero{min-height:660px}.header nav a[aria-current="page"]{text-underline-offset:5px}}
.header nav .config-nav{background:#d9001b;color:#fff!important;border-color:#d9001b;white-space:nowrap}.config-spotlight{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;padding-top:48px;padding-bottom:48px;background:linear-gradient(125deg,#2f1117,#130d0f);border-bottom:1px solid #6c2733}.config-spotlight h2{font-size:clamp(2rem,3.4vw,3.2rem);margin-bottom:20px}.config-spotlight .eyebrow{color:var(--accent);margin-bottom:18px}.config-spotlight p{margin-bottom:0;max-width:560px}.config-spotlight-action{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:20px}.config-spotlight ol{list-style:none;padding:0;margin:0}.config-spotlight li{padding:5px 0}.config-spotlight li b{color:var(--accent);margin-right:15px;font-size:.8rem}.config-spotlight-action .button{width:100%}@media(max-width:1100px){.menu-toggle{display:block;background:none;border:1px solid #555;padding:8px 12px;font-size:.85rem}.header nav{display:none;position:absolute;top:120px;left:0;right:0;background:#111;padding:24px;flex-direction:column;align-items:stretch;border-bottom:1px solid #555}.header nav.open{display:flex}.header nav a{padding:10px 0}.header nav .nav-cta{padding:12px}.header nav .config-nav{text-align:center}}@media(max-width:760px){.header nav{top:98px}.config-spotlight{grid-template-columns:1fr;gap:25px;padding-top:35px;padding-bottom:35px}.config-spotlight-action{gap:18px}.hero .actions .primary{font-size:.8rem;gap:12px}}
.region-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-bottom:30px}.region-tile,.location-card{background:#171315;border:1px solid #493039;border-radius:14px;padding:28px}.region-tile{display:flex;flex-direction:column;transition:border-color .2s,transform .2s}.region-tile:hover{border-color:var(--accent);transform:translateY(-3px)}.region-tile>span{font-size:.7rem;letter-spacing:.1em;color:var(--accent);margin-bottom:24px}.region-tile h3,.location-card h3{font-size:1.65rem;margin-bottom:18px}.region-tile p{font-size:.9rem}.region-tile b{margin-top:auto;font-size:.85rem}.regional-story{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;padding-bottom:30px}.regional-story h2{font-size:2.1rem;margin-bottom:25px}.regional-story aside{padding:30px;border-left:3px solid var(--accent);background:#181114}.regional-story aside h3{margin-bottom:20px}.location-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.location-card .eyebrow{font-size:.65rem;color:var(--accent)}.location-note{margin-top:20px}.region-faq{border-top:1px solid var(--line);padding:15px 0;margin-top:30px}.regional-actions{display:flex;flex-direction:column;align-items:flex-start;gap:20px;flex-shrink:0}.region-links{display:flex;gap:20px;flex-wrap:wrap;padding-top:15px;padding-bottom:40px;font-size:.85rem}.region-links a{border-bottom:1px solid #777}.region-intro-copy,.location-discovery>p:not(.eyebrow){max-width:760px;margin-top:24px}.location-discovery{border-top:1px solid var(--line)}@media(max-width:1000px){.region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.region-grid,.regional-story{grid-template-columns:1fr;gap:20px}.region-tile,.location-card{padding:24px}.location-grid{grid-template-columns:1fr}.regional-story h2{font-size:1.85rem}.region-links{gap:16px}.regional-actions{width:100%}}
.config-brand{display:flex;align-items:center;gap:15px;margin-bottom:25px}.config-brand>img{background:#171717;padding:6px;border:1px solid #75414a;border-radius:12px;flex-shrink:0}.config-brand>div{display:flex;flex-direction:column}.config-brand span{font-size:.65rem;letter-spacing:.15em;color:#c3b6b8}.config-brand strong{font-size:clamp(1.1rem,2vw,1.55rem);line-height:1.4;letter-spacing:-.03em}.service-symbol{display:block}.extras-label{display:flex;align-items:center;gap:15px;margin-top:28px;color:#ddd;font-size:.9rem}.gallery-expanded{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.gallery-expanded .gallery-item,.gallery-expanded .gallery-item.wide{height:auto;grid-column:auto;background:#181818;border:1px solid #3b3032;border-radius:8px}.gallery-expanded .gallery-item img{aspect-ratio:4/3;object-fit:contain;height:auto;width:100%;transform:none}.gallery-expanded .gallery-item:after{display:none}.gallery-expanded .gallery-item span{position:static;padding:16px;min-height:64px;font-size:.85rem;gap:12px}.gallery-expanded .gallery-item:hover{border-color:#ff3347}@media(max-width:1000px){.gallery-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.gallery-expanded{grid-template-columns:1fr}.gallery-expanded .gallery-item span{min-height:0}.config-brand{gap:12px}}
.portfolio-section{padding-top:55px}
.portfolio-section .section-head{margin-bottom:30px}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.portfolio-card{position:relative;display:flex;flex-direction:column;padding:0;background:#171717;border:1px solid #3b3032;border-radius:10px;overflow:hidden;color:#fff;text-align:left;cursor:zoom-in;transition:transform .25s,border-color .25s}.portfolio-card:hover{transform:translateY(-4px);border-color:var(--accent)}.portfolio-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.portfolio-card span{display:block;padding:15px 17px;min-height:55px;font-size:.87rem;line-height:1.35}.portfolio-card-large{grid-column:span 2}.portfolio-card-large img{aspect-ratio:16/9}.video-section{border-top:1px solid var(--line)}.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.video-card{margin:0;background:#171717;border:1px solid #3b3032;border-radius:10px;overflow:hidden}.video-card video{display:block;width:100%;aspect-ratio:16/9;background:#050505;object-fit:cover}.video-card figcaption{padding:15px 17px;font-size:.88rem}.video-card:hover{border-color:var(--accent)}@media(max-width:1000px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.portfolio-grid,.video-grid{grid-template-columns:1fr}.portfolio-card-large{grid-column:auto}.portfolio-card-large img,.portfolio-card img{aspect-ratio:4/3}.portfolio-section{padding-top:35px}}
