@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#192b2c;--paper:#f5f5ef;--accent:#b94b2b;--line:#ccd2cb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:6px}button{cursor:pointer}.notice{background:var(--ink);color:#edf1e9;text-align:center;padding:8px 16px;font-size:13px}header{display:flex;justify-content:space-between;align-items:center;padding:25px 5vw;gap:25px}.brand{display:flex;align-items:center;gap:14px;font-size:14px;font-weight:700;letter-spacing:.1em;line-height:1.4}.brand small{display:block;font-size:11px;letter-spacing:.32em;margin-top:4px}.monogram{font-family:Georgia,serif;font-size:38px;letter-spacing:-.08em}.monogram span{color:var(--accent)}nav{display:flex;gap:32px;font-size:14px}.owner{border-bottom:1px solid var(--ink)}.hero{position:relative;min-height:690px;height:calc(100svh - 132px);max-height:1000px;overflow:hidden;background:#192b2c;color:#fff}.hero-image,.hero-video,.shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-video{opacity:0}.hero-video.playing{opacity:1}.shade{background:linear-gradient(90deg,rgba(9,23,27,.84),rgba(9,23,27,.3) 58%,rgba(9,23,27,.08)),linear-gradient(0deg,rgba(9,23,27,.6),transparent 25%)}.hero-copy{position:relative;padding:8vh 6vw;max-width:850px}.eyebrow{font-size:13px;font-weight:600;letter-spacing:.18em;margin:0 0 26px}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.045em;line-height:1.08;margin:0}h1{font-size:clamp(56px,6.6vw,102px)}h1 em,h2 em{font-weight:500}h2{font-size:clamp(38px,4.2vw,65px)}.intro{font-size:18px;line-height:1.65;margin:30px 0 35px;color:#e3e8e4}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:17px 24px;font-weight:600;border:0;font-size:15px;min-height:56px}.button span{font-size:23px}.light{background:var(--paper);color:var(--ink)}.dark{background:var(--ink);color:white}.hero-foot{position:absolute;bottom:25px;left:6vw;right:6vw;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;letter-spacing:.1em}.hero-foot button{background:transparent;border:1px solid #ffffff88;border-radius:30px;color:white;padding:8px 18px;font-size:13px}.section{padding:100px 7vw}.approach>.eyebrow,.planner .eyebrow{color:var(--accent)}.section-head{display:grid;grid-template-columns:1.5fr 1fr;gap:9vw;align-items:end}.section-head p{max-width:400px;margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid var(--line)}.services article{padding:32px 35px 0 0}.services article+article{padding-left:35px;border-left:1px solid var(--line)}.services article>span{font-size:13px;color:var(--accent)}h3{font-weight:500;font-size:25px;margin:13px 0}.services p{font-size:16px;color:#50605e;max-width:320px}.detail{display:grid;grid-template-columns:1.15fr 1fr;background:#dfe5df;min-height:650px}.detail-photo{position:relative;min-height:500px;overflow:hidden}.detail-photo img{width:100%;height:100%;object-fit:cover;object-position:80% center;position:absolute}.detail-photo span{position:absolute;bottom:20px;left:25px;color:#fff;background:#192b2ccb;padding:5px 10px;font-size:11px;max-width:85%}.detail-copy{padding:80px 6vw;align-self:center}.detail-copy p:not(.eyebrow){max-width:350px;margin:30px 0}.text-link{background:transparent;border:0;border-bottom:1px solid currentColor;padding:0 0 5px;color:var(--ink);font-size:15px;font-weight:600}.planner{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw}.planner>div>p:not(.eyebrow){max-width:370px}.preview-note{font-size:14px;color:#576764;border-left:2px solid var(--accent);padding-left:18px;margin-top:30px}.planner form{background:#fff;padding:36px}.planner label{display:block;font-size:14px;font-weight:600;margin-bottom:22px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,textarea,select{width:100%;display:block;margin-top:8px;border:1px solid #b5c0ba;border-radius:0;padding:12px;background:#fbfcfa;color:var(--ink);font-size:16px}textarea{resize:vertical}.planner .button{width:100%}#result{border-top:1px solid var(--line);margin-top:30px;padding-top:20px}#result pre{font:16px/1.6 'DM Sans',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}#result p{font-size:14px}.closing{text-align:center;background:var(--ink);color:#fff;padding:90px 20px}.closing .eyebrow{color:#c9d3c5}.closing p{margin:25px 0}.closing .button{margin-top:10px}footer{display:flex;gap:30px;justify-content:space-between;align-items:center;padding:35px 5vw;font-size:13px}footer .brand{font-size:12px}footer p{font-size:12px;max-width:420px}.owner-page{max-width:920px;margin:auto;padding:65px 25px}.owner-page h1{font-size:clamp(40px,6vw,70px);margin:30px 0}.owner-page .offer{padding:35px;background:#dfe5df;margin:35px 0}.owner-page strong.price{display:block;font:60px Georgia,serif}.owner-page li{margin:12px 0}@media(max-width:700px){header{padding:18px 5vw}.monogram{font-size:28px}.brand{font-size:11px}.brand small{font-size:10px}nav{gap:15px;font-size:13px}nav a:first-child{display:none}.hero{min-height:650px;height:85svh}.hero-image,.hero-video{object-position:66% center}.hero-copy{padding:65px 6vw}.hero h1{font-size:57px}.intro{font-size:16px}.shade{background:linear-gradient(90deg,#09171bd9,#09171b44),linear-gradient(0deg,#09171baa,transparent 40%)}.hero-foot{font-size:10px;flex-wrap:wrap}.hero-foot>span:first-child{display:none}.section{padding:65px 6vw}.section-head,.planner,.detail{grid-template-columns:1fr;gap:28px}.section-head p{margin-top:5px}.services{grid-template-columns:1fr;margin-top:35px}.services article,.services article+article{padding:25px 0;border-left:0;border-bottom:1px solid var(--line)}.services p{max-width:none}.detail-photo{min-height:350px}.detail-copy{padding:30px 6vw 60px}.planner form{padding:24px 18px}.fields{grid-template-columns:1fr;gap:0}.closing{padding:70px 6vw}footer{align-items:flex-start;flex-direction:column;gap:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-video{display:none}}
