/* Wedding & Engagement reference only; shared header/footer and other pages are untouched. */
.ec-wedding{--by:calc(100vw / 914);--wedding-circle:calc(60 * var(--by));font-family:EventfulMenu,Arial,sans-serif;background:#fff7f0;color:#174b3a;font-size:calc(12 * var(--by));line-height:1.4;width:100%;max-width:none;display:flow-root;overflow-wrap:normal}.ec-wedding p{margin:0}.ec-wedding h1,.ec-wedding h2,.ec-wedding h3{font-family:EventfulSerif,Georgia,serif;font-weight:600;color:#154c3b;line-height:1.04;letter-spacing:calc(-.8 * var(--by));margin:0}.ec-wedding h1{font-size:calc(60 * var(--by));line-height:.9}.ec-wedding h1>span{display:block}.ec-wedding h2{font-size:calc(32 * var(--by))}.ec-wedding em{font-style:normal;color:#df6b87}.ec-wedding .ecx-button{font-family:EventfulSerif,Georgia,serif;font-weight:600;font-size:calc(16 * var(--by));line-height:1.3;background:#00503c;border:0;border-radius:100px;color:#fff5e8;min-height:0;padding:calc(10 * var(--by)) calc(24 * var(--by));gap:calc(13 * var(--by));margin-top:calc(12 * var(--by));transition:background .25s}.ec-wedding .ecx-button>span{color:#d3a45c;font-size:1.4em;line-height:1}.ec-wedding .ecx-button:hover{background:#bd626e}
.ec-wedding-hero{position:relative;isolation:isolate;min-height:calc(422 * var(--by));padding:calc(72 * var(--by)) calc(53 * var(--by)) calc(12 * var(--by));background:#fff7f0}.ec-wedding-hero-photo.ecx-hero-picture{position:absolute;inset:0 0 0 37%;aspect-ratio:auto;border-radius:0;margin:0;z-index:-2;overflow:hidden}.ec-wedding-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:left center;display:block}.ec-wedding-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fff7f0 0%,#fff7f0 36%,#fff7f0cc 42%,#fff7f033 48%,transparent 55%);pointer-events:none}.ec-wedding-hero-copy{width:43%;min-width:0;position:relative}.ec-wedding-script.ecx-script{font-family:EventfulScript,cursive;font-size:calc(38 * var(--by));color:#a63b30;line-height:.95;margin:calc(13 * var(--by)) 0 calc(14 * var(--by));position:relative;white-space:nowrap}.ec-wedding-lead{font-size:calc(13.2 * var(--by));line-height:1.45;max-width:calc(337 * var(--by))}.ec-wedding-hero-copy .ecx-button{white-space:nowrap}
.ec-wedding-filters{position:absolute;pointer-events:none}.ec-wedding-art{position:relative;display:block;overflow:hidden;flex-shrink:0;line-height:0;margin:0;padding:0}.ec-wedding-art img{position:absolute;max-width:none;object-fit:fill;filter:url(#ec-wedding-art-only);animation:none!important;transform:none!important}.ec-wedding h2 .ec-wedding-art-sprig,.ec-wedding-sprig{display:inline-block;width:calc(43 * var(--by));height:calc(29 * var(--by));vertical-align:middle;object-fit:contain}.ec-wedding-art-title{display:inline-block;width:calc(68 * var(--by));height:calc(50 * var(--by));vertical-align:middle}.ec-wedding-art-accent{position:absolute;right:calc(5 * var(--by));bottom:0;width:calc(47 * var(--by));height:calc(46 * var(--by))}
.ec-wedding-benefits{background:#fdebee;padding:calc(12 * var(--by)) calc(10 * var(--by)) calc(15 * var(--by));text-align:center}.ec-wedding-five{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:0}.ec-wedding-benefit.ecx-card,.ec-wedding-step.ecx-card{position:relative;border:0;box-shadow:none;border-radius:0;background:transparent;overflow:visible;min-width:0;padding:0 calc(8 * var(--by));text-align:center}.ec-wedding-benefit+.ec-wedding-benefit:before,.ec-wedding-step+.ec-wedding-step:before{content:'';position:absolute;left:0;top:calc(21 * var(--by));bottom:calc(4 * var(--by));width:1px;background:#efcdbc}.ec-wedding-icon{width:var(--wedding-circle);height:var(--wedding-circle);border:calc(.8 * var(--by)) solid #e8a26a;border-radius:50%;display:grid;place-items:center;margin:0 auto calc(7 * var(--by));color:var(--green,#234832)}.ec-wedding-icon>img,.ec-wedding-icon>svg{width:65%;height:65%;object-fit:contain}.ec-wedding h3{font-size:calc(15 * var(--by));line-height:1.12;letter-spacing:calc(-.3 * var(--by))}.ec-wedding-benefit p,.ec-wedding-step p{font-size:calc(10 * var(--by));line-height:1.25;margin-top:calc(6 * var(--by))}
.ec-wedding-gallery-section{text-align:center;padding:calc(10 * var(--by)) calc(16 * var(--by)) calc(6 * var(--by));background:#fff8f1}.ec-wedding-intro{font-size:calc(11.5 * var(--by));line-height:1.4;margin:calc(5 * var(--by)) 0 calc(11 * var(--by))!important}.ec-wedding-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:calc(8 * var(--by))}.ec-wedding-card.ecx-card{background:none;border:0;border-radius:0;box-shadow:none;overflow:visible;min-width:0;padding:0}.ec-wedding-card-photo.ecx-card-photo{width:100%;aspect-ratio:.93;border-radius:calc(3 * var(--by));overflow:hidden}.ec-wedding-card-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.ec-wedding-card h3{margin:calc(7 * var(--by)) 0 0}.ec-wedding-card p{font-size:calc(10 * var(--by));line-height:1.3;margin:calc(5 * var(--by)) 0 0}.ec-wedding-process{text-align:center;background:#fdebee;padding:calc(9 * var(--by)) calc(11 * var(--by)) calc(15 * var(--by))}.ec-wedding-process .ec-wedding-intro{margin-bottom:calc(7 * var(--by))!important}.ec-wedding-step{--wedding-circle:calc(58 * var(--by))}.ec-wedding-step+.ec-wedding-step:before{top:calc(24 * var(--by));bottom:calc(4 * var(--by))}.ec-wedding-step:not(:last-child):after{content:'→';position:absolute;left:calc(100% - 11 * var(--by));top:calc(47 * var(--by));color:#db9b61;font-size:calc(28 * var(--by));line-height:1;width:calc(22 * var(--by));background:#fdebee;z-index:1}.ec-wedding-creations{padding:calc(10 * var(--by)) 0 calc(8 * var(--by))}.ec-wedding-creations h2{margin-bottom:calc(10 * var(--by))}.ec-wedding-creations .ec-wedding-gallery{grid-template-columns:repeat(6,minmax(0,1fr));gap:calc(4 * var(--by))}.ec-wedding-creations .ec-wedding-card-photo{aspect-ratio:5/6}
.ec-wedding-closing{position:relative;isolation:isolate;min-height:calc(205 * var(--by));padding:calc(9 * var(--by)) calc(53 * var(--by)) calc(20 * var(--by));background:#fdecE9}.ec-wedding-closing-photo.ecx-story-picture{position:absolute;inset:0 0 0 43%;aspect-ratio:auto;border-radius:0;margin:0;z-index:-2;overflow:hidden}.ec-wedding-closing-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.ec-wedding-closing:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fdece9 0%,#fdece9 39%,#fdece9bb 47%,transparent 58%);pointer-events:none}.ec-wedding-closing-copy{width:56%;position:relative}.ec-wedding-closing h2{font-size:calc(37 * var(--by));line-height:.94}.ec-wedding-closing-copy>p{font-size:calc(13 * var(--by));line-height:1.45;margin-top:calc(14 * var(--by))}.ec-wedding-ornaments .ec-wedding-hero-copy:before,.ec-wedding-ornaments .ec-wedding-closing-copy:before{content:'';position:absolute;left:calc(-53 * var(--by));top:calc(-20 * var(--by));width:calc(45 * var(--by));height:calc(235 * var(--by));background:var(--wedding-botanical,url(images/about-botanical.svg)) left center/contain no-repeat;pointer-events:none;color:#d2924e}.ec-wedding-ornaments .ec-wedding-closing-copy:before{top:0;height:calc(180 * var(--by))}
.ec-wedding-dialog.popup{width:min(900px,94vw);max-height:90dvh;padding:32px;overflow:auto;font-size:14px}.ec-wedding-dialog h2{font-size:34px;line-height:1.1;margin:0 35px 10px 0}.ec-wedding-dialog>p{margin-bottom:24px}.ec-wedding-dialog .ecx-enquiry-layout{grid-template-columns:1fr}.ec-wedding-dialog .ecx-enquiry-note{display:none}.ec-wedding-dialog .ecx-form{padding:0}.ec-wedding-dialog .ecx-field{font-size:13px}.ec-wedding-dialog .ecx-field input,.ec-wedding-dialog .ecx-field select,.ec-wedding-dialog .ecx-field textarea{font-size:16px;min-height:44px;padding:10px}.ec-wedding-dialog .ecx-form-grid{gap:18px}.ec-wedding-dialog .ecx-consent{font-size:12px}.ec-wedding-dialog .ecx-button{font:500 15px EventfulMenu,Arial,sans-serif;padding:12px 22px}
@media(max-width:767px){
 .ec-wedding{--by:1px;--wedding-circle:58px;font-size:14px}.ec-wedding h1{font-size:clamp(44px,11vw,72px);letter-spacing:-1px}.ec-wedding h2{font-size:clamp(29px,7.6vw,42px);letter-spacing:-.5px}.ec-wedding h3{font-size:17px;line-height:1.2;letter-spacing:-.2px}.ec-wedding-hero{padding:0;min-height:0;display:flex;flex-direction:column}.ec-wedding-hero-copy{width:100%;padding:30px 6% 25px;order:0}.ec-wedding-script.ecx-script{font-size:clamp(29px,7.4vw,42px);line-height:1.05;margin:15px 0 18px}.ec-wedding-lead{font-size:14px;line-height:1.65;max-width:none}.ec-wedding .ecx-button{font-size:16px;min-height:44px;padding:12px 20px;margin-top:17px}.ec-wedding-hero-copy .ecx-button{white-space:normal}.ec-wedding-hero-photo.ecx-hero-picture{position:relative;inset:auto;order:1;aspect-ratio:1.5;width:100%;z-index:0}.ec-wedding-hero-photo img{object-position:center;transform-origin:center}.ec-wedding-hero:after{display:none}.ec-wedding-art-title{width:60px;height:44.12px}.ec-wedding-art-accent{width:40px;height:39.15px;right:3%;bottom:0}.ec-wedding h2 .ec-wedding-art-sprig,.ec-wedding-sprig{width:33px;height:22.25px}.ec-wedding-benefits{padding:24px 5%}.ec-wedding-five{grid-template-columns:minmax(0,1fr);gap:30px}.ec-wedding-benefit,.ec-wedding-step{padding:0 10px}.ec-wedding-benefit+.ec-wedding-benefit:before,.ec-wedding-step+.ec-wedding-step:before{display:none}.ec-wedding-benefit,.ec-wedding-step{width:100%}.ec-wedding-icon{width:var(--wedding-circle);height:var(--wedding-circle);border-width:1px;margin-bottom:10px}.ec-wedding-benefit h3,.ec-wedding-step h3{font-size:16px}.ec-wedding-gallery-section{padding:26px 5% 24px}.ec-wedding-intro{font-size:13px;line-height:1.6;margin:10px 0 22px!important}.ec-wedding-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.ec-wedding-card-photo.ecx-card-photo{aspect-ratio:5/6;border-radius:5px}.ec-wedding-card h3{font-size:18px;line-height:1.2;margin-top:10px}.ec-wedding-card p,.ec-wedding-step p{font-size:12px;line-height:1.5;margin-top:7px}.ec-wedding-styles .ec-wedding-gallery{grid-template-columns:minmax(0,1fr);gap:28px}.ec-wedding-styles .ec-wedding-card{width:100%}.ec-wedding-process{padding:27px 5%}.ec-wedding-process .ec-wedding-intro{margin-bottom:24px!important}.ec-wedding-step{--wedding-circle:58px}.ec-wedding-step:not(:last-child):after{display:none}.ec-wedding-creations .ec-wedding-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ec-wedding-closing{display:flex;flex-direction:column;padding:27px 6% 0;min-height:0}.ec-wedding-closing-copy{width:100%}.ec-wedding-closing h2{font-size:clamp(31px,7.7vw,44px);line-height:1.05}.ec-wedding-closing-copy>p{font-size:14px;line-height:1.65;margin-top:17px}.ec-wedding-closing-copy>p br{display:none}.ec-wedding-closing-photo.ecx-story-picture{position:relative;inset:auto;width:113.64%;margin:26px -6.82% 0;aspect-ratio:1.5;z-index:0}.ec-wedding-closing:after,.ec-wedding-ornaments .ec-wedding-hero-copy:before,.ec-wedding-ornaments .ec-wedding-closing-copy:before{display:none}.ec-wedding-dialog.popup{padding:28px 18px}.ec-wedding-dialog h2{font-size:28px}.ec-wedding-dialog .ecx-form-grid{grid-template-columns:minmax(0,1fr)}
}

@media(prefers-reduced-motion:reduce){.ec-wedding .ecx-button{transition:none}}
/* Override the framework's important button font within this page only. */
.ec-wedding .ecx-button{font-size:calc(16 * var(--by))!important}
@media(min-width:768px){.ec-wedding-hero-copy .ecx-button,.ec-wedding-closing-copy .ecx-button{min-width:calc(280 * var(--by))}}
@media(max-width:767px){.ec-wedding .ecx-button{font-size:16px!important}.ec-wedding-closing-copy{order:0}.ec-wedding-closing-photo.ecx-story-picture{order:1}}
.ec-wedding-dialog .ecx-button{font-size:15px!important}
.ec-wedding-dialog .ecx-form-result{font-size:14px;line-height:1.6;padding:16px}

/* Native Home-style icons: consistent stroke, no image backgrounds or clipping. */
.ec-wedding-icon>svg{display:block;width:55%;height:55%;flex-shrink:0;overflow:visible}

/* Mobile icon rows: shared left edge, icon first and copy beside it. */
.ec-wedding-icon-copy{display:contents}
@media(max-width:767px){
 .ec-wedding-benefit.ecx-card,.ec-wedding-step.ecx-card{display:grid;grid-template-columns:var(--wedding-circle) minmax(0,1fr);gap:18px;align-items:center;text-align:left;padding:0}
 .ec-wedding-icon-copy{display:block;min-width:0}
 .ec-wedding-benefit .ec-wedding-icon,.ec-wedding-step .ec-wedding-icon{margin:0}
 .ec-wedding-icon-copy h3 br,.ec-wedding-icon-copy p br{display:none}
 .ec-wedding-icon-copy h3{line-height:1.25}
 .ec-wedding-icon-copy p{margin-top:6px;line-height:1.5}
}

/* Wedding-specific type and crop proportions. */
.ec-wedding h1{font-size:calc(53 * var(--by));line-height:.98}
.ec-wedding-hero-copy{width:49%}
.ec-wedding-hero-photo.ecx-hero-picture{left:42%}
.ec-wedding-art svg{width:100%;height:100%;stroke-width:1.5;color:#ce8644}
.ec-wedding-sprig-native{display:inline-block;width:calc(43 * var(--by));height:calc(29 * var(--by));vertical-align:middle}
.ec-wedding-sprig-native svg{width:100%;height:100%}
.ec-wedding-creations .ec-wedding-card-photo{aspect-ratio:3/4}
.ec-wedding-closing h2{font-size:calc(34 * var(--by));line-height:1.05}
@media(max-width:767px){
 .ec-wedding h1{font-size:clamp(39px,9.6vw,65px);line-height:1.02}
 .ec-wedding-hero-copy{width:100%}
 .ec-wedding-hero-photo.ecx-hero-picture{left:auto}
 .ec-wedding h1 br{display:block}
 .ec-wedding-closing h2{font-size:clamp(30px,7.5vw,43px)}
 .ec-wedding-sprig-native{width:33px;height:23px}
 .ec-wedding-styles .ec-wedding-card-photo{aspect-ratio:2/3}
}

.ec-wedding-sprig-native{color:#d99243}
.ec-wedding-hero-photo img{object-position:right center}
.ec-wedding-closing-photo img{object-position:center bottom}
@media(max-width:767px){.ec-wedding-hero-photo img{object-position:center}}
/* Hero correction: keep long wedding copy inside its own readable area. */
@media(min-width:768px){
 .ec-wedding-hero-copy{width:47%}
 .ec-wedding-hero h1{font-size:calc(48 * var(--by));font-weight:700;line-height:1.02;letter-spacing:calc(-.9 * var(--by))}
 .ec-wedding-hero h1 em{white-space:nowrap}
 .ec-wedding-script.ecx-script{font-size:calc(34 * var(--by));width:calc(310 * var(--by));max-width:100%;line-height:1.03;margin:calc(15 * var(--by)) 0 calc(16 * var(--by))}
 .ec-wedding-script .ec-wedding-art-accent{width:calc(34 * var(--by));height:calc(34 * var(--by));right:calc(10 * var(--by));bottom:calc(1 * var(--by))}
 .ec-wedding-lead{max-width:calc(310 * var(--by));line-height:1.45}
 .ec-wedding-hero-copy .ecx-button{font-size:calc(14 * var(--by))!important;min-width:calc(332 * var(--by));max-width:100%;white-space:normal;min-height:calc(40 * var(--by))}
 .ec-wedding-hero:after{background:linear-gradient(90deg,#fff7f0 0%,#fff7f0 38%,#fff7f0f0 42%,#fff7f099 46%,#fff7f022 52%,transparent 59%)}
 .ec-wedding-ornaments .ec-wedding-hero-copy:before{top:calc(-47 * var(--by));height:calc(255 * var(--by))}
}
@media(max-width:767px){
 .ec-wedding-hero h1{font-size:clamp(36px,9.3vw,62px);font-weight:700;overflow-wrap:normal}
 .ec-wedding-script.ecx-script{width:100%;max-width:360px;padding-right:40px;white-space:normal;font-size:clamp(28px,7vw,38px)}
 .ec-wedding-script .ec-wedding-art-accent{width:32px;height:32px;right:0;bottom:2px}
 .ec-wedding-hero-copy .ecx-button{max-width:100%;white-space:normal;text-align:center;font-size:15px!important}
}
/* Closing CTA: compact reference proportions with copy clear of the photograph. */
@media(min-width:768px){
 .ec-wedding-closing{padding-top:calc(12 * var(--by));padding-bottom:calc(16 * var(--by));background:#fff5ef}
 .ec-wedding-closing-copy{width:49%}
 .ec-wedding-closing h2{font-size:calc(31 * var(--by));font-weight:700;line-height:1.06;letter-spacing:calc(-.6 * var(--by))}
 .ec-wedding-closing-copy>p{max-width:calc(365 * var(--by));font-size:calc(12 * var(--by));line-height:1.42;margin-top:calc(9 * var(--by))}
 .ec-wedding-closing-copy .ecx-button{font-size:calc(14 * var(--by))!important;min-width:calc(332 * var(--by));max-width:100%;min-height:calc(40 * var(--by));margin-top:calc(10 * var(--by));white-space:normal;text-align:center}
 .ec-wedding-closing:after{background:linear-gradient(90deg,#fff5ef 0%,#fff5ef 39%,#fff5eff0 43%,#fff5ef99 48%,#fff5ef22 54%,transparent 60%)}
 .ec-wedding-ornaments .ec-wedding-closing-copy:before{top:calc(-5 * var(--by));height:calc(155 * var(--by))}
 .ec-wedding-closing h2 .ec-wedding-sprig-native,.ec-wedding-closing h2 .ec-wedding-sprig{width:calc(34 * var(--by));height:calc(23 * var(--by))}
}
@media(max-width:767px){
 .ec-wedding-closing h2{font-size:clamp(28px,7vw,40px);font-weight:700;line-height:1.1}
 .ec-wedding-closing-copy .ecx-button{font-size:15px!important;max-width:100%;white-space:normal;text-align:center}
 .ec-wedding-closing-photo img{object-position:center bottom}
}

/* Clear lining numerals and a caption-attached reference doodle. */
.ec-wedding-percent{font-family:EventfulMenu,Arial,sans-serif;font-size:.88em;font-variant-numeric:lining-nums;letter-spacing:0;white-space:nowrap}
.ec-wedding-caption-line{display:block}
.ec-wedding-caption-last{display:flex;align-items:center;gap:calc(9 * var(--by));width:max-content;max-width:100%}
.ec-wedding-caption-copy{min-width:0;white-space:normal}
.ec-wedding-script .ec-wedding-art-accent{position:static;display:block;flex:0 0 auto;width:calc(28 * var(--by));height:calc(31 * var(--by));margin:0}
@media(max-width:767px){.ec-wedding-script.ecx-script{white-space:normal}.ec-wedding-caption-last{gap:8px}.ec-wedding-script .ec-wedding-art-accent{width:25px;height:28px;right:auto;bottom:auto}}
