/* Variant B: editorial scale, asymmetry, authentic wedding photography. */
body.home .elementor.elementor-2016{--kp-ink:#252722;--kp-paper:#f4f1eb;--kp-line:#ccc6bb;background:var(--kp-paper);color:var(--kp-ink)}
body.home .elementor.elementor-2016 .kp-x-section,body.home .elementor.elementor-2016 .kp-x-hero{--container-max-width:1440px;--width:100%;width:100%;max-width:none;gap:32px;padding:100px 5vw;background:var(--kp-paper)}
body.home .elementor.elementor-2016 .kp-x-section>.e-con-inner{max-width:1440px;width:100%;gap:32px}
body.home .elementor.elementor-2016 .kp-x-section h2{font-size:clamp(44px,5.4vw,84px);line-height:1.03;letter-spacing:-.035em;color:var(--kp-ink)}
body.home .elementor.elementor-2016 .kp-x-section .elementor-widget-text-editor{line-height:1.8}
body.home .elementor.elementor-2016 .elementor-button{border-radius:0;padding:19px 27px;transition:background .2s ease,transform .2s ease}
body.home .elementor.elementor-2016 .elementor-button:hover{transform:translateY(-3px)}
body.home .elementor.elementor-2016 a:focus-visible{outline:3px solid #8a6f5d;outline-offset:5px}
body.home .elementor.elementor-2016 .kp-x-hero{padding-top:160px;padding-bottom:70px;min-height:0;justify-content:flex-start;background-image:none}
body.home .elementor.elementor-2016 .kp-x-hero:before{display:none}
body.home .elementor.elementor-2016 .kp-x-hero h1{font-size:clamp(60px,7.8vw,124px);line-height:.92;letter-spacing:-.045em;color:var(--kp-ink);max-width:1350px;margin:0}
body.home .elementor.elementor-2016 .kp-x-hero>.elementor-widget-heading:first-child .elementor-heading-title{color:var(--kp-ink);font-size:12px;letter-spacing:.17em;line-height:1.5}
body.home .elementor.elementor-2016 .kp-x-hero-row{display:grid;grid-template-columns:minmax(0, .75fr) minmax(0,1.45fr);gap:6vw;align-items:end;margin-top:28px}
body.home .elementor.elementor-2016 .kp-x-hero-copy{gap:28px;padding-bottom:30px;min-width:0}
body.home .elementor.elementor-2016 .kp-x-hero-copy .elementor-widget-text-editor{max-width:440px;color:var(--kp-ink);font-size:18px}
body.home .elementor.elementor-2016 .kp-x-hero-copy .e-con{gap:12px;flex-direction:column;align-items:flex-start}
body.home .elementor.elementor-2016 .kp-x-hero-photos{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.48fr);gap:18px;align-items:end;min-width:0}
body.home .elementor.elementor-2016 .kp-x-hero-photos img{display:block;width:100%;height:420px;object-fit:cover}
body.home .elementor.elementor-2016 .kp-x-hero-inset{padding-bottom:50px}
body.home .elementor.elementor-2016 .kp-x-hero-inset img{height:290px}
body.home .elementor-13683 .elementor-element-076fcc2 img{filter:brightness(0)}
body.home .elementor-13683 .elementor-element-5d60342 .elementor-icon{color:#252722;fill:#252722}
body.home .elementor.elementor-2016 .kp-x-projects{padding-top:65px;border-top:1px solid var(--kp-line)}
body.home .elementor.elementor-2016 .kp-x-projects .elementor-element-b431a34{padding:0;align-items:flex-start;max-width:860px}
body.home .elementor.elementor-2016 .kp-x-projects-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:54px 24px;width:100%;margin-top:20px;padding:0}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project{grid-column:span 4;min-width:0;width:100%;padding:0;border:0;gap:0;background:transparent;align-self:start}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(1){grid-column:span 7}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(2){grid-column:span 5;padding-top:100px}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(6){grid-column:span 4;padding-top:65px}
body.home .elementor.elementor-2016 .kp-x-projects-grid img{display:block;width:100%;height:350px;object-fit:cover;transition:filter .3s ease}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(1) img{height:530px}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(2) img{height:430px}
body.home .elementor.elementor-2016 .kp-x-projects-grid .elementor-widget-image{width:100%;margin:0}
body.home .elementor.elementor-2016 .kp-x-projects-grid .elementor-widget-image a{display:block;width:100%}
body.home .elementor.elementor-2016 .kp-x-projects-grid .elementor-widget-heading{padding:0;margin:0;text-align:left}
body.home .elementor.elementor-2016 .kp-x-projects-grid .elementor-heading-title{color:var(--kp-ink);font-size:19px;line-height:1.3;padding:0}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project>.elementor-widget-heading:first-of-type .elementor-heading-title,body.home .elementor.elementor-2016 .kp-x-projects-grid .e-con>.elementor-widget-heading:first-child .elementor-heading-title{font-size:36px;line-height:1.1}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project>.elementor-widget-heading:first-of-type{padding-top:18px}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project>.e-con{background:transparent;padding:18px 0 0;gap:6px}
body.home .elementor.elementor-2016 .kp-x-intro{background:#e9e3d9}
body.home .elementor.elementor-2016 .kp-x-intro .elementor-element-58a1621{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:7vw;align-items:center;width:100%}
body.home .elementor.elementor-2016 .kp-x-intro .elementor-element-bfa266e,body.home .elementor.elementor-2016 .kp-x-intro .elementor-element-7a23cdf{width:100%;min-width:0}
body.home .elementor.elementor-2016 .kp-x-intro .elementor-element-bfa266e{gap:24px}
body.home .elementor.elementor-2016 .kp-x-intro .elementor-element-7a23cdf img{height:720px;width:100%;object-fit:cover;object-position:center top}
body.home .elementor.elementor-2016 .kp-x-six{position:relative;background:#272d29;color:#f4f1eb;overflow:hidden;min-height:480px;justify-content:center;padding-left:48vw}
body.home .elementor.elementor-2016 .kp-x-six>.e-con-inner{max-width:620px;margin:0}
body.home .elementor.elementor-2016 .kp-x-six .elementor-heading-title,body.home .elementor.elementor-2016 .kp-x-six .elementor-widget-text-editor{color:#f4f1eb}
body.home .elementor.elementor-2016 .kp-x-six .elementor-widget-html{position:absolute;left:5vw;top:50%;transform:translateY(-50%);width:auto}
.kp-x-six-number{font-family:'Cormorant Garamond',serif;font-size:clamp(220px,33vw,530px);font-weight:400;line-height:.8;letter-spacing:-.08em;color:#d3bba0}
body.home .elementor.elementor-2016 .kp-x-service-list{flex-direction:column;gap:90px;width:100%}
body.home .elementor.elementor-2016 .kp-x-service{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;gap:6vw;align-items:center;min-width:0}
body.home .elementor.elementor-2016 .kp-x-service>.elementor-widget-image img{display:block;width:100%;height:720px;object-fit:cover}
body.home .elementor.elementor-2016 .kp-x-service-copy{gap:24px;min-width:0}
body.home .elementor.elementor-2016 .kp-x-service-copy h3{font-size:clamp(38px,4vw,62px);line-height:1.06;letter-spacing:-.025em}
body.home .elementor.elementor-2016 .kp-x-service:nth-child(even)>.elementor-widget-image{order:2}
body.home .elementor.elementor-2016 .kp-x-service:nth-child(even) .kp-x-service-copy{order:1}
body.home .elementor.elementor-2016 .kp-x-service-copy .elementor-widget-button{margin-top:10px}
body.home .elementor.elementor-2016 .kp-x-process{border-top:1px solid var(--kp-line)}
body.home .elementor.elementor-2016 .kp-x-process .elementor-element-00b9dd5{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:7vw;width:100%;align-items:start}
body.home .elementor.elementor-2016 .kp-x-process .elementor-element-22d5aef,body.home .elementor.elementor-2016 .kp-x-process .elementor-element-a8e5817{width:100%;min-width:0}
body.home .elementor.elementor-2016 .kp-x-process .elementor-element-22d5aef{position:sticky;top:30px}
body.home .elementor.elementor-2016 .kp-x-process .elementor-element-22d5aef img{height:680px;object-fit:cover;width:100%}
body.home .elementor.elementor-2016 .kp-x-process .elementor-element-a8e5817>.e-con{border:0;border-top:1px solid var(--kp-line);padding:25px 0;gap:15px}
body.home .elementor.elementor-2016 .kp-x-process h3{font-size:31px;line-height:1.15}
body.home .elementor.elementor-2016 .kp-x-interlude{width:100%;padding:0;gap:0}
body.home .elementor.elementor-2016 .kp-x-interlude img{display:block;width:100%;height:72vh;max-height:850px;min-height:390px;object-fit:cover;object-position:center 55%}
body.home .elementor.elementor-2016 .kp-x-fit{background:#ddd2c2;display:grid;grid-template-columns:1fr 1.1fr;gap:6vw;align-items:start}
body.home .elementor.elementor-2016 .kp-x-fit>.e-con-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:6vw;grid-column:1/-1}
body.home .elementor.elementor-2016 .kp-x-fit ul{list-style:none;padding:0;margin:0}
body.home .elementor.elementor-2016 .kp-x-fit li{padding:19px 0;border-bottom:1px solid #b5a791}
body.home .elementor.elementor-2016 .kp-x-faq{background:var(--kp-paper)}
body.home .elementor.elementor-2016 .kp-x-questions{display:grid;grid-template-columns:1fr 1fr;gap:36px 6vw}
body.home .elementor.elementor-2016 .kp-x-question{border-top:1px solid var(--kp-line);padding-top:22px;gap:15px;min-width:0}
body.home .elementor.elementor-2016 .kp-x-question h3{font-size:29px;line-height:1.15}
body.home .elementor.elementor-2016 .kp-x-cta{background:#272d29;color:#f4f1eb;padding-top:100px;padding-bottom:110px}
body.home .elementor.elementor-2016 .kp-x-cta h2{font-size:clamp(58px,8vw,120px);color:#f4f1eb;max-width:1100px}
body.home .elementor.elementor-2016 .kp-x-cta .elementor-widget-text-editor{color:#f4f1eb;max-width:650px}
@media(min-width:1600px){body.home .elementor.elementor-2016 .kp-x-hero{padding-left:max(5vw,calc((100vw - 1440px)/2));padding-right:max(5vw,calc((100vw - 1440px)/2))}}
@media(max-width:1024px){
 body.home .elementor.elementor-2016 .kp-x-section{padding:65px 5vw}
 body.home .elementor.elementor-2016 .kp-x-hero{padding:140px 5vw 50px}
 body.home .elementor.elementor-2016 .kp-x-hero-row{grid-template-columns:1fr;gap:30px}
 body.home .elementor.elementor-2016 .kp-x-hero-copy{max-width:660px;padding:0}
 body.home .elementor.elementor-2016 .kp-x-hero-copy .elementor-widget-text-editor{max-width:660px}
 body.home .elementor.elementor-2016 .kp-x-hero-copy .e-con{flex-direction:row;flex-wrap:wrap}
 body.home .elementor.elementor-2016 .kp-x-projects-grid img{height:300px}
 body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(1) img{height:400px}
 body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(2) img{height:340px}
 body.home .elementor.elementor-2016 .kp-x-intro .elementor-element-58a1621{grid-template-columns:1fr;gap:40px}
 body.home .elementor.elementor-2016 .kp-x-intro .elementor-element-7a23cdf{max-width:600px;margin-left:auto}
 body.home .elementor.elementor-2016 .kp-x-six{padding-left:42vw}
 body.home .elementor.elementor-2016 .kp-x-service{gap:4vw}
 body.home .elementor.elementor-2016 .kp-x-service>.elementor-widget-image img{height:800px}
 body.home .elementor.elementor-2016 .kp-x-process .elementor-element-00b9dd5{gap:4vw}
}
@media(max-width:767px){
 body.home .elementor.elementor-2016 .kp-x-section{padding:50px 22px;gap:26px}
 body.home .elementor.elementor-2016 .kp-x-section h2{font-size:45px}
 body.home .elementor.elementor-2016 .kp-x-hero{padding:125px 22px 42px;gap:24px}
 body.home .elementor.elementor-2016 .kp-x-hero h1{font-size:clamp(40px,10.4vw,72px);line-height:1.01;letter-spacing:-.035em}
 body.home .elementor.elementor-2016 .kp-x-hero-row{margin-top:0}
 body.home .elementor.elementor-2016 .kp-x-hero-photos{gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,.45fr)}
 body.home .elementor.elementor-2016 .kp-x-hero-main img{height:280px}
 body.home .elementor.elementor-2016 .kp-x-hero-inset{padding-bottom:30px}
 body.home .elementor.elementor-2016 .kp-x-hero-inset img{height:190px}
 body.home .elementor.elementor-2016 .kp-x-projects-grid{grid-template-columns:1fr;gap:35px}
 body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(n){grid-column:auto;padding:0;margin:0;width:100%}
 body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(n) img{height:auto;max-height:510px;aspect-ratio:4/5;object-fit:cover}
 body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(2n) img{aspect-ratio:4/3}
 body.home .elementor.elementor-2016 .kp-x-intro .elementor-element-7a23cdf img{height:510px}
 body.home .elementor.elementor-2016 .kp-x-six{padding-top:210px;min-height:0}
 body.home .elementor.elementor-2016 .kp-x-six .elementor-widget-html{top:22px;left:22px;transform:none}
 .kp-x-six-number{font-size:200px}
 body.home .elementor.elementor-2016 .kp-x-service-list{gap:55px}
 body.home .elementor.elementor-2016 .kp-x-service{grid-template-columns:1fr;gap:28px}
 body.home .elementor.elementor-2016 .kp-x-service:nth-child(n)>.elementor-widget-image{order:0}
 body.home .elementor.elementor-2016 .kp-x-service>.elementor-widget-image img{height:430px}
 body.home .elementor.elementor-2016 .kp-x-service-copy h3{font-size:39px}
 body.home .elementor.elementor-2016 .kp-x-process .elementor-element-00b9dd5{grid-template-columns:1fr;gap:35px}
 body.home .elementor.elementor-2016 .kp-x-process .elementor-element-22d5aef{position:static}
 body.home .elementor.elementor-2016 .kp-x-process .elementor-element-22d5aef img{height:420px}
 body.home .elementor.elementor-2016 .kp-x-interlude img{height:55vh;min-height:350px;max-height:600px}
 body.home .elementor.elementor-2016 .kp-x-fit,body.home .elementor.elementor-2016 .kp-x-fit>.e-con-inner,body.home .elementor.elementor-2016 .kp-x-questions{grid-template-columns:1fr;gap:26px}
 body.home .elementor.elementor-2016 .kp-x-cta h2{font-size:60px}
}
@media(prefers-reduced-motion:reduce){body.home .elementor.elementor-2016 .elementor-button,body.home .elementor.elementor-2016 .kp-x-projects-grid img{transition:none}body.home .elementor.elementor-2016 .elementor-button:hover{transform:none}}
/* Revision: six matching cards in two desktop rows. */
body.home .elementor.elementor-2016 .kp-x-projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px;align-items:start}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(n){grid-column:auto;width:100%;min-width:0;padding:0;margin:0;border:0;background:transparent;align-items:stretch}
body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(n) img{height:420px;width:100%;max-height:none;aspect-ratio:auto;object-fit:cover}
body.home .elementor.elementor-2016 .kp-x-projects-grid .kp-x-project-caption{padding:18px 0 0;gap:7px;width:100%;background:transparent}
body.home .elementor.elementor-2016 .kp-x-projects-grid .kp-x-project-name .elementor-heading-title{font-family:'Cormorant Garamond',serif;font-size:34px;font-weight:400;line-height:1.12;letter-spacing:0;text-transform:none;color:#252722}
body.home .elementor.elementor-2016 .kp-x-projects-grid .kp-x-project-venue .elementor-heading-title{font-family:'Lora',serif;font-size:16px;font-weight:500;line-height:1.5;letter-spacing:0;text-transform:none;color:#594d43}
@media(max-width:1024px) and (min-width:768px){body.home .elementor.elementor-2016 .kp-x-projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){body.home .elementor.elementor-2016 .kp-x-projects-grid{grid-template-columns:1fr;gap:32px}body.home .elementor.elementor-2016 .kp-x-projects-grid>.kp-x-project:nth-child(n) img{height:auto;aspect-ratio:4/5;max-height:510px}body.home .elementor.elementor-2016 .kp-x-projects-grid .kp-x-project-name .elementor-heading-title{font-size:31px}}
