@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;1,600&display=swap');
:root{--ink:#f7f4ee;--muted:#aaa9ad;--bg:#1e1d20;--panel:#29272b;--line:#3a383d;--coral:#e87964;--cream:#f4e8d4;--lilac:#d9cff0;--green:#cbd9c7;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55;transition:background .25s,color .25s}.section-shell{width:min(1160px,calc(100% - 72px));margin-inline:auto}.site-header{height:88px;width:min(1160px,calc(100% - 72px));margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;color:var(--ink);font-size:20px;font-weight:700;text-decoration:none;letter-spacing:-.05em}.brand-mark{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--coral);color:#241e1e;font-size:15px}.brand-dot{color:var(--coral)}.main-nav{display:flex;gap:36px;margin-left:115px}.main-nav a,.footer-links a{color:var(--muted);font-size:13px;text-decoration:none;transition:color .2s}.main-nav a:hover,.main-nav .active,.footer-links a:hover{color:var(--ink)}.header-actions{display:flex;align-items:center;gap:18px}.icon-button{border:1px solid var(--line);background:transparent;color:var(--ink);width:35px;height:35px;border-radius:50%;cursor:pointer;font-size:17px}.button{display:inline-flex;align-items:center;gap:13px;text-decoration:none;border-radius:3px;padding:14px 20px;font-size:13px;font-weight:600;transition:transform .2s,background .2s}.button:hover,.round-arrow:hover{transform:translateY(-2px)}.button-small{padding:10px 15px}.button-dark{background:var(--ink);color:var(--bg)}.button-primary{background:var(--coral);color:#251d1d}.hero{min-height:540px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:76px 0 82px}.eyebrow{display:flex;align-items:center;gap:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:600;margin:0 0 21px}.eyebrow-line{width:27px;height:1px;background:var(--coral)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,6vw,75px);letter-spacing:-.065em;line-height:1.04;margin-bottom:25px;font-weight:500}h1 em,h2 em{font-family:var(--serif);font-weight:500;color:var(--coral)}.hero-text{color:var(--muted);max-width:390px;font-size:16px;line-height:1.7;margin-bottom:32px}.hero-actions{display:flex;align-items:center;gap:28px}.text-link{color:var(--ink);text-decoration:none;font-size:13px}.text-link span{color:var(--coral);padding-left:5px}.hero-art{position:relative;height:370px;overflow:hidden;background:var(--cream);border-radius:190px 190px 10px 10px}.sun{position:absolute;width:145px;height:145px;border-radius:50%;background:var(--coral);top:65px;left:50%;transform:translateX(-50%)}.arch{position:absolute;border:1px solid rgba(71,61,55,.28);border-bottom:0;border-radius:170px 170px 0 0}.arch-back{width:285px;height:220px;bottom:-53px;left:calc(50% - 143px)}.arch-front{width:180px;height:150px;bottom:-30px;left:calc(50% - 90px);background:var(--cream)}.art-spark{position:absolute;color:#70635c;font-size:28px}.spark-one{top:55px;left:28%}.spark-two{top:135px;right:21%;font-size:46px}.art-caption{position:absolute;bottom:30px;left:31px;color:#675b55;font-size:11px;line-height:1.7}.art-caption strong{font-size:13px;font-weight:600}.caption-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--coral);margin-right:7px}.welcome-strip{background:var(--coral);color:#281e1b}.strip-inner{display:flex;align-items:center;gap:18px;padding:21px 0}.strip-icon{font-size:27px}.strip-kicker{margin:0;text-transform:uppercase;font-size:9px;letter-spacing:.15em;font-weight:700}.strip-message{margin:2px 0 0;font-family:var(--serif);font-size:17px}.round-arrow{margin-left:auto;display:grid;place-items:center;width:35px;height:35px;border:1px solid rgba(40,30,27,.4);border-radius:50%;color:#281e1b;text-decoration:none;transition:transform .2s}.features{padding:92px 0 105px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.section-heading .eyebrow{margin:0 0 7px}.section-heading h2{font-size:43px;line-height:1.07;letter-spacing:-.055em;font-weight:500;margin:0}.section-heading h2 em{color:var(--cream)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.feature-card{position:relative;min-height:280px;padding:27px 28px 25px;text-decoration:none;color:#292326;display:flex;flex-direction:column;transition:transform .2s}.feature-card:hover{transform:translateY(-5px)}.card-warm{background:var(--cream)}.card-lilac{background:var(--lilac)}.card-green{background:var(--green)}.card-number{font-size:11px;font-weight:700;opacity:.55}.card-icon{position:absolute;right:27px;top:21px;font-size:30px}.feature-card h3{font-family:var(--serif);font-size:25px;font-weight:500;letter-spacing:-.03em;margin:49px 0 10px}.feature-card p{font-size:13px;line-height:1.6;max-width:245px;margin-bottom:20px;color:#62575c}.card-link{font-size:11px;font-weight:700;margin-top:auto}.card-link b{font-size:17px;margin-left:7px;font-weight:400}.site-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:27px 0 32px}.site-footer p{color:var(--muted);font-size:12px;margin:0}.footer-links{display:flex;gap:24px}.light-theme{--bg:#f8f5ef;--ink:#29262a;--muted:#787378;--panel:#eee9e1;--line:#ded8d0}.light-theme .button-dark{background:var(--ink);color:#fff}.light-theme .section-heading h2 em{color:#9d7956}.light-theme .icon-button{color:var(--ink)}@media(max-width:760px){.section-shell,.site-header{width:min(100% - 40px,560px)}.site-header{height:72px}.main-nav{display:none}.header-actions{margin-left:auto}.header-actions .button{display:none}.hero{grid-template-columns:1fr;gap:42px;padding:60px 0 65px}.hero-art{height:300px}.hero-copy h1{font-size:56px}.section-heading{display:block}.section-heading .eyebrow{margin-bottom:22px}.feature-grid{grid-template-columns:1fr}.feature-card{min-height:240px}.features{padding:68px 0 75px}.site-footer{flex-wrap:wrap;gap:20px}.site-footer p{order:3;width:100%}}@media(max-width:410px){.hero-copy h1{font-size:47px}.hero-actions{gap:17px;flex-wrap:wrap}.strip-message{font-size:15px}}