:root{--ink:#12272a;--cream:#f6f0df;--paper:#fffdf6;--red:#a62b35;--mint:#b8d9ca;--gold:#d2a94d;--line:rgba(18,39,42,.18);--max:1180px;--shadow:0 26px 70px rgba(18,39,42,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.25;background-image:radial-gradient(rgba(18,39,42,.13) .7px,transparent .7px);background-size:6px 6px}a{color:inherit;text-decoration:none}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:1rem;left:1rem;background:#fff;padding:.7rem 1rem;z-index:100}.header{height:84px;max-width:var(--max);margin:auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:40}.logo{display:flex;align-items:center;gap:.8rem;text-transform:uppercase;letter-spacing:.13em}.logo-ring{width:45px;height:45px;border:2px solid currentColor;border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;font-size:1.6rem;font-weight:800}.logo strong,.logo small{display:block}.logo strong{font-family:Georgia,serif;font-size:1.12rem}.logo small{font-size:.57rem;letter-spacing:.18em}.header nav{display:flex;align-items:center;gap:1.8rem;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.header nav>a:not(.pill){border-bottom:2px solid transparent}.header nav>a:not(.pill):hover{border-color:var(--red)}.pill{background:var(--ink);color:#fff;padding:.85rem 1.15rem;border-radius:999px}.menu{display:none;border:0;background:none;padding:.6rem}.menu span:not(.sr-only){display:block;width:24px;height:2px;background:var(--ink);margin:6px}
.hero{max-width:var(--max);min-height:calc(100vh - 84px);margin:auto;padding:4rem 2rem 6rem;display:grid;grid-template-columns:1.08fr .92fr;gap:5rem;align-items:center}.overline{text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:950;color:var(--red);margin:0 0 1rem}.hero h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:.98;margin:0}.hero h1{font-size:clamp(4rem,8vw,7.5rem);letter-spacing:-.06em}.hero h1 em{font-weight:400;color:var(--red)}h2{font-size:clamp(2.8rem,5.2vw,5rem);letter-spacing:-.045em}h3{font-size:1.65rem}.intro{font-size:clamp(1.05rem,1.7vw,1.3rem);color:#475759;max-width:590px;margin:1.7rem 0 2rem}.actions{display:flex;gap:1rem;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.85rem 1.35rem;border:2px solid var(--ink);border-radius:3px;font-size:.77rem;font-weight:950;text-transform:uppercase;letter-spacing:.1em;transition:.2s}.button:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(18,39,42,.13)}.primary{background:var(--red);border-color:var(--red);color:#fff}.secondary{background:transparent}.open-card{margin-top:2rem;display:flex;align-items:center;gap:.75rem}.open-card i{width:11px;height:11px;border-radius:50%;background:#939b9b;box-shadow:0 0 0 5px rgba(147,155,155,.14)}.open-card i.open{background:#248661;box-shadow:0 0 0 5px rgba(36,134,97,.13)}.open-card i.closed{background:var(--red);box-shadow:0 0 0 5px rgba(166,43,53,.13)}.open-card span{display:flex;flex-direction:column}.open-card small{color:#697577}.hero-visual{aspect-ratio:4/5;background:var(--ink);position:relative;overflow:hidden;border:12px solid var(--cream);outline:2px solid var(--ink);box-shadow:var(--shadow);display:grid;place-items:center}.tile{position:absolute;background:var(--mint);opacity:.9}.tile-one{width:130%;height:34%;transform:rotate(-18deg)}.tile-two{width:130%;height:26%;background:var(--red);transform:rotate(22deg)}.hero-visual:before{content:"";position:absolute;inset:7%;border:1px solid rgba(255,255,255,.35)}.monogram{z-index:2;width:58%;aspect-ratio:1;background:var(--cream);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.22em;box-shadow:0 0 0 10px var(--gold),0 0 0 13px var(--cream)}.monogram strong{font-family:Georgia,serif;font-size:clamp(5rem,10vw,8rem);line-height:.82;color:var(--red)}.monogram span,.monogram small{font-size:.65rem;font-weight:900}.scissors{position:absolute;right:6%;bottom:4%;width:94px;height:94px;border-radius:50%;background:var(--cream);display:grid;place-items:center;transform:rotate(-12deg);z-index:3}.scissors b{font-size:2.5rem;color:var(--red)}
.marquee{background:var(--red);color:#fff;overflow:hidden;padding:1rem 0}.marquee div{display:flex;justify-content:center;gap:2.5rem;white-space:nowrap;text-transform:uppercase;letter-spacing:.16em;font-size:.73rem;font-weight:900}.marquee b{color:var(--gold)}.section{max-width:var(--max);margin:auto;padding:8rem 2rem}.heading{max-width:820px;margin-bottom:3rem}.heading>p:last-child{font-size:1.08rem;color:#596668}.planner-grid{display:grid;grid-template-columns:1.2fr .8fr;border:2px solid var(--ink);background:#fff;box-shadow:var(--shadow)}.options{display:grid;grid-template-columns:1fr 1fr}.option{min-height:185px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;text-align:left;padding:1.8rem;color:var(--ink);display:flex;flex-direction:column;gap:.3rem;cursor:pointer;transition:.2s}.option:nth-child(2n){border-right:0}.option:nth-child(n+3){border-bottom:0}.option:hover,.option.active{background:var(--cream)}.option span{color:var(--red);font-weight:950}.option strong{font-family:Georgia,serif;font-size:1.45rem}.option small{color:#6a7475}.result{background:var(--ink);color:#fff;padding:3rem;position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}.result:before{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(255,255,255,.16);border-radius:50%;top:-120px;right:-90px;box-shadow:0 0 0 42px rgba(255,255,255,.03)}.result .overline{color:var(--gold)}.quote-mark{font-family:Georgia,serif;font-size:6rem;line-height:.5;color:var(--mint)}blockquote{font-family:Georgia,serif;font-size:1.8rem;line-height:1.2;margin:1.4rem 0 2rem}.result a,.visit-cards a{width:max-content;border-bottom:2px solid var(--red);padding-bottom:.15rem;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.result a{border-color:var(--mint)}
.story{background:var(--cream);display:grid;grid-template-columns:1fr 1fr;min-height:540px}.story-card{padding:max(4rem,8vw);display:flex;flex-direction:column;justify-content:center}.story-card p:last-child{font-size:1.12rem;color:#526062;max-width:600px}.stripe-art{position:relative;overflow:hidden;background:var(--ink)}.stripe-art span{position:absolute;width:150%;height:22%;left:-25%;transform:rotate(-25deg)}.stripe-art span:nth-child(1){background:var(--red);top:16%}.stripe-art span:nth-child(2){background:var(--cream);top:42%}.stripe-art span:nth-child(3){background:var(--mint);top:68%}
.split{display:grid;grid-template-columns:1.5fr .5fr;gap:4rem;align-items:end;max-width:none}.split>p{color:#5f6b6d}.visit-cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--ink)}.visit-cards article{padding:2rem;border-right:1px solid var(--line)}.visit-cards article:last-child{border-right:0}.visit-cards article>span{color:var(--red);font-weight:950;display:block;margin-bottom:3rem}.visit-cards h3{margin-bottom:1.25rem}.visit-cards address{font-style:normal;margin-bottom:1rem}.visit-cards dl{margin:0}.visit-cards dl div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding:.35rem 0}.visit-cards dd{margin:0;text-align:right}.visit-cards article:nth-child(3)>a{display:block;margin:.7rem 0;max-width:100%;word-break:break-word}.visit-cards article:nth-child(3)>p{color:#697577}.cta{background:var(--red);color:#fff;text-align:center;padding:7rem 2rem;display:flex;flex-direction:column;align-items:center}.cta .overline{color:var(--gold)}.cta h2{max-width:900px}.cta .actions{margin-top:2rem}.light{background:var(--cream);border-color:var(--cream);color:var(--ink)}.outline{border-color:var(--cream);color:var(--cream)}footer{max-width:var(--max);margin:auto;padding:3rem 2rem;display:grid;grid-template-columns:1fr auto auto;gap:2rem;align-items:center;font-size:.74rem;color:#5b686a}
@media(max-width:900px){.header{height:74px;padding:0 1.25rem}.menu{display:block;z-index:3}.header nav{display:none;position:absolute;top:67px;left:1rem;right:1rem;background:var(--paper);border:2px solid var(--ink);box-shadow:var(--shadow);padding:1rem;flex-direction:column;align-items:stretch;gap:0}.header nav.open{display:flex}.header nav a{padding:1rem}.pill{text-align:center}.hero{grid-template-columns:1fr;min-height:auto;padding:4rem 1.25rem}.hero-visual{max-width:560px;width:100%;margin:auto}.section{padding:6rem 1.25rem}.planner-grid{grid-template-columns:1fr}.story{grid-template-columns:1fr}.stripe-art{min-height:400px}.split{grid-template-columns:1fr;gap:1rem}.visit-cards{grid-template-columns:1fr}.visit-cards article{border-right:0;border-bottom:1px solid var(--line)}footer{grid-template-columns:1fr}}
@media(max-width:560px){.logo small{display:none}.hero h1{font-size:3.65rem}.actions{flex-direction:column}.button{width:100%}.options{grid-template-columns:1fr}.option{min-height:140px;border-right:0;border-bottom:1px solid var(--line)!important}.option:last-child{border-bottom:0!important}.result{min-height:350px}.visit-cards article{padding:2rem 0}.marquee div{justify-content:flex-start;padding-left:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
