:root{--serif:Georgia,'Times New Roman',serif;--sans:Arial,'Helvetica Neue',sans-serif;--paper:#f4efe5;--ink:#20241f;--green:#53614e;--cream:#fbf7ed}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--serif);color:var(--ink)}body{min-height:100vh}img{display:block;max-width:100%}a{color:inherit}.review-back{position:fixed;left:1rem;top:1rem;z-index:20;background:rgba(250,247,239,.92);color:#1e231e;padding:.7rem 1rem;text-decoration:none;font:700 .62rem var(--sans);letter-spacing:.15em;text-transform:uppercase;backdrop-filter:blur(8px);border:1px solid rgba(30,35,30,.18)}.review-back:focus-visible,.action:focus-visible{outline:3px solid #28577b;outline-offset:3px}.concept-page{min-height:100vh;position:relative;overflow:hidden}.concept-art{margin:0}.concept-art img{width:100%;height:100%;object-fit:cover}.concept-copy{position:relative;z-index:2}.overline,.concept-name,.detail-label{font:700 .65rem var(--sans);letter-spacing:.2em;text-transform:uppercase}.names{font-weight:400;margin:0;letter-spacing:-.055em}.amp{font-style:italic;color:var(--green)}.date{font-family:var(--sans);letter-spacing:.18em}.venue{line-height:1.4}.action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.7rem 1.2rem;border:1px solid currentColor;font:700 .63rem var(--sans);letter-spacing:.18em;text-transform:uppercase;text-decoration:none}.concept-name{position:absolute;z-index:3}.ornament{position:absolute;pointer-events:none}

/* 01 — Garden Ledger */
.theme-01{background:#f0eadf}.theme-01 .concept-page{display:grid;grid-template-columns:1.05fr .95fr;padding:7vw}.theme-01 .concept-copy{display:flex;flex-direction:column;justify-content:center;padding-right:7vw}.theme-01 .overline{color:#65715d;margin-bottom:2rem}.theme-01 .names{font-size:clamp(4rem,8vw,8rem);line-height:.78}.theme-01 .names span{display:block}.theme-01 .names .amp{font-size:.42em;margin:.3em 0 .3em 38%}.theme-01 .date{margin:2.5rem 0 .6rem}.theme-01 .venue{font-style:italic;margin:0 0 2rem}.theme-01 .concept-art{padding:1rem;background:#faf7ef;box-shadow:0 25px 60px rgba(38,37,31,.16);transform:rotate(1deg)}.theme-01 .concept-art img{height:calc(100vh - 14vw);object-position:center 42%}.theme-01 .concept-name{right:2rem;bottom:1.5rem;color:#65715d}.theme-01 .ornament{width:32vw;height:32vw;border:1px solid rgba(83,97,78,.25);border-radius:50%;left:-17vw;top:18vh}

/* 02 — Engraved Invitation */
.theme-02{background:#ded7c8}.theme-02 .concept-page{display:grid;place-items:center;padding:5vh 5vw}.theme-02 .concept-page:before,.theme-02 .concept-page:after{content:'';position:absolute;inset:2rem;border:1px solid rgba(55,57,45,.45)}.theme-02 .concept-page:after{inset:2.45rem}.theme-02 .concept-art{position:absolute;inset:0;opacity:.5;filter:saturate(.9) contrast(1.04)}.theme-02 .concept-art img{height:100vh;object-position:center 30%}.theme-02 .concept-copy{text-align:center;background:rgba(246,241,229,.88);padding:clamp(3rem,7vw,7rem);width:min(760px,82vw);border:1px solid rgba(55,57,45,.45)}.theme-02 .overline{margin:0 0 2.2rem}.theme-02 .names{font-size:clamp(3.8rem,8vw,7.5rem);line-height:.82}.theme-02 .amp{display:block;font-size:.5em;margin:.25em}.theme-02 .date{border-top:1px solid;border-bottom:1px solid;padding:1rem 0;margin:2.3rem auto 1.5rem;max-width:23rem}.theme-02 .venue{margin-bottom:2rem}.theme-02 .concept-name{bottom:1rem;left:50%;transform:translateX(-50%)}
.theme-02-chancery .concept-copy{font-family:'Monotype Corsiva','Apple Chancery','URW Chancery L',cursive;text-align:center}.theme-02-chancery .concept-copy>*,.theme-02-chancery .details{width:100%;margin-left:auto;margin-right:auto}.theme-02-chancery .names{box-sizing:border-box;width:100%;padding-inline:.2em;font-family:'Monotype Corsiva','Apple Chancery','URW Chancery L',cursive;font-weight:400;letter-spacing:-.02em;text-align:center;overflow:visible}.theme-02-chancery .person-name{display:block;width:100%;padding-inline:.08em;text-align:center;transform:translateX(-.14em)}.theme-02-chancery .overline,.theme-02-chancery .date,.theme-02-chancery .venue,.theme-02-chancery .action{font-family:'Monotype Corsiva','Apple Chancery','URW Chancery L',cursive}.theme-02-chancery .overline{display:block;width:100%;font-size:clamp(1.65rem,2.9vw,2.15rem);letter-spacing:.045em;line-height:1.45;text-align:center;text-transform:none}.theme-02-chancery .date{font-size:clamp(1.4rem,2.55vw,1.85rem);line-height:1.5;letter-spacing:.05em;max-width:34rem;text-align:center}.theme-02-chancery .venue{font-size:clamp(1rem,1.55vw,1.25rem);letter-spacing:.035em;line-height:1.45;text-align:center}.theme-02-chancery .action{font-size:.85rem;letter-spacing:.08em;text-transform:none}

/* 03 — River Valley Modern */
.theme-03{background:#131b17;color:white}.theme-03 .concept-art{position:absolute;inset:0}.theme-03 .concept-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,15,12,.82),rgba(8,15,12,.08) 68%),linear-gradient(0deg,rgba(8,15,12,.5),transparent 55%)}.theme-03 .concept-art img{height:100vh;object-position:center 55%}.theme-03 .concept-copy{min-height:100vh;padding:10vh 7vw;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start}.theme-03 .overline{margin:auto 0 0}.theme-03 .names{font-family:var(--sans);font-size:clamp(4.4rem,11vw,11rem);line-height:.72;text-transform:uppercase;letter-spacing:-.07em;max-width:9ch;margin:2rem 0}.theme-03 .amp{font-family:var(--serif);font-size:.65em;color:#d4c49e}.theme-03 .details{display:flex;align-items:center;gap:2rem}.theme-03 .date,.theme-03 .venue{margin:0}.theme-03 .action{margin-left:1rem}.theme-03 .concept-name{right:2rem;top:50%;writing-mode:vertical-rl;transform:translateY(-50%);color:#fff}.theme-03 .ornament{inset:4vh 2vw;border:1px solid rgba(255,255,255,.4)}

/* 04 — Courtyard Editorial */
.theme-04{background:#efece4}.theme-04 .concept-page{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:1fr;padding:6vw;gap:0}.theme-04 .concept-art{height:88vh;grid-column:1;grid-row:1}.theme-04 .concept-art img{height:100%;object-position:center}.theme-04 .concept-copy{grid-column:1/3;grid-row:1;align-self:center;display:grid;grid-template-columns:1.15fr .85fr;pointer-events:none}.theme-04 .names{grid-column:1/3;font-size:clamp(5rem,11vw,11rem);line-height:.72;color:#f8f4ea;text-shadow:0 2px 25px rgba(18,18,15,.18);margin-left:-2vw;white-space:nowrap}.theme-04 .amp{color:#293029}.theme-04 .details{grid-column:2;background:#d7cbb7;padding:3rem;margin:4rem 0 0 -3rem;pointer-events:auto}.theme-04 .overline{margin:0 0 1rem}.theme-04 .date{font-size:1.2rem}.theme-04 .venue{margin:1rem 0 1.8rem}.theme-04 .concept-name{right:1.5rem;top:50%;writing-mode:vertical-rl;transform:translateY(-50%)}

/* 05 — Heirloom Arch */
.theme-05{background:#e8e0cf}.theme-05 .concept-page{display:grid;place-items:center;padding:3rem}.theme-05 .concept-art{position:absolute;inset:0;display:grid;place-items:center}.theme-05 .concept-art:after{content:'';position:absolute;inset:0;background:rgba(244,239,226,.48)}.theme-05 .concept-art img{width:min(720px,75vw);height:88vh;object-position:center;border-radius:48% 48% 2rem 2rem;box-shadow:0 20px 70px rgba(34,40,31,.22)}.theme-05 .concept-copy{text-align:center;background:rgba(249,246,237,.86);border:1px solid #7c816d;padding:clamp(2.5rem,6vw,5.5rem);width:min(630px,78vw);clip-path:polygon(50% 0,96% 10%,100% 100%,0 100%,4% 10%)}.theme-05 .overline{margin:1rem}.theme-05 .names{font-size:clamp(3.7rem,7vw,6.8rem);line-height:.8}.theme-05 .amp{display:block;margin:.25em}.theme-05 .date{margin:2rem 0 .5rem}.theme-05 .venue{margin:0 0 1.7rem}.theme-05 .concept-name{bottom:1.2rem;left:50%;transform:translateX(-50%)}.theme-05 .ornament{width:90vw;height:90vw;border:1px solid rgba(71,81,63,.24);border-radius:50%;top:-73vw;left:5vw}

/* 06 — Midnight Garden */
.theme-06{background:#101713;color:#eee7d7}.theme-06 .concept-page{display:grid;grid-template-columns:.72fr 1.28fr;padding:4vw}.theme-06 .concept-art{grid-column:2;height:92vh;position:relative}.theme-06 .concept-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101713 0,transparent 40%),rgba(17,27,21,.2)}.theme-06 .concept-art img{height:100%;filter:grayscale(.65) sepia(.22) brightness(.72)}.theme-06 .concept-copy{grid-column:1/3;grid-row:1;align-self:center;width:52vw}.theme-06 .overline{color:#b1a276}.theme-06 .names{font-size:clamp(4rem,9vw,9rem);line-height:.8}.theme-06 .amp{display:block;color:#b1a276;margin-left:35%;font-size:.5em}.theme-06 .date{margin:2.5rem 0 .5rem;color:#d7cba9}.theme-06 .venue{margin:0 0 2rem}.theme-06 .concept-name{right:1rem;bottom:1rem;color:#b1a276}.theme-06 .ornament{inset:7vw;border:1px solid rgba(199,184,141,.45)}

/* 07 — Spring Postcard */
.theme-07{background:#aab8b0}.theme-07 .concept-page{display:grid;place-items:center;padding:5vw}.theme-07 .concept-art{position:absolute;inset:0;filter:saturate(.75)}.theme-07 .concept-art:after{content:'';position:absolute;inset:0;background:rgba(38,58,48,.26)}.theme-07 .concept-art img{height:100vh;object-position:center 58%}.theme-07 .concept-copy{width:min(840px,84vw);background:#f5ecda;padding:clamp(2rem,6vw,5rem);transform:rotate(-2deg);box-shadow:0 30px 80px rgba(29,40,34,.32);display:grid;grid-template-columns:1fr 1fr;gap:2rem}.theme-07 .overline{grid-column:1/3}.theme-07 .names{font-size:clamp(3.5rem,7vw,7rem);line-height:.82;grid-column:1/3}.theme-07 .amp{color:#b9634d}.theme-07 .details{grid-column:2;border-left:1px solid #a99779;padding-left:2rem}.theme-07 .date{margin:0}.theme-07 .venue{margin:.7rem 0 1.5rem}.theme-07 .concept-name{left:1.5rem;bottom:1rem;color:#fff}.theme-07 .ornament{width:110px;height:110px;border:2px solid #b9634d;border-radius:50%;right:10vw;top:12vh;opacity:.8}

/* 08 — Gallery Minimal */
.theme-08{background:#faf9f4}.theme-08 .concept-page{display:grid;grid-template-columns:1fr 1fr;padding:7vw;gap:7vw}.theme-08 .concept-art{align-self:center;height:64vh}.theme-08 .concept-art img{height:100%;object-position:center}.theme-08 .concept-copy{align-self:center}.theme-08 .overline{margin-bottom:5rem}.theme-08 .names{font-family:var(--sans);font-size:clamp(3.5rem,7vw,7rem);line-height:.86;text-transform:uppercase;letter-spacing:-.075em}.theme-08 .amp{font:italic .6em var(--serif);display:block;color:#65695f;margin:.2em 0}.theme-08 .details{margin-top:5rem;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid;padding-top:1rem}.theme-08 .date,.theme-08 .venue{margin:0}.theme-08 .action{grid-column:2;width:max-content;margin-top:1.5rem}.theme-08 .concept-name{right:1.5rem;bottom:1rem;color:#777}.theme-08 .ornament{width:1px;background:#252825;top:0;bottom:0;left:50%}

/* 09 — Estate Journal */
.theme-09{background:#c5bba7}.theme-09 .concept-page{display:grid;place-items:center;padding:5vw}.theme-09 .concept-page:before,.theme-09 .concept-page:after{content:'';position:absolute;background:#e8deca;width:44vw;height:76vh;box-shadow:0 18px 50px rgba(45,40,30,.16)}.theme-09 .concept-page:before{transform:rotate(-5deg) translate(-14vw,2vh)}.theme-09 .concept-page:after{transform:rotate(4deg) translate(14vw,-1vh);background:#ddd1ba}.theme-09 .concept-art{position:absolute;z-index:1;width:min(470px,39vw);height:74vh;transform:rotate(2deg) translateX(15vw);padding:1rem;background:#f1e9db;box-shadow:0 18px 45px rgba(45,40,30,.2)}.theme-09 .concept-art img{height:100%;object-position:center}.theme-09 .concept-copy{width:min(510px,44vw);transform:rotate(-2deg) translateX(-15vw);background:#f4edde;padding:clamp(2rem,5vw,5rem);box-shadow:0 18px 45px rgba(45,40,30,.16)}.theme-09 .overline{color:#77644c}.theme-09 .names{font-size:clamp(3.5rem,7vw,6.7rem);line-height:.78}.theme-09 .amp{display:block;color:#8a5e51;margin:.25em}.theme-09 .date{margin:2rem 0 .4rem}.theme-09 .venue{margin:0 0 1.5rem}.theme-09 .concept-name{right:1.5rem;bottom:1rem}.theme-09 .ornament{z-index:4;left:47%;top:16%;width:80px;height:80px;border-radius:50%;background:#8c7257;opacity:.88;box-shadow:0 4px 10px rgba(40,30,20,.2)}

/* 10 — Botanical Monogram */
.theme-10{background:#435343;color:#f3eddf}.theme-10 .concept-page{display:grid;grid-template-columns:1fr 1fr;padding:3vw}.theme-10 .concept-art{grid-column:2;height:94vh;clip-path:ellipse(72% 55% at 50% 50%)}.theme-10 .concept-art img{height:100%;object-position:center 38%;filter:saturate(.72)}.theme-10 .concept-copy{grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:center;padding:6vw}.theme-10 .overline{color:#c7b991}.theme-10 .names{font-size:clamp(4rem,8vw,8rem);line-height:.77}.theme-10 .amp{display:block;color:#c7b991;margin:.25em 0 .25em 35%}.theme-10 .date{margin:2.5rem 0 .5rem}.theme-10 .venue{margin:0 0 2rem}.theme-10 .action{width:max-content}.theme-10 .concept-name{right:1.2rem;bottom:1rem;color:#f3eddf}.theme-10 .ornament{width:44vw;height:44vw;border:1px solid rgba(240,232,211,.35);border-radius:50%;right:2vw;top:calc(50% - 22vw)}.theme-10 .ornament:before{content:'M\A &\A G';white-space:pre;display:grid;place-items:center;width:10rem;height:10rem;border:1px solid #c7b991;border-radius:50%;position:absolute;left:-5rem;top:calc(50% - 5rem);background:#435343;text-align:center;font:italic 2.2rem/1.05 var(--serif);color:#c7b991}

@media(max-width:760px){.review-back{position:absolute}.concept-page{min-height:100svh!important}.theme-01 .concept-page,.theme-03 .concept-page,.theme-04 .concept-page,.theme-06 .concept-page,.theme-08 .concept-page,.theme-10 .concept-page{display:block;padding:6rem 1.25rem 2rem}.theme-01 .concept-art,.theme-04 .concept-art,.theme-06 .concept-art,.theme-08 .concept-art,.theme-10 .concept-art{position:absolute;inset:0;width:100%;height:100%;padding:0;transform:none;opacity:.3;clip-path:none}.theme-01 .concept-art img,.theme-04 .concept-art img,.theme-06 .concept-art img,.theme-08 .concept-art img,.theme-10 .concept-art img{height:100%;object-fit:cover}.theme-01 .concept-copy,.theme-04 .concept-copy,.theme-06 .concept-copy,.theme-08 .concept-copy,.theme-10 .concept-copy{display:flex;min-height:calc(100svh - 8rem);width:auto;flex-direction:column;justify-content:center;padding:1rem;color:inherit}.theme-01 .concept-art:after,.theme-04 .concept-art:after,.theme-08 .concept-art:after,.theme-10 .concept-art:after{content:'';position:absolute;inset:0;background:rgba(244,239,229,.72)}.theme-04 .names{white-space:normal;color:#20241f;text-shadow:none}.theme-04 .details,.theme-08 .details{display:block;margin:2rem 0 0;padding:1.5rem;background:rgba(244,239,229,.88)}.theme-06 .concept-copy,.theme-10 .concept-copy{color:#f3eddf}.theme-07 .concept-copy{grid-template-columns:1fr;transform:rotate(-1deg)}.theme-07 .overline,.theme-07 .names,.theme-07 .details{grid-column:1}.theme-07 .details{border-left:0;border-top:1px solid;padding:1rem 0 0}.theme-09 .concept-art{width:70vw;height:65vh;transform:rotate(2deg) translate(10vw,7vh);opacity:.55}.theme-09 .concept-copy{width:78vw;transform:rotate(-2deg) translate(-5vw);padding:2rem}.theme-03 .details{display:block}.theme-03 .action{margin:1rem 0}.concept-name{display:none!important}}
.action-disabled{background:rgba(222,215,200,.58);color:rgba(32,36,31,.48);border-color:rgba(32,36,31,.28);cursor:not-allowed;opacity:.72}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
