:root{--color-bg:#FAF9F6;--color-bg-alt:#F5F0EB;--color-primary:#722F37;--color-primary-hover:#8B3A42;--color-text:#2D2D2D;--color-text-light:#5a5a5a;--color-accent:#C9A962;--color-accent-sage:#A8B5A0;--color-border:#e5e0db;--color-bg-hover:#f5f5f5;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:5rem;--header-height:80px;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-pill:50px;--section-padding-x:var(--space-xl);--section-padding-y:var(--space-3xl);--section-padding-y-lg:var(--space-4xl)}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:#fff;padding:8px 16px;z-index:1000;text-decoration:none;font-weight:500;border-radius:0 0 var(--radius-sm) 0}.skip-link:focus{top:0}*,::after,::before{box-sizing:border-box;margin:0;padding:0}body{font-family:'Hind Madurai',system-ui,-apple-system,sans-serif;color:var(--color-text);background:var(--color-bg);overflow-x:hidden;font-size:16px;line-height:1.6;font-weight:400}.site-header{background:var(--color-bg);color:var(--color-text);padding:0;height:80px;position:fixed;top:0;left:0;right:0;z-index:100;border-bottom:1px solid var(--color-border)}.header-content{max-width:1200px;margin:0 auto;height:100%;display:flex;justify-content:center;align-items:center;padding:0 2rem;position:relative}.branding,.stat-item,.two-column-content.full-width{text-align:center}.logo{font-size:1.5rem;font-weight:300;letter-spacing:-.05em;color:#000;text-decoration:none;display:block}.contact-info-box a,.logo:hover,.migration-banner a:hover{color:#000}.tagline{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-light);margin-top:.25rem}.nav-left,.nav-right{position:absolute;display:flex;align-items:center;gap:1.5rem}.nav-left{left:2rem}.nav-right{right:2rem}.nav-left a,.nav-right a{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text);text-decoration:none;transition:.3s;position:relative}.footer-col a:hover,.nav-dropdown-toggle:hover,.nav-left a:hover,.nav-right a:not(.nav-cta):hover{color:var(--color-primary)}.nav-left a:focus-visible,.nav-right a:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.nav-left a:not(.current)::after,.nav-right a:not(.nav-cta):not(.current)::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:2px;background:var(--color-primary);border-radius:1px;transform:scaleX(0);transition:transform .3s}.nav-left a:not(.current):hover::after,.nav-right a:not(.nav-cta):not(.current):hover::after{transform:scaleX(1)}.nav-dropdown-menu a.current,.nav-left a.current,.nav-right a.current{color:var(--color-primary);position:relative}.nav-left a.current::after,.nav-right a.current:not(.nav-cta)::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:2px;background:var(--color-primary);border-radius:1px}.nav-right a.nav-cta{background:var(--color-primary);color:#fff;padding:.5rem 1.25rem;border-radius:var(--radius-pill);font-weight:500;transition:.3s}.nav-right a.nav-cta:hover{background:var(--color-primary-hover);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(114,47,55,.3)}.nav-right a.nav-cta:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.gallery-grid-masonry,.hero-about-image-wrapper,.location-hero-split .location-hero-image,.nav-dropdown,.truncatable-text,.truncatable-text .text-content{position:relative}.nav-dropdown-toggle{background:0 0;border:none;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text);cursor:pointer;padding:0;display:flex;align-items:center;gap:.25rem;font-family:inherit;transition:color .3s}.nav-dropdown-toggle:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.accordion-arrow,.dropdown-arrow{font-size:.6rem;transition:transform .2s}.nav-dropdown:focus-within .dropdown-arrow,.nav-dropdown:hover .dropdown-arrow{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 4px 12px rgba(0,0,0,.1);min-width:160px;padding:.5rem 0;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;margin-top:.75rem;z-index:200}.nav-dropdown:focus-within .nav-dropdown-menu,.nav-dropdown:hover .nav-dropdown-menu{opacity:1;visibility:visible}.nav-dropdown-menu a{display:block;padding:.5rem 1rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text);text-decoration:none;white-space:nowrap}.nav-dropdown-menu a:hover{background:var(--color-bg-hover);color:var(--color-primary)}.nav-dropdown-menu a:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px;background:var(--color-bg-hover)}.mobile-nav{display:none;flex-direction:column;align-items:center;padding:1.5rem;gap:1rem;background:#fff;border-bottom:1px solid var(--color-border)}.mobile-nav a{font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:#000;text-decoration:none}.mobile-accordion{width:100%;text-align:center}.mobile-accordion-toggle{background:0 0;border:none;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:#000;cursor:pointer;padding:.25rem .5rem;display:inline-flex;align-items:center;gap:.35rem;font-family:inherit}.mobile-accordion-toggle:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.accordion-icon.open,.mobile-accordion.open .accordion-arrow{transform:rotate(180deg)}.mobile-accordion-content{display:none;flex-direction:column;gap:.75rem;padding:.75rem 0}.mobile-accordion.open .mobile-accordion-content,.mobile-nav.active{display:flex}.footer-bottom p,.mobile-accordion-content a{font-size:.8rem;color:var(--color-text-light)}.mobile-nav a.mobile-nav-cta{background:var(--color-primary);color:#fff;padding:.75rem 2rem;border-radius:var(--radius-pill);font-weight:500;margin-top:.5rem}.mobile-menu-toggle{display:none;position:absolute;right:1rem;background:0 0;border:none;cursor:pointer;width:44px;height:44px;flex-direction:column;justify-content:center;align-items:center;padding:10px 7px;gap:6px}.mobile-menu-toggle span{display:block;width:30px;height:2px;background:#000;transition:.3s}.mobile-menu-toggle:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.site-main{margin:0 auto;padding-top:80px;padding-bottom:0;min-height:calc(100vh - 120px)}.site-footer{background:#fff;color:#333}.footer-cta{background:var(--color-primary);color:#fff;padding:3rem 2rem;text-align:center}.footer-cta-content,.venue-cta-container{max-width:600px;margin:0 auto}.footer-cta h3{font-size:1.75rem;font-weight:400;margin-bottom:.5rem}.footer-cta p{font-size:1.1rem;opacity:.9;margin-bottom:1.5rem}.footer-cta-button{display:inline-block;background:#fff;color:var(--color-primary);padding:.875rem 2rem;border-radius:var(--radius-pill);text-decoration:none;font-weight:500;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;transition:.3s}.footer-cta-button:hover{background:var(--color-bg);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.2)}.footer-cta-button:focus-visible{outline:#fff solid 3px;outline-offset:2px}.footer-main{background:#fff;border-top:1px solid var(--color-border)}.footer-content{max-width:1200px;margin:0 auto;padding:3rem 2rem;display:flex;gap:3rem;align-items:flex-start}.footer-brand{flex:0 0 280px}.footer-logo a{text-decoration:none}.footer-logo img{width:200px;height:auto}.footer-tagline{font-size:.9rem;color:var(--color-text-light);margin-top:.75rem;line-height:1.5;max-width:220px}.footer-columns{display:flex;flex:1;gap:2.5rem;justify-content:space-between}.footer-col{display:flex;flex-direction:column;gap:.4rem}.footer-col h4{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.75rem;color:var(--color-text)}.footer-col a,.footer-col p{font-size:.9rem;color:var(--color-text-light);text-decoration:none;line-height:1.5;transition:color .2s}.footer-col .contact-label{margin-top:.75rem;margin-bottom:0;font-weight:500;color:var(--color-text)}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.social-icons{display:flex;gap:.75rem}.social-icons a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:50%;color:var(--color-text-light);transition:.2s}.social-icons a:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:translateY(-2px)}.social-icons a:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.social-icons svg{width:18px;height:18px;fill:currentColor}.footer-bottom{background:#fff;border-top:1px solid var(--color-border);padding:1.25rem 2rem;text-align:center}.footer-service-areas,.photo-services-header h2,.portfolio-header h2{margin-bottom:.5rem}.footer-service-areas a{color:var(--color-primary);text-decoration:none;transition:color .2s}.footer-service-areas a:hover{color:var(--color-accent)}.bts-play-button.hidden,.read-more-btn,.venue-hero-split .venue-hero-overlay{display:none}.text-base{font-size:16px}.text-lg{font-size:18px}.text-xl{font-size:20px}.h1,h1{font-size:36px;font-weight:700;line-height:1.1;letter-spacing:-.02em}@media (min-width:768px){.h1,h1{font-size:48px}}@media (min-width:1024px){.h1,h1{font-size:60px}}@media (min-width:1280px){.h1,h1{font-size:72px}}.h2,h2{font-size:36px;font-weight:900;line-height:1.15;letter-spacing:-.02em}@media (min-width:768px){.h2,h2{font-size:48px}}@media (min-width:1024px){.h2,h2{font-size:60px}}.h3,h3{font-size:24px;font-weight:700;line-height:1.2}.h4,h4{font-size:20px;font-weight:600;line-height:1.3}.lead,.subheading{font-size:18px;font-weight:400;line-height:1.6;color:#666}.text-sm{font-size:14px}.text-xs{font-size:12px}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-black{font-weight:900}.section-contact,.section-gallery,.section-two-column,section{padding:var(--section-padding-y) var(--section-padding-x)}section h2{font-size:3rem;font-weight:400;line-height:1.1;color:var(--color-text)}.section-header{text-align:center;margin-bottom:3rem;max-width:900px;margin-left:auto;margin-right:auto}.section-header.align-left{text-align:left;margin-left:0}.section-header.align-right{text-align:right;margin-right:0}.section-header h2{margin-bottom:1rem;color:var(--color-text)}.section-header .section-subheading{font-size:18px;color:var(--color-text-light);line-height:1.6;margin:0}.btn{display:inline-block;padding:.875rem 2rem;background:var(--color-primary);color:#fff;text-decoration:none;text-transform:uppercase;font-size:.875rem;letter-spacing:.1em;border:2px solid var(--color-primary);transition:.3s;cursor:pointer}.btn:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:#fff}.btn:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.btn-outline,.btn-secondary{background:0 0;color:#fff;border-color:#fff}.btn-outline:hover{background:#fff;color:#000}.btn-secondary:hover{background:rgba(255,255,255,.15);color:#fff}.section-jump-links{padding:1.5rem var(--section-padding-x);padding-bottom:2rem;background:var(--color-bg);overflow:visible}.jump-links-container{max-width:900px;margin:0 auto;display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.jump-link{display:inline-block;padding:.5rem 1rem;font-size:.9rem;line-height:1.2;color:var(--color-text);text-decoration:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:.2s;background:var(--color-bg)}.jump-link:hover{border-color:var(--color-text);color:var(--color-text)}.btn-primary,.jump-link-cta{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.jump-link-cta:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:#fff}.hero-buttons-below{max-width:1400px;margin-left:auto;margin-right:auto;padding:1.5rem var(--section-padding-x);padding-bottom:2rem;background:var(--color-bg);display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap}.hero-buttons-below .btn{padding:.5rem 1rem;font-size:.9rem;line-height:1.2;text-transform:none;letter-spacing:0;border-radius:var(--radius-sm)}.section-bts,.section-feature-cards,.section-hero-about,.section-intro,.section-planning,.section-portfolio-bento,.section-services,.section-stats{padding:var(--section-padding-y) var(--section-padding-x);background:var(--color-bg)}.intro-two-column{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;align-items:center}.intro-image img{width:100%;height:auto;display:block;border-radius:var(--radius-md)}.contact-info-box h4,.hero-about-content h2,.intro-content h2,.intro-text p,.section-hero h1,.two-column-content h2{margin-bottom:1.5rem}.planning-container{max-width:1100px;margin:0 auto}.planning-header{text-align:center;margin-bottom:2rem}.contact-form-wrapper h2,.contact-info-box p,.gallery-item-masonry,.hero-about-text p,.planning-header h2,.two-column-text p{margin-bottom:1rem}.planning-header p{font-size:1.1rem;color:#666;max-width:700px;margin:0 auto}.planning-accordion{display:flex;flex-direction:column;gap:12px}.accordion-item{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg)}.accordion-header{width:100%;padding:1.25rem;display:flex;justify-content:space-between;align-items:flex-start;background:0 0;border:none;cursor:pointer;text-align:left;font-family:inherit;transition:background-color .2s}.accordion-header:hover{background:var(--color-bg-alt)}.accordion-header-content{flex:1;padding-right:1.25rem}.accordion-header-content h3{font-size:1.25rem;font-weight:600;color:#000;margin:0 0 .5rem}.accordion-preview{font-size:1rem;line-height:1.5;color:rgba(69,69,69,.6);font-weight:300;margin:0}.accordion-icon{color:#454545;transition:transform .2s;flex-shrink:0;width:24px;height:24px}.accordion-body{padding:0 1.25rem 1.25rem;display:none}.accordion-body.open{display:block}.accordion-body p{font-size:1.1rem;line-height:1.7;color:rgba(69,69,69,.8);font-weight:300;margin:0 0 1rem}.accordion-body p:last-child,.intro-text p:last-child{margin-bottom:0}.intro-text{color:#555;line-height:1.8;font-size:1.1rem}.hero-about-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;align-items:start}.hero-about-image-frame{position:relative;border-radius:var(--radius-lg);overflow:hidden}.hero-about-image-frame img,.hero-about-image-main img{width:100%;height:auto;display:block;border-radius:var(--radius-lg)}.hero-about-image-grid{display:flex;flex-direction:column;gap:.75rem}.hero-about-image-secondary{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.hero-about-image-secondary img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-md);aspect-ratio:3/2}.hero-about-image-secondary img:last-child:nth-child(odd){grid-column:span 2}.hero-about-logo{position:absolute;top:50%;right:-55px;transform:translateY(-50%);width:110px;height:110px;background:var(--color-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(0,0,0,.15);padding:2px;border:1px solid var(--color-accent)}.hero-about-logo img{width:100%;height:100%;object-fit:contain}.hero-about-text{color:#555;line-height:1.7;margin-bottom:2rem}.hero-about-buttons{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}.hero-about-stats{display:flex;gap:3rem;margin-bottom:2rem}.gallery-hero-content,.hero-stat,.sneak-peek-hero-content{text-align:left}.hero-stat-number{display:block;font-size:3.5rem;font-weight:300;color:var(--color-text);line-height:1;letter-spacing:-.02em}.hero-stat-label{display:block;font-size:.9rem;color:var(--color-text-light);margin-top:.25rem}.btn-primary:hover{background:var(--color-primary-hover);color:#fff}.btn-primary:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.stats-container{max-width:1200px;margin:0 auto;display:flex;justify-content:center;gap:4rem;flex-wrap:wrap}.stats-item{text-align:center;opacity:0;transform:scale(.5);animation:.6s ease-out forwards statsPop}.stats-item:first-child{animation-delay:.1s}.stats-item:nth-child(2){animation-delay:.25s}.stats-item:nth-child(3){animation-delay:.4s}@keyframes statsPop{0%{opacity:0;transform:scale(.5)}70%{transform:scale(1.1)}100%{opacity:1;transform:scale(1)}}.stats-number{display:block;font-size:4rem;font-weight:300;color:var(--color-text);line-height:1;letter-spacing:-.02em}.stats-label{display:block;font-size:1.2rem;color:var(--color-text-light);margin-top:.5rem}.section-hero{min-height:70vh;display:flex;align-items:flex-start;justify-content:center;text-align:center;position:relative;background-color:var(--color-bg);background-size:cover;background-position:center;padding-top:1.5rem;width:100vw;margin-left:calc(-50vw + 50%);margin-top:calc(-80px - 2rem)}.section-cta.has-background,.section-hero.has-background,.section-text-banner.has-background{color:#fff}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,var(--overlay-opacity,.4)) 0,rgba(0,0,0,0) 50%);pointer-events:none}.hero-overlay.solid{background:rgba(0,0,0,var(--overlay-opacity,.4))}.hero-content{position:relative;z-index:1;max-width:900px;padding:2rem}.section-hero p{font-size:18px;opacity:.9}@media (min-width:768px){.h3,h3{font-size:30px}.h4,h4{font-size:24px}.lead,.section-header .section-subheading,.section-hero p,.subheading{font-size:20px}}.section-hero.contained{width:auto;max-width:1400px;border-radius:var(--radius-lg);overflow:hidden;margin:2rem auto}@media (max-width:1440px){.hero-buttons-below,.section-hero.contained{margin-left:1rem;margin-right:1rem}}.section-hero.text-bottom{align-items:flex-end}.section-hero.text-bottom .hero-content{padding-bottom:3rem}.section-hero.text-center{align-items:center}.section-hero:not(.has-background){min-height:auto;padding:4rem var(--section-padding-x) 2rem;align-items:center;margin-top:0;width:auto;margin-left:0}.section-hero-text{padding:1rem var(--section-padding-x) 3rem;background:var(--color-bg);text-align:center}.hero-text-container,.section-hero-text-animated .hero-text-container,.venue-section-container{max-width:900px;margin:0 auto}.section-hero-text h1,.section-hero-text-animated h1{font-size:2.5rem;font-weight:300;color:#000;margin-bottom:1rem;line-height:1.2}.hero-text-subtext{font-size:1.25rem;color:#666;font-weight:300;line-height:1.6;margin:0}.section-hero-text-animated{padding:3rem var(--section-padding-x) 2rem;background:var(--color-bg);text-align:center}.hero-animated-words{font-size:1.25rem;color:#666;font-weight:300;line-height:1.8;margin:0}.animated-word{position:relative;display:inline}.animated-word::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--color-accent);opacity:0;animation:4s ease-out infinite underlineFlash;animation-delay:calc(var(--word-index) * 1s)}@keyframes underlineFlash{0%,100%,20%,50%{opacity:0}25%,45%{opacity:1}}.hero-tagline{display:inline}.gallery-hero-container,.sneak-peek-hero-container,.two-column-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.section-two-column.image-right .two-column-image{order:2}.section-two-column.image-right .two-column-content{order:1}.two-column-image img{width:100%;height:auto}.two-column-text{margin-bottom:2rem;line-height:1.8}.section-two-column.no-image .two-column-container{grid-template-columns:1fr;max-width:900px}.stats-row{display:flex;gap:2rem;margin:2rem 0;flex-wrap:wrap}.full-width .stats-row{justify-content:center}.stat-number{display:block;font-size:3rem;font-weight:300;color:var(--color-text);line-height:1;letter-spacing:-.02em}.stat-label{display:block;font-size:.875rem;color:var(--color-text-light);margin-top:.5rem}.services-header{text-align:center;max-width:800px;margin:0 auto 3rem}.services-header h2{font-size:3rem;font-weight:400;line-height:1.1;color:var(--color-text);margin-bottom:1rem}.photo-services-header p,.services-header p{font-size:1.1rem;color:var(--color-text-light)}.services-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.service-card{background:var(--color-bg);border-radius:var(--radius-lg);padding:2rem;display:flex;flex-direction:column;align-items:flex-start;min-height:320px;border:1px solid var(--color-border);box-shadow:0 4px 12px rgba(0,0,0,.08)}.service-badge{display:inline-block;background:#000;color:#fff;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;padding:.4rem 1rem;border-radius:var(--radius-pill);margin-bottom:1.5rem}.service-card h3{font-size:1.4rem;font-weight:600;line-height:1.3;color:var(--color-text);margin-bottom:1rem}.service-card p{font-size:.95rem;line-height:1.6;color:var(--color-text-light);margin-bottom:1.5rem;flex-grow:1}.service-link{font-size:.9rem;font-weight:500;color:#06c;text-decoration:none;transition:color .2s;white-space:nowrap}.service-link:hover{color:#049}.section-cta{padding:var(--section-padding-y) var(--section-padding-x);text-align:center;background-color:var(--color-bg);background-size:cover;background-position:center;position:relative}.section-cta.has-background::before{content:'';position:absolute;inset:0;background:rgba(0,0,0,.5)}.cta-content{position:relative;z-index:1;max-width:700px;margin:0 auto}.section-cta h2{font-size:2.5rem;margin-bottom:1rem}.section-cta p{font-size:1.125rem;margin-bottom:2rem;opacity:.9}.section-text-banner{padding:var(--section-padding-y) var(--section-padding-x);text-align:center;position:relative;background-size:cover;background-position:center}.banner-overlay{position:absolute;inset:0;background:#000;pointer-events:none}.banner-content{position:relative;z-index:1;max-width:900px;margin:0 auto}.banner-text{font-size:1.125rem;line-height:1.8}.bts-container{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1.5fr;gap:3rem;align-items:center}.bento-header h2,.bts-content h2{margin-bottom:.75rem}.bts-subtext{font-size:1.1rem;color:#666;margin-bottom:1rem;font-weight:500}.bts-description{font-size:1rem;color:#555;line-height:1.7}.bts-video-wrapper{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.12);cursor:pointer}.bts-video{display:block;width:100%;height:auto;aspect-ratio:16/9}.bts-play-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80px;height:80px;background:rgba(0,0,0,.7);border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2;transition:background .3s,transform .3s;pointer-events:auto}.bts-play-button svg{width:36px;height:36px;color:#fff;margin-left:4px}.bts-play-button:hover{background:rgba(0,0,0,.85);transform:translate(-50%,-50%) scale(1.1)}.bento-container,.gallery-index-container,.photo-services-container,.portfolio-slider-container,.section-gallery .gallery-container,.sneak-peek-index-container{max-width:1200px;margin:0 auto}.bento-header{text-align:center;margin-bottom:2.5rem}.bento-header p{font-size:1.1rem;color:var(--color-text-light);max-width:700px;margin:0 auto}.bento-grid{column-count:4;column-gap:12px}.bento-item{break-inside:avoid;margin-bottom:12px;border-radius:var(--radius-lg);overflow:hidden;position:relative}.bento-item img{width:100%;height:auto;display:block;transition:transform .6s cubic-bezier(.25, .1, .25, 1)}.bento-item:hover img,.gallery-masonry-item:hover img{transform:scale(1.02)}.bento-cta{text-align:center;margin-top:2rem}.portfolio-link-btn{display:inline-block;padding:1rem 2rem;background:0 0;color:#333;border:2px solid #333;border-radius:var(--radius-sm);text-decoration:none;font-weight:500;transition:.2s}.portfolio-link-btn:hover{background:#333;color:#fff}@media (max-width:1024px){.services-grid{grid-template-columns:repeat(2,1fr)}.bento-grid{column-count:3}}.section-mini-gallery{padding:2rem var(--section-padding-x) 3rem;background:var(--color-bg)}.section-mini-gallery h2{text-align:center;margin-bottom:1.5rem}.mini-gallery-cta{text-align:center;margin-top:1.5rem}.view-more-link{display:inline-flex;align-items:center;gap:.5rem;color:#000;text-decoration:none;font-size:1rem;font-weight:500;letter-spacing:.02em;padding:.75rem 0;transition:color .3s}.view-more-link::after{content:'→';display:inline-block;transition:transform .3s}.gallery-caption,.location-breadcrumb span,.photo-service-link:hover,.view-more-link:hover{color:#666}.view-more-link:hover::after{transform:translateX(6px)}.mini-grid{column-count:4;column-gap:8px;max-width:1200px;margin:0 auto}.mini-grid-item{break-inside:avoid;margin-bottom:8px;border-radius:var(--radius-md);overflow:hidden}.gallery-card-image img,.gallery-masonry-item img,.mini-grid-item img,.real-wedding-image img,.sneak-peek-card-image img{width:100%;height:auto;display:block;transition:transform .3s}.mini-grid-item:hover img{transform:scale(1.03)}@media (max-width:768px){.truncatable-text .text-content{overflow:hidden;transition:max-height .4s}.truncatable-text.collapsed .text-content{max-height:10em}.truncatable-text.collapsed .text-content::after{content:"";position:absolute;bottom:0;left:0;right:0;height:4em;background:linear-gradient(to bottom,transparent,var(--truncate-bg,#fff));pointer-events:none}.truncatable-text.collapsed.bg-alt .text-content::after{background:linear-gradient(to bottom,transparent,#f9f9f9)}.truncatable-text.expanded .text-content{max-height:2000px}.hero-about-logo,.truncatable-text.expanded .text-content::after{display:none}.read-more-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:0;background:0 0;border:none;font-family:inherit;font-size:.95rem;font-weight:500;color:var(--color-primary,#722f37);cursor:pointer;transition:opacity .2s}.read-more-btn:hover{opacity:.8}.read-more-btn::after{content:"↓";font-size:.85em;transition:transform .3s}.truncatable-text.expanded .read-more-btn::after{transform:rotate(180deg)}.no-js .truncatable-text .text-content{max-height:none!important}.no-js .read-more-btn,.no-js .truncatable-text .text-content::after{display:none!important}section h2{font-size:2.25rem}.accordion-header-content h3,.hero-animated-words,.hero-text-subtext{font-size:1.1rem}.accordion-preview{font-size:.9rem}.accordion-body p{font-size:1rem}.section-hero-text h1,.section-hero-text-animated h1{font-size:1.8rem}.bento-grid{column-count:2;column-gap:8px}.bento-item{margin-bottom:8px;border-radius:var(--radius-md)}.mini-grid{column-count:3;column-gap:6px}.mini-grid-item{margin-bottom:6px;border-radius:var(--radius-md)}}.section-gallery-hero,.section-photo-services,.section-sneak-peek-hero{padding:var(--section-padding-y-lg) var(--section-padding-x);background:var(--color-bg-alt)}.gallery-index-header,.photo-services-header,.sneak-peek-index-header{text-align:center;margin-bottom:3rem}.photo-services-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5rem}.photo-service-card{background:var(--color-bg);padding:2rem 1.5rem;border-radius:var(--radius-lg);text-align:center;transition:transform .3s,box-shadow .3s}.photo-service-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.1)}.photo-service-card h3{font-size:1.25rem;margin-bottom:1rem;color:var(--color-text)}.photo-service-card p{font-size:.95rem;color:var(--color-text-light);line-height:1.6;margin-bottom:1.5rem}.photo-service-link{display:inline-flex;align-items:center;gap:.4rem;color:#000;text-decoration:none;font-size:.9rem;font-weight:500;transition:color .3s}.photo-service-link::after{content:'→';transition:transform .3s}.feature-link:hover svg,.photo-service-link:hover::after{transform:translateX(4px)}@media (max-width:1024px){.photo-services-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.photo-services-grid{grid-template-columns:repeat(2,1fr)}.photo-service-card{padding:1.5rem 1.25rem}}.section-portfolio-slider{padding:3rem 0;background:var(--color-bg);overflow:hidden}.portfolio-header{text-align:left;padding:0 var(--section-padding-x);margin-bottom:2rem}.portfolio-header p{font-size:1.1rem;color:var(--color-text-light);max-width:800px}.portfolio-card{border:2px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;margin:0 var(--section-padding-x);background:var(--color-bg)}.featured-session-image,.gallery-card-image,.portfolio-row-wrapper,.real-wedding-image,.sneak-peek-card-image{overflow:hidden}.portfolio-row-wrapper+.portfolio-row-wrapper{margin-top:2px}.portfolio-row-wrapper:first-child{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.portfolio-row-wrapper:last-child{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.portfolio-slide{flex-shrink:0;height:200px}.portfolio-slide img{height:100%;width:auto;object-fit:cover;display:block}.gallery-container{max-width:1200px;margin:0 auto;text-align:center}.gallery-intro{max-width:600px;margin:0 auto 3rem}.contact-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1.5fr;gap:4rem}.contact-sidebar img{width:100%;margin-bottom:2rem}.contact-info-box{background:var(--color-bg-alt);padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--color-border)}.contact-social{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #ddd}.contact-social strong{display:block;margin-bottom:.75rem}.contact-social-icons{display:flex;gap:1rem}.contact-social-icons a{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #ddd;border-radius:50%;transition:.2s}.contact-social-icons a:hover{background:#000;border-color:#000}.contact-social-icons a:hover svg{fill:#fff}.contact-social-icons svg{width:18px;height:18px;fill:#333}.contact-intro{margin-bottom:2rem;color:#666}.contact-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column}.form-group label{font-size:.875rem;font-weight:500;margin-bottom:.5rem}.form-group label .required{color:#c00}.form-group label .label-hint{font-weight:400;color:#888;font-size:.8rem}.form-group input,.form-group textarea{padding:.875rem;border:1px solid #ddd;font-family:inherit;font-size:1rem;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-primary)}.form-group input:focus-visible,.form-group textarea:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-color:var(--color-primary)}.feature-cards-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.feature-card{background:var(--color-bg);padding:2rem;border-radius:var(--radius-lg);box-shadow:0 2px 8px rgba(0,0,0,.06);display:flex;flex-direction:column}.feature-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem 1rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;width:fit-content;margin-bottom:1.5rem}.badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge-primary{background:#0891b2;color:#fff}.badge-dark{background:#1f2937;color:#fff}.badge-accent{background:#14b8a6;color:#fff}.feature-card h3{font-size:1.5rem;font-weight:700;line-height:1.3;margin-bottom:1rem;color:var(--color-text)}.feature-card p{font-size:1rem;line-height:1.7;color:var(--color-text-light);margin-bottom:1.5rem;flex-grow:1}.feature-link{display:inline-flex;align-items:center;gap:.5rem;color:#0891b2;font-weight:500;text-decoration:none;transition:gap .3s}.feature-link:hover{gap:.75rem}.feature-link svg{transition:transform .3s}.sneak-peek-hero-image img{width:100%;height:auto;display:block;box-shadow:0 20px 60px rgba(0,0,0,.15);border-radius:var(--radius-md);object-fit:cover;object-position:bottom}.sneak-peek-label{display:inline-block;text-transform:uppercase;letter-spacing:.2em;font-size:.875rem;color:var(--color-accent);margin-bottom:1rem}.sneak-peek-hero-content h1{font-size:3rem;font-weight:400;margin:0;line-height:1.2;color:var(--color-text)}.sneak-peek-date{font-size:1.125rem;color:var(--color-text-light);margin-top:1rem;font-style:italic}.section-gallery-index,.section-sneak-peek-index{padding:var(--section-padding-y-lg) var(--section-padding-x)}.gallery-index-header h1,.sneak-peek-index-header h1{font-size:2.5rem;font-weight:400;margin:0 0 .5rem}.gallery-index-header p,.sneak-peek-index-header p{color:var(--color-text-light);font-size:1.125rem;margin:0}.gallery-index-grid,.sneak-peek-grid{column-count:3;column-gap:2rem}.gallery-card,.sneak-peek-card{display:block;text-decoration:none;color:inherit;background:var(--color-bg);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:transform .3s,box-shadow .3s;break-inside:avoid;margin-bottom:2rem}.gallery-card:hover,.sneak-peek-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.12)}.featured-session-link:hover .featured-session-image img,.gallery-card:hover .gallery-card-image img,.real-wedding-card:hover .real-wedding-image img,.session-card:hover .session-image img,.sneak-peek-card:hover .sneak-peek-card-image img{transform:scale(1.05)}.gallery-card-content,.sneak-peek-card-content{padding:1.5rem}.gallery-card-venue,.sneak-peek-card-type{display:inline-block;text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;color:var(--color-accent);margin-bottom:.5rem}.gallery-card h2,.sneak-peek-card h2{font-size:1.25rem;font-weight:400;margin:0 0 .5rem;line-height:1.3}.gallery-card-date,.sneak-peek-card-date{font-size:.875rem;color:var(--color-text-light)}@media (max-width:900px){:root{--section-padding-x:var(--space-lg);--section-padding-y:var(--space-2xl);--section-padding-y-lg:var(--space-3xl)}.site-header{height:auto}.header-content{height:80px}.nav-left,.nav-right{display:none}.mobile-menu-toggle{display:flex}.site-main{padding-top:calc(80px + 40px)}.footer-cta{padding:2.5rem 1.5rem}.footer-cta h3{font-size:1.4rem}.footer-cta p{font-size:1rem}.footer-content{flex-direction:column;align-items:center;text-align:center;padding:2.5rem 1.5rem}.footer-brand{flex:none;width:100%}.footer-columns{flex-direction:column;gap:2rem;width:100%;margin-top:1rem}.footer-col{align-items:center}.social-icons{justify-content:center}.footer-bottom{padding:1rem 1.5rem}.bts-container,.hero-about-container,.intro-two-column,.two-column-container{grid-template-columns:1fr;gap:2rem}.hero-about-stats{flex-wrap:wrap;gap:2rem}.hero-stat-number{font-size:2.5rem}.hero-about-logo{width:90px;height:90px;bottom:-15px;right:-10px}.bts-content,.sneak-peek-hero-content{text-align:center}section h2{font-size:1.75rem}.section-hero h1{font-size:2.25rem}.section-two-column.image-right .two-column-container{direction:ltr}.contact-container,.feature-cards-grid,.form-row,.services-grid{grid-template-columns:1fr}.services-header h2,.sneak-peek-hero-content h1{font-size:2rem}.service-card{min-height:auto}.gallery-grid.columns-3,.gallery-grid.columns-4{column-count:2}.sneak-peek-hero-container{grid-template-columns:1fr;gap:2rem;text-align:center}.sneak-peek-hero-image{max-width:400px;margin:0 auto}.sneak-peek-grid{column-count:2;column-gap:1.5rem}.sneak-peek-card{margin-bottom:1.5rem}}@media (max-width:600px){.hero-buttons-below,.jump-links-container{gap:.5rem}.hero-buttons-below .btn,.jump-link{padding:.5rem 1rem;font-size:.8rem}.stats-container{gap:2rem}.stat-number,.stats-number{font-size:2.5rem}.stats-row{justify-content:center}section{padding:2rem 1.5rem}.gallery-grid.columns-2,.gallery-grid.columns-3,.gallery-grid.columns-4,.sneak-peek-grid{column-count:1}.sneak-peek-index-header h1{font-size:2rem}}.gallery-hero-image img{width:100%;height:auto;display:block;box-shadow:0 20px 60px rgba(0,0,0,.15);border-radius:var(--radius-md);object-fit:cover}.gallery-hero-content h1{font-size:3.5rem;font-weight:300;margin:0;line-height:1.2;color:var(--color-text)}.gallery-hero-date{font-size:1.25rem;color:var(--color-text-light);margin-top:1rem;font-style:italic}.gallery-hero-venue{font-size:1.125rem;color:var(--color-accent);margin-top:.5rem;text-transform:uppercase;letter-spacing:.1em;font-weight:500}.section-gallery-story{padding:var(--section-padding-y-lg) var(--section-padding-x);background:var(--color-bg)}.gallery-story-container{max-width:800px;margin:0 auto}.gallery-story-content{font-size:1.25rem;line-height:1.9;color:var(--color-text);text-align:center}.section-gallery-grid{padding:2rem var(--section-padding-x) 4rem;background:var(--color-bg)}.gallery-grid-container{max-width:1400px;margin:0 auto}.gallery-grid,.gallery-masonry{column-gap:1rem}.gallery-grid.columns-2,.gallery-masonry.columns-2{column-count:2}.gallery-grid.columns-3,.gallery-masonry.columns-3{column-count:3}.gallery-grid.columns-4,.gallery-masonry.columns-4{column-count:4}.gallery-masonry-item{break-inside:avoid;margin-bottom:1rem;border-radius:var(--radius-md);overflow:hidden}@media (max-width:900px){.gallery-hero-container{grid-template-columns:1fr;gap:2rem;text-align:center}.gallery-hero-image{max-width:500px;margin:0 auto}.gallery-hero-content{text-align:center}.gallery-hero-content h1{font-size:2.5rem}.gallery-masonry.columns-3,.gallery-masonry.columns-4{column-count:2}.gallery-index-grid{column-count:2;column-gap:1.5rem}.gallery-card{margin-bottom:1.5rem}}.venue-hero{position:relative;text-align:center;color:#fff}.venue-hero-image{position:relative;width:100%}.gallery-item-masonry img,.venue-hero-image img{width:100%;height:auto;display:block}.venue-hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.4)}.venue-hero-content{position:absolute;bottom:0;left:0;right:0;z-index:2;max-width:800px;margin:0 auto;padding:2rem}.venue-category-badge{display:inline-block;padding:.5rem 1rem;background:rgba(255,255,255,.2);border-radius:var(--radius-sm);font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem}.venue-hero h1{font-size:2.5rem;margin-bottom:1rem;font-weight:400}.venue-hero-subtitle{font-size:1.2rem;opacity:.9}.venue-hero-text-only{background:linear-gradient(135deg,#2c2c2c 0,#1a1a1a 100%);padding:4rem 2rem}.venue-hero-text-only .venue-hero-content{position:relative;padding:0}.venue-hero-split{display:grid;grid-template-columns:1fr 1fr;min-height:500px;background:linear-gradient(135deg,#f8f6f3 0,#efe9e1 100%)}.venue-hero-split .venue-category-badge{background:rgba(114,47,55,.1);color:var(--color-primary,#722f37)}.venue-hero-split h1{color:#333;font-size:2.25rem;margin-bottom:1rem}.venue-hero-split .venue-hero-subtitle{color:#555;margin-bottom:2rem}.venue-hero-split .venue-hero-image{position:relative;overflow:hidden}.location-hero-image img,.venue-hero-split .venue-hero-image img{width:100%;height:100%;object-fit:cover}.venue-hero-split .venue-hero-content{position:relative;display:flex;flex-direction:column;justify-content:center;padding:3rem;max-width:none;text-align:left}.venue-hero-cta{margin-top:1.5rem}.venue-hero-cta .btn{display:inline-block;padding:.875rem 2rem;background:var(--color-accent,#b8860b);color:#fff;text-decoration:none;font-size:.9rem;font-weight:500;letter-spacing:.05em;border-radius:var(--radius-sm);transition:.2s}.venue-hero-cta .btn:hover{background:var(--color-accent-dark,#8b6914);transform:translateY(-2px)}.venue-breadcrumb{padding:1rem 2rem;background:#f9f9f9;font-size:.9rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.explore-more-cta a,.vendors-cta a,.venue-breadcrumb a{color:#666;text-decoration:none}.explore-more-cta a:hover,.vendors-cta a:hover,.venue-breadcrumb a:hover{color:#333}.venue-breadcrumb span{color:#999}.venue-jump-links{background:#fff;border-bottom:1px solid #e5e5e5}.venue-jump-links .jump-links-container{display:flex;justify-content:center;gap:2rem;padding:1rem 2rem;max-width:1200px;margin:0 auto}.venue-jump-links .jump-link{color:#666;text-decoration:none;font-size:.9rem;padding:.5rem 0;border:none;border-bottom:2px solid transparent;border-radius:0;background:0 0;transition:.2s}.venue-jump-links .jump-link:hover{color:#333;border-bottom-color:#333;background:0 0}.location-section,.venue-section{padding:4rem 2rem}.location-section--alt,.section-sessions,.venue-section:nth-child(2n){background:#f9f9f9}.venue-section h2{font-size:1.75rem;margin-bottom:1.5rem;color:#333}.venue-section p{font-size:1.05rem;line-height:1.8;color:#555;margin-bottom:1rem}.venue-section ul{margin:1.5rem 0;padding-left:1.5rem}.venue-section li{font-size:1.05rem;line-height:1.7;color:#555;margin-bottom:.75rem}.best-times-grid,.photo-locations-grid,.photo-spots-grid,.tips-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}.best-time-card,.photo-location-card,.photo-spot-card,.tip-card{background:#fff;padding:1.5rem;border-radius:var(--radius-md);border:1px solid #e5e5e5}.best-time-card h3,.photo-location-card h3,.photo-spot-card h3,.tip-card h3{font-size:1.1rem;margin-bottom:.5rem;color:#333}.best-time-card p,.photo-location-card p,.photo-spot-card p,.timeline-content p,.tip-card p{font-size:.95rem;margin-bottom:0}.featured-session-card,.timeline-container{margin-top:2rem}.timeline-item{display:grid;grid-template-columns:100px 1fr;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid #e5e5e5}.timeline-item:last-child{border-bottom:none}.timeline-time{font-weight:600;color:#333}.real-wedding-info h3,.timeline-content h3{font-size:1.1rem;margin-bottom:.25rem;color:#333}.location-section--notice{padding:2rem;background:#fffbeb}.location-section-container{max-width:900px;margin:0 auto}.location-section h2{font-size:1.75rem;margin-bottom:1.5rem;color:#333}.location-section p{font-size:1.05rem;line-height:1.8;color:#555;margin-bottom:1rem}.location-section ul{margin:1.5rem 0;padding-left:1.5rem}.location-section li{font-size:1.05rem;line-height:1.7;color:#555;margin-bottom:.75rem}.development-notice{background:#fff;border:2px dashed #e5c07b;border-radius:var(--radius-md);padding:1.5rem;text-align:center}.development-notice p{margin:0;color:#856404}.location-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.location-gallery-item img,.venue-gallery-item img{width:100%;height:auto;display:block;border-radius:var(--radius-sm)}.location-hero{position:relative;min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}.location-hero-image{position:absolute;inset:0;z-index:0}.location-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.3),rgba(0,0,0,.5))}.location-hero-content{position:relative;z-index:1;max-width:800px;padding:2rem}.location-hero-text-only{background:linear-gradient(135deg,#2c3e50,#34495e);min-height:40vh}.location-category-badge{display:inline-block;background:rgba(255,255,255,.2);padding:.5rem 1rem;border-radius:2rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem}.location-hero h1{font-size:2.5rem;margin-bottom:.5rem}.location-hero-subtitle{font-size:1.25rem;opacity:.9}.location-hero-cta{display:inline-block;margin-top:1.5rem;color:#fff;text-decoration:none;border:2px solid rgba(255,255,255,.5);padding:.75rem 1.5rem;border-radius:var(--radius-md);transition:.3s}.location-hero-cta:hover{background:rgba(255,255,255,.1);border-color:#fff}.location-hero-split{display:grid;grid-template-columns:1fr 1fr;min-height:60vh;text-align:left;color:#333}.location-hero-split .location-hero-content{display:flex;flex-direction:column;justify-content:center;padding:3rem;background:#f9f9f9}.location-hero-split .location-category-badge,.location-hero-split .location-hero-cta:hover{background:var(--color-accent,#b8860b);color:#fff}.location-hero-split .location-hero-cta{color:var(--color-accent,#b8860b);border-color:var(--color-accent,#b8860b)}.location-breadcrumb{padding:1rem 2rem;background:#f5f5f5;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.location-breadcrumb a{color:var(--color-accent,#b8860b);text-decoration:none}.location-breadcrumb a:hover{text-decoration:underline}.location-jump-links{position:sticky;top:0;background:#fff;border-bottom:1px solid #e5e5e5;z-index:100;padding:0 2rem}.location-jump-links .jump-links-container{max-width:900px;margin:0 auto;display:flex;gap:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.location-jump-links .jump-links-container::-webkit-scrollbar{display:none}.location-jump-links .jump-link{padding:1rem 1.25rem;text-decoration:none;color:#666;font-size:.9rem;white-space:nowrap;border-bottom:2px solid transparent;transition:.2s}.location-jump-links .jump-link:hover{color:var(--color-accent,#b8860b);border-bottom-color:var(--color-accent,#b8860b)}.section-location-cta{background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;padding:4rem 2rem;text-align:center}.location-cta-container{max-width:700px;margin:0 auto}.section-location-cta h2{font-size:2rem;margin-bottom:1rem}.section-location-cta p{font-size:1.1rem;opacity:.9;margin-bottom:2rem}.section-location-cta .btn-primary{display:inline-block;background:var(--color-accent,#b8860b);color:#fff;padding:1rem 2rem;border-radius:var(--radius-md);text-decoration:none;font-weight:500;transition:transform .2s,box-shadow .2s}.section-location-cta .btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.3)}.explore-more-links{margin-top:2rem;display:flex;justify-content:center;gap:1rem;font-size:.9rem}.explore-more-links a{color:rgba(255,255,255,.8);text-decoration:none}.explore-more-links a:hover{color:#fff;text-decoration:underline}.explore-more-links span{color:rgba(255,255,255,.4)}.sessions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.session-card{display:block;background:#fff;border-radius:var(--radius-md);overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 2px 8px rgba(0,0,0,.08);transition:transform .3s,box-shadow .3s}.featured-session-link:hover,.real-wedding-card:hover,.session-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.12)}.session-image{aspect-ratio:3/2;overflow:hidden}.session-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.real-wedding-info,.session-info{padding:1rem 1.25rem}.session-info h3{font-size:1.1rem;margin-bottom:.25rem}.session-type{color:var(--color-accent,#b8860b);font-size:.85rem}.venue-gallery-grid{column-count:3;column-gap:1rem;margin-top:2rem}.gallery-item,.venue-gallery-item{break-inside:avoid;margin-bottom:1rem}.venue-details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:2rem}.venue-detail-item h3{font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;color:#888;margin-bottom:.5rem}.venue-detail-item p{font-size:1.05rem;color:#333;margin-bottom:0}.recommended-vendors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-top:2rem;margin-bottom:1.5rem}.recommended-vendor-card{display:block;background:#fff;border:1px solid #e5e5e5;border-radius:var(--radius-md);padding:1.5rem;text-decoration:none;color:inherit;transition:.2s;position:relative}.recommended-vendor-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.1);border-color:var(--color-primary,#722f37)}.vendor-category-tag{display:inline-block;padding:.25rem .5rem;background:#f0f0f0;border-radius:var(--radius-sm);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#666;margin-bottom:.75rem}.recommended-vendor-card h3{font-size:1.15rem;margin-bottom:.5rem;color:#333}.recommended-vendor-card p{font-size:.95rem;color:#666;margin-bottom:1rem}.view-vendor{font-size:.9rem;color:var(--color-primary,#722f37);font-weight:500}.vendors-cta{text-align:center;margin-top:1rem}.real-weddings-grid{column-count:3;column-gap:1.5rem;margin-top:2rem}.real-wedding-card{display:block;text-decoration:none;color:inherit;background:#fff;border-radius:var(--radius-md);overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08);transition:transform .3s,box-shadow .3s;break-inside:avoid;margin-bottom:1.5rem}.real-wedding-date{font-size:.85rem;color:#888}.section-explore-more{padding:4rem 2rem;background:#f9f9f9}.explore-more-container{max-width:800px;margin:0 auto;text-align:center}.explore-more-container h2{font-size:1.5rem;margin-bottom:1.5rem;color:#333}.explore-more-grid{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.explore-link{padding:.75rem 1.5rem;background:#fff;border-radius:var(--radius-sm);text-decoration:none;color:#333;font-size:.95rem;transition:background .2s}.explore-link:hover{background:#e5e5e5}.section-venue-cta{padding:5rem 2rem;background:#333;text-align:center}.section-venue-cta h2{font-size:2rem;color:#fff;margin-bottom:1rem}.section-venue-cta p{font-size:1.1rem;color:rgba(255,255,255,.8);margin-bottom:2rem}.section-venue-cta .btn{display:inline-block;padding:1rem 2rem;background:#fff;color:#333;text-decoration:none;border-radius:var(--radius-sm);font-weight:500;transition:.2s}.section-venue-cta .btn:hover{background:#f0f0f0;transform:translateY(-2px)}.featured-session-link{display:grid;grid-template-columns:1fr 1.5fr;gap:2rem;text-decoration:none;color:inherit;background:#fff;border-radius:var(--radius-md);overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08);transition:transform .3s,box-shadow .3s}.featured-session-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.featured-session-content{padding:2rem;display:flex;flex-direction:column;justify-content:center}.featured-session-content h3{font-size:1.5rem;margin-bottom:.25rem;color:#333}.featured-session-type{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:#888;margin-bottom:1rem}.featured-session-content p:not(.featured-session-type){font-size:1rem;color:#555;line-height:1.7;margin-bottom:1.25rem}.featured-session-cta{font-size:.95rem;color:var(--color-primary,#722f37);font-weight:500}@media (max-width:1024px){.real-weddings-grid{column-count:2}}@media (max-width:768px){.portfolio-slide{height:130px}.portfolio-card{margin:0 1rem}.portfolio-header{padding:0 1rem;text-align:center}.gallery-story-content{font-size:1.1rem;line-height:1.8}.location-hero h1,.venue-hero h1,.venue-hero-split h1{font-size:1.75rem}.location-hero-split,.venue-hero-split{grid-template-columns:1fr;min-height:auto}.location-hero-split .location-hero-image,.venue-hero-split .venue-hero-image{aspect-ratio:16/9}.location-hero-split .location-hero-content,.venue-hero-split .venue-hero-content{padding:2rem;text-align:center}.location-jump-links .jump-links-container,.venue-jump-links .jump-links-container{gap:1rem;overflow-x:auto;justify-content:flex-start}.best-times-grid,.featured-session-link,.photo-locations-grid,.photo-spots-grid,.tips-grid,.venue-details-grid{grid-template-columns:1fr}.location-gallery-grid{grid-template-columns:repeat(2,1fr)}.venue-gallery-grid{column-count:2}.timeline-item{grid-template-columns:1fr;gap:.5rem}.explore-more-grid{flex-direction:column}.real-weddings-grid{column-count:2;column-gap:1rem}.real-wedding-card{margin-bottom:1rem}.featured-session-image{aspect-ratio:3/2}.featured-session-content{padding:1.5rem}.gallery-item-masonry{width:calc(50% - 8px)!important}}@media (max-width:600px){.gallery-index-grid,.gallery-masonry.columns-2,.gallery-masonry.columns-3,.gallery-masonry.columns-4,.real-weddings-grid{column-count:1}.gallery-masonry-item{margin-bottom:.75rem}.gallery-index-header h1{font-size:2rem}.location-gallery-grid,.venue-gallery-grid{column-count:1;grid-template-columns:1fr}}.section-gallery{padding:3rem 1rem}.gallery-balanced{display:flex;gap:1rem;align-items:flex-start}.gallery-balanced-column{flex:1;display:flex;flex-direction:column;gap:1rem}.gallery-balanced-item img,.gallery-item img{width:100%;height:auto;display:block;border-radius:4px}.gallery-caption{font-size:.9rem;color:var(--color-text-light,#666);margin-top:.5rem;text-align:center}@media (max-width:768px){.gallery-grid.columns-3,.gallery-grid.columns-4{column-count:2}}@media (max-width:480px){:root{--section-padding-x:0.75rem;--section-padding-y:2.5rem;--section-padding-y-lg:var(--space-2xl)}.bento-grid,.mini-grid{column-count:2}.photo-services-grid{grid-template-columns:1fr}.gallery-balanced-column{flex:0 0 100%}.gallery-balanced{flex-wrap:wrap}.gallery-item-masonry{width:100%!important}.gallery-grid,.gallery-grid.columns-2,.gallery-grid.columns-3,.gallery-grid.columns-4{column-count:1}}.migration-banner{background:#d4af37;color:#1a1a2e;padding:10px 20px;text-align:center;font-size:.9rem;position:fixed;top:0;left:0;right:0;z-index:101}.migration-banner a{color:#1a1a2e;text-decoration:underline;font-weight:600}.has-migration-banner .site-header{top:40px}.has-migration-banner .site-main{padding-top:calc(var(--header-height) + 40px + var(--space-xl,2rem))}@media (max-width:768px){.migration-banner{padding:8px 15px;font-size:.75rem;line-height:1.4}.has-migration-banner .site-header{top:50px}.has-migration-banner .site-main{padding-top:calc(var(--header-height,80px) + 50px + 1rem)}}