/* wedding-stationery: captured final locale cascade; see src/data/service-sources.json */

.source-document{--ink:#181518;--gold:#b89e14;--plum:#181518;--aubergine:#655a56;--soft:#f4f1ef;--paper:#f6f2ed;--line:#ded8d7;--pad:max(clamp(40px,6cqw,88px),calc((100% - 1320px)/2))}:where(.source-document) *{box-sizing:border-box}.source-document,.source-document{overflow-x:hidden}.source-document{margin:0;min-height:100vh;background:#fff;color:var(--ink);font:400 16px/1.65 Poppins,Arial,sans-serif}:where(.source-document) .source-main{width:100%;min-height:100vh;padding:0 30px;display:flex;flex-direction:column}:where(.source-document) .source-main>:last-child{margin-bottom:0;flex-grow:1}:where(.source-document) .panel{margin:0 0 18px;border-radius:22px;overflow:hidden}:where(.source-document) h1,:where(.source-document) h2,:where(.source-document) h3{margin:0;font-family:"Playfair Display",Georgia,serif;font-weight:400;letter-spacing:-.025em}:where(.source-document) h1{font-size:clamp(46px,5.2cqw,70px);line-height:1.03}:where(.source-document) h2{font-size:clamp(32px,3.4cqw,43px);line-height:1.15}:where(.source-document) h3{font-size:23px;line-height:1.25}:where(.source-document) p{margin:0 0 17px}:where(.source-document) .eyebrow{margin-bottom:16px;color:var(--gold);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}:where(.source-document) .hero{min-height:700px;display:grid;grid-template-columns:minmax(360px,.88fr) minmax(560px,1.12fr);align-items:center;background:radial-gradient(circle at 80% 35%,#302a2b 0,#211d1e 40%,#181518 76%);color:#fff}:where(.source-document) .hero-copy{padding:clamp(52px,6cqw,88px) 24px clamp(52px,6cqw,88px) var(--pad);position:relative;z-index:5}:where(.source-document) .hero .lead{max-width:16ch;margin:25px 0 20px;font-family:"Playfair Display",Georgia,serif;font-size:clamp(25px,2.4cqw,31px);line-height:1.35}:where(.source-document) .hero p:not(.eyebrow){max-width:55ch;color:rgba(255,255,255,.86)}:where(.source-document) .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}:where(.source-document) .button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 25px;border:1px solid transparent;border-radius:11px;background:var(--ink);color:#fff;font-weight:500;text-decoration:none}:where(.source-document) .hero .button{background:#fff;color:var(--ink)}:where(.source-document) .button.secondary{border-color:rgba(255,255,255,.65);background:transparent;color:#fff}:where(.source-document) .button:focus-visible,:where(.source-document) .collection:focus-visible{outline:2px solid var(--gold);outline-offset:4px}:where(.source-document) .hero-products{height:640px;position:relative;margin:30px 32px 30px 0}:where(.source-document) .hero-card{position:absolute;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:15px;background:#222;box-shadow:0 22px 48px rgba(0,0,0,.42)}:where(.source-document) .hero-card img{width:100%;height:100%;display:block;object-fit:cover}:where(.source-document) .hero-card.wizard{width:48%;height:51%;left:3%;top:13%;z-index:5;transform:rotate(-3deg)}:where(.source-document) .hero-card.castle{width:43%;height:43%;right:2%;top:4%;z-index:3;transform:rotate(3deg)}:where(.source-document) .hero-card.fellowship{width:40%;height:42%;right:10%;bottom:3%;z-index:6;transform:rotate(2deg)}:where(.source-document) .hero-card.travel{width:39%;height:40%;left:0;bottom:4%;z-index:4;transform:rotate(-2deg)}:where(.source-document) .intro{padding:76px var(--pad);display:grid;grid-template-columns:.8fr 1.2fr;gap:64px}:where(.source-document) .intro-copy{max-width:59ch}:where(.source-document) .intro-copy .lead{font-family:"Playfair Display",Georgia,serif;font-size:24px;line-height:1.45}:where(.source-document) .text-link{display:inline-flex;margin-top:10px;color:var(--ink);font-weight:500;text-underline-offset:4px}:where(.source-document) .collections{padding:34px;background:var(--paper)}:where(.source-document) .collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}:where(.source-document) .collection{display:block;overflow:hidden;border-radius:16px;background:#fff;color:var(--ink);text-decoration:none;transition:transform .18s ease}:where(.source-document) .collection:hover{transform:translateY(-3px)}:where(.source-document) .collection-media{aspect-ratio:4/3;overflow:hidden;background:#ddd}:where(.source-document) .collection img{width:100%;height:100%;display:block;object-fit:cover}:where(.source-document) .collection-copy{padding:19px 20px 22px}:where(.source-document) .collection h3{margin-bottom:8px;font-family:Poppins,Arial,sans-serif;font-size:18px;font-weight:500;letter-spacing:0}:where(.source-document) .collection p{margin:0;color:#50494e;font-size:14px;line-height:1.55}:where(.source-document) .suite{padding:76px var(--pad)}:where(.source-document) .suite-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;margin-bottom:38px}:where(.source-document) .suite-copy{max-width:59ch}:where(.source-document) .pieces{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}:where(.source-document) .piece{padding:18px 20px;border:1px solid var(--line);border-radius:13px;font-size:15px}:where(.source-document) .paths{display:grid;grid-template-columns:1fr 1fr;gap:20px}:where(.source-document) .path{min-height:430px;padding:68px var(--pad);display:flex;flex-direction:column;justify-content:space-between}:where(.source-document) .path h2{margin-bottom:22px}:where(.source-document) .path-copy{max-width:54ch}:where(.source-document) .path.ready{background:var(--soft)}:where(.source-document) .path.bespoke{background:var(--plum);color:#fff}:where(.source-document) .path.bespoke .eyebrow{color:#decf79}:where(.source-document) .path.bespoke .button{background:#fff;color:var(--ink)}
@container service-viewport (min-width:761px) and (max-width:1180px){:where(.source-document) .source-main{padding:0 24px}:where(.source-document) .hero{min-height:620px;grid-template-columns:.9fr 1.1fr}:where(.source-document) .hero-copy{padding:54px 24px 54px 46px}:where(.source-document) .hero-products{height:560px;margin-right:22px}:where(.source-document) .intro,:where(.source-document) .suite,:where(.source-document) .path{padding-top:58px;padding-bottom:58px}:where(.source-document) .intro,:where(.source-document) .suite-head{gap:40px}:where(.source-document) .collections{padding:24px}:where(.source-document) .collection-grid{gap:14px}:where(.source-document) .collection-copy{padding:16px}:where(.source-document) .path{min-height:390px}:where(.source-document) .pieces{grid-template-columns:repeat(2,1fr)}}
@container service-viewport (max-width:760px){:where(.source-document) .source-main{padding:16px}:where(.source-document) .panel{margin-bottom:18px}:where(.source-document) .hero{min-height:0;display:flex;flex-direction:column;align-items:stretch}:where(.source-document) .hero-products{order:1;height:300px;margin:14px 12px 0}:where(.source-document) .hero-copy{order:2;padding:34px 26px 48px}:where(.source-document) .hero .lead{max-width:none}:where(.source-document) .hero-card.wizard{width:55%;height:48%;left:2%;top:9%}:where(.source-document) .hero-card.castle{width:43%;height:37%;right:0;top:2%}:where(.source-document) .hero-card.fellowship{width:44%;height:37%;right:6%;bottom:4%}:where(.source-document) .hero-card.travel{width:42%;height:35%;left:0;bottom:2%}:where(.source-document) .actions{display:grid}:where(.source-document) .button{width:100%}:where(.source-document) .intro,:where(.source-document) .suite-head,:where(.source-document) .paths{grid-template-columns:1fr;gap:27px}:where(.source-document) .intro,:where(.source-document) .suite,:where(.source-document) .path{padding:48px 26px}:where(.source-document) .collections{padding:12px}:where(.source-document) .collection-grid{grid-template-columns:1fr 1fr;gap:10px}:where(.source-document) .collection-copy{padding:14px}:where(.source-document) .collection h3{font-size:16px}:where(.source-document) .collection p{font-size:13px}:where(.source-document) .pieces{grid-template-columns:1fr 1fr}:where(.source-document) .piece{padding:15px 14px;font-size:14px}:where(.source-document) .path{min-height:0}:where(.source-document) .path .button{margin-top:20px}}
@container service-viewport (max-width:420px){:where(.source-document) .collection-grid,:where(.source-document) .pieces{grid-template-columns:1fr}}


.source-document{--accent:#38163c;--pastel:#f3eef3;--ochre:#f6f2ed}
.source-document{min-height:0}
:where(.source-document) .source-main{min-height:0;display:block}
:where(.source-document) .source-main>:last-child{flex-grow:0}
:where(.source-document) .eyebrow{color:var(--accent)}
:where(.source-document) .hero .eyebrow,:where(.source-document) .path.bespoke .eyebrow,:where(.source-document) .cta .eyebrow{color:var(--gold)}
:where(.source-document) .button:focus-visible,:where(.source-document) .collection:focus-visible{outline-color:var(--accent)}
:where(.source-document) .intro,:where(.source-document) .suite{background:#fff}:where(.source-document) .path.ready{background:var(--pastel)}
:where(.source-document) .collections{background:var(--ochre)}
:where(.source-document) .paths{gap:18px}:where(.source-document) .path.bespoke{background:var(--accent)}
:where(.source-document) .faq{margin:0;padding:76px var(--pad) 68px;background:#fff;border-radius:0}
:where(.source-document) .faq-head{max-width:760px;margin:0 auto 28px;text-align:center}:where(.source-document) .faq-head .eyebrow{margin-bottom:12px}
:where(.source-document) .faq details{max-width:900px;margin:0 auto;border-top:1px solid rgba(56,22,60,.22);padding:20px 0}:where(.source-document) .faq details:last-child{border-bottom:1px solid rgba(56,22,60,.22)}
:where(.source-document) .faq summary{font-family:"Playfair Display",Georgia,serif;font-size:21px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px}:where(.source-document) .faq summary::-webkit-details-marker{display:none}:where(.source-document) .faq summary:after{content:"+";font-family:Poppins,Arial,sans-serif}:where(.source-document) .faq details[open] summary:after{content:"–"}:where(.source-document) .faq details p{margin:14px 0 0;max-width:72ch;color:#50494e}
:where(.source-document) .cta{padding:70px var(--pad);background:var(--accent);color:#fff;text-align:center}:where(.source-document) .cta h2{max-width:780px;margin:0 auto 20px}:where(.source-document) .cta p{max-width:650px;margin:0 auto 28px;color:rgba(255,255,255,.86)}:where(.source-document) .cta .button{background:#fff;color:var(--ink)}
@container service-viewport (min-width:761px) and (max-width:1180px){:where(.source-document) .faq,:where(.source-document) .cta{padding-top:55px;padding-bottom:55px}}
@container service-viewport (min-width:1181px){:where(.source-document) .intro,:where(.source-document) .suite{padding-top:44px;padding-bottom:44px}:where(.source-document) .collections{padding:18px}:where(.source-document) .collection-media{aspect-ratio:16/7}:where(.source-document) .collection-copy{padding:14px 18px 16px}:where(.source-document) .suite-head{margin-bottom:24px}:where(.source-document) .piece{padding:12px 18px}:where(.source-document) .path{min-height:340px;padding-top:44px;padding-bottom:44px}:where(.source-document) .cta{padding-top:44px;padding-bottom:44px}:where(.source-document) .faq{padding-top:32px;padding-bottom:0}:where(.source-document) .faq-head{margin-bottom:20px}:where(.source-document) .faq details{padding:14px 0}}
@container service-viewport (max-width:760px){:where(.source-document) .faq,:where(.source-document) .cta{padding:48px 26px}:where(.source-document) .faq summary{font-size:19px}:where(.source-document) .faq details{padding:18px 0}}
@container service-viewport (max-width:760px){
.source-document{font-size:15.5px;line-height:1.62}:where(.source-document) .source-main{padding:10px 12px 0}:where(.source-document) .panel{margin-bottom:14px;border-radius:18px}:where(.source-document) h1{font-size:clamp(40px,12cqw,48px);line-height:1.04;letter-spacing:-.035em}:where(.source-document) h2{font-size:clamp(30px,8.5cqw,36px);line-height:1.14}:where(.source-document) h3{font-size:21px}:where(.source-document) .eyebrow{margin-bottom:12px}
:where(.source-document) .hero-products{height:276px;margin:10px}:where(.source-document) .hero-card{display:none}:where(.source-document) .hero-card.wizard{display:block;position:static;width:100%;height:100%;transform:none;border-radius:14px}:where(.source-document) .hero-card.wizard img{object-position:center}:where(.source-document) .hero-copy{padding:34px 22px 42px}:where(.source-document) .hero .lead{margin:20px 0 16px;font-size:23px}:where(.source-document) .hero .actions{gap:9px;margin-top:24px}:where(.source-document) .hero .actions .secondary{display:none}:where(.source-document) .intro,:where(.source-document) .suite,:where(.source-document) .path,:where(.source-document) .cta{padding:42px 22px}:where(.source-document) .intro,:where(.source-document) .suite-head,:where(.source-document) .paths{gap:22px}
:where(.source-document) .collections{padding:10px}:where(.source-document) .collection-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;padding:0 0 8px}:where(.source-document) .collection{flex:0 0 80%;scroll-snap-align:start}:where(.source-document) .collection-media{aspect-ratio:4/3}:where(.source-document) .collection-copy{padding:16px 17px 19px}:where(.source-document) .collection h3{font-size:17px}:where(.source-document) .collection p{font-size:14px}:where(.source-document) .pieces{grid-template-columns:1fr 1fr;gap:8px}:where(.source-document) .piece{padding:14px 12px}:where(.source-document) .paths{display:grid}:where(.source-document) .path{border-radius:18px}:where(.source-document) .button{min-height:50px;width:100%}:where(.source-document) .faq{padding:42px 22px 28px;border-radius:0}:where(.source-document) .faq-head{margin-bottom:20px}:where(.source-document) .faq details{padding:17px 0}:where(.source-document) .faq summary{min-height:48px;align-items:center;font-size:19px}
}
@container service-viewport (max-width:420px){:where(.source-document) .source-main{padding:8px 10px 0}:where(.source-document) .collection{flex-basis:86%}:where(.source-document) .pieces{grid-template-columns:1fr}}


@container service-viewport (min-width:761px){
.source-document{--ochre:#faf8fb;--soft:#faf8fb;--paper:#faf8fb}
}

:where(.source-document) .panel{margin-bottom:26px}:where(.source-document) .intro,:where(.source-document) .suite{padding-top:60px;padding-bottom:60px}:where(.source-document) .suite-head{margin-bottom:32px}:where(.source-document) .collections{padding:24px}:where(.source-document) .collection-grid,:where(.source-document) .paths{gap:24px}:where(.source-document) .collection-copy{padding:20px 22px}:where(.source-document) .pieces{gap:16px}:where(.source-document) .piece{padding:16px 20px}:where(.source-document) .path,:where(.source-document) .cta{padding-top:60px;padding-bottom:60px}:where(.source-document) .faq{padding-top:56px;padding-bottom:40px}:where(.source-document) .faq-head{margin-bottom:32px}:where(.source-document) .faq details{padding:22px 0}@container service-viewport (max-width:760px){:where(.source-document) .panel{margin-bottom:20px}:where(.source-document) .intro,:where(.source-document) .suite,:where(.source-document) .path,:where(.source-document) .cta{padding-top:50px;padding-bottom:50px}:where(.source-document) .collections{padding:14px}:where(.source-document) .collection-grid{gap:16px}:where(.source-document) .pieces{gap:12px}:where(.source-document) .piece{padding:16px 14px}:where(.source-document) .faq{padding-top:50px;padding-bottom:36px}:where(.source-document) .faq details{padding:21px 0}}
