@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--cream:#f8f4eb;--paper:#efebe1;--green:#183c30;--red:#a92830;--ink:#253b31;--muted:#586259;--line:#d9d9cb;--ease:cubic-bezier(.23,1,.32,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}img{max-width:100%;display:block;object-fit:cover}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a,summary{touch-action:manipulation}a:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-.045em;text-wrap:balance}h1{font-size:clamp(58px,5.8vw,88px)}h2{font-size:clamp(38px,4vw,58px)}h3{font-size:34px}em{font-weight:400}p{margin-bottom:20px}.wrap{width:min(1280px,88%);margin-inline:auto}.section{padding-block:110px}.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:700;margin-bottom:22px;line-height:1.5}.announcement{background:var(--green);color:var(--cream);text-align:center;padding:9px 16px;font-size:10px;letter-spacing:.2em}.header{height:110px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-family:Georgia,serif;font-size:43px;letter-spacing:-3px;line-height:.9;display:inline-flex;flex-direction:column}.brand span{font-family:'DM Sans',sans-serif;font-size:8px;font-weight:600;letter-spacing:.44em;margin-top:10px;text-align:center;padding-left:5px}.header nav{display:flex;gap:32px;font-size:12px}.button{min-height:54px;padding:16px 23px;display:inline-flex;justify-content:center;align-items:center;gap:22px;font-size:12px;font-weight:600;line-height:1.5;border:1px solid transparent;border-radius:4px;transition:transform 160ms var(--ease),background-color 180ms ease;cursor:pointer}.button span{font-size:20px;line-height:1}.button:active,.text-link:active,.package-link:active{transform:scale(.97)}.button.small{min-height:44px;padding:11px 18px;font-size:11px}.outline{border-color:var(--green)}.red{background:var(--red);color:white}.green{background:var(--green);color:white}.cream{background:var(--cream);color:var(--green)}.white-outline{border-color:#a9b8aa;color:var(--cream)}.text-link{font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:15px;padding:10px 0;border-bottom:1px solid currentColor;transition:transform 160ms var(--ease)}.text-link span{font-size:19px}.hero{display:grid;grid-template-columns:1.04fr 1fr;gap:45px;align-items:center;padding-top:32px;padding-bottom:86px}.hero-copy{padding-bottom:4px}.hero .eyebrow{display:flex;align-items:center;gap:10px;color:var(--red)}.spark{font-size:24px;line-height:1}.hero h1 em{color:var(--red)}.intro{font-size:16px;line-height:1.75;max-width:395px;margin-top:26px;margin-bottom:12px}.hero-sub{font-size:12px;color:var(--muted);max-width:390px}.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:26px}.hero-actions .text-link{font-size:12px;border:none;padding:12px 0}.starting{font-size:11px;margin-top:22px;margin-bottom:0}.starting span{display:block;color:var(--muted);font-size:10px;margin-top:1px}.hero-art{position:relative;padding:22px 25px 28px 0;margin-top:20px}.plaid{background-color:#244738;background-image:repeating-linear-gradient(0deg,transparent 0 28px,#a32c32aa 28px 49px,transparent 49px 61px,#faf4e79c 61px 64px,transparent 64px 77px),repeating-linear-gradient(90deg,transparent 0 28px,#a32c3299 28px 49px,transparent 49px 61px,#faf4e79c 61px 64px,transparent 64px 77px)}.backing{position:absolute;inset:0 0 0 25px;transform:rotate(3deg);border-radius:130px 5px 5px 5px}.hero-photo{position:relative;background:#fffaf0;padding:10px 10px 0;border-radius:130px 4px 4px 4px;transform:rotate(-3deg);box-shadow:0 14px 32px #142b2720}.hero-photo img{aspect-ratio:1/1.08;width:100%;height:auto;border-radius:122px 2px 2px 2px;object-position:47% center}.hero-photo figcaption{height:47px;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:15px;font-style:italic}.round-note{position:absolute;right:-25px;top:-14px;width:128px;height:128px;border-radius:50%;background:var(--red);color:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:20px;line-height:1.15;transform:rotate(10deg);border:6px solid var(--cream);outline:1px solid #a9283050}.round-note span{font-family:Arial,sans-serif;font-size:7px;letter-spacing:.18em;margin-top:8px}.photo-corner{position:absolute;font-size:68px;bottom:-23px;left:-24px;color:var(--red)}.ribbon{display:flex;justify-content:center;gap:55px;align-items:center;border-block:1px solid var(--line);padding:19px 24px;font-family:Georgia,serif;font-style:italic;font-size:21px}.ribbon i{font-style:normal;color:var(--red);font-size:20px}.story{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.story-photos{position:relative;height:510px}.story-one{width:72%;height:370px;transform:rotate(-5deg);border:8px solid white;box-shadow:0 5px 15px #183c3010}.story-two{position:absolute;right:0;top:195px;width:55%;height:280px;transform:rotate(7deg);border:8px solid white}.handwritten{position:absolute;bottom:5px;left:18px;font:italic 21px Georgia,serif;color:var(--red);transform:rotate(-5deg)}.story-copy h2{margin-bottom:25px}.story-copy p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:440px}.story-copy strong{color:var(--green);font-weight:500}.story-copy .text-link{margin-top:6px}.experiences{background:var(--paper)}.section-heading{text-align:center;max-width:700px;margin:0 auto 48px}.section-heading h2{margin-bottom:24px}.section-heading>p:last-child{max-width:480px;margin-inline:auto;color:var(--muted);font-size:14px}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.experience{background:var(--cream);border:1px solid #deded0}.experience-image{position:relative;height:350px;overflow:hidden}.experience-image img{width:100%;height:100%;object-position:center 44%}.tag{position:absolute;bottom:20px;left:24px;font-size:9px;letter-spacing:.15em;padding:9px 14px;background:var(--cream);color:var(--green);font-weight:700}.experience-body{padding:38px}.experience-body h3{font-size:38px;margin-bottom:20px}.experience-body>p{font-size:14px;color:var(--muted);max-width:430px}.experience ul{padding:0;list-style:none;font-size:12px;margin:25px 0 30px}.experience li{margin-bottom:9px}.experience li:before{content:'✓';color:var(--red);margin-right:12px}.conditions{display:block;font-size:10px;color:var(--muted);margin-top:10px}.home-quote{position:absolute;inset:20px 58px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:var(--cream);border-radius:110px 110px 0 0;padding:20px}.home-quote>span{font:50px Georgia,serif;color:var(--red);line-height:1;margin-bottom:12px}.home-quote p{font:30px/1.2 'Playfair Display',Georgia,serif;letter-spacing:-1px;margin-bottom:15px}.home-quote small{font-size:8px;letter-spacing:.2em}.offer-line{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-block:1px solid var(--line);margin-bottom:32px;gap:20px}.offer-line p{font-size:18px;margin:0}.offer-line strong{color:var(--red)}.offer-line span{font-size:11px;color:var(--muted)}.package-grid{display:grid;grid-template-columns:repeat(4,1fr)}.package{border:1px solid var(--line);padding:29px 22px 0;display:flex;flex-direction:column;margin-right:-1px}.package-no{font-size:8px;letter-spacing:.12em;line-height:1.5;min-height:26px}.package h3{font-size:32px;margin:12px 0 18px}.package p{font-size:12px;line-height:1.7;min-height:63px;color:var(--muted)}.package ul{list-style:none;padding:0;margin:7px 0 24px;font-size:11px}.package li{padding:9px 0;border-bottom:1px solid var(--line);min-height:39px}.package strong{font-weight:500}.package-link{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:600;border-top:1px solid var(--line);padding:20px 0;margin-top:auto;min-height:56px;transition:transform 160ms var(--ease)}.package-link span{font-size:22px}.featured{background:var(--green);color:var(--cream);border-color:var(--green)}.featured p{color:#e0e3d9}.featured li,.featured .package-link{border-color:#ffffff30}.package-note{font-size:10px;color:var(--muted);margin:20px 0 0}.value-section{background:var(--green);color:var(--cream);padding:70px 0}.value-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.value-inner h2{font-size:46px}.value-copy p{font-size:14px;max-width:440px;color:#dce3da}.value-copy .text-link{font-size:12px}.steps{display:grid;grid-template-columns:.8fr 1.8fr;gap:50px}.steps h2{font-size:44px}.steps ol{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;list-style:none;padding:0;margin:0}.steps li>span{display:block;font-size:12px;color:var(--red);border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:20px}.steps h3{font-size:25px;margin-bottom:15px}.steps li p{font-size:12px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);position:relative;gap:5px;background:var(--cream)}.gallery>img{width:100%;height:410px}.gallery-caption{position:absolute;bottom:26px;left:50%;transform:translateX(-50%) rotate(-2deg);background:var(--cream);padding:21px 35px;font:23px/1.3 Georgia,serif;text-align:center;white-space:nowrap;box-shadow:0 5px 20px #183c3010}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.faq h2{font-size:43px;margin-bottom:24px}.faq>div>p:last-child{font-size:13px;color:var(--muted);max-width:300px}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:13px;font-weight:500;min-height:70px;padding:20px 0}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font:24px Georgia,serif;color:var(--red)}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;color:var(--muted);padding-right:20px;line-height:1.8}.final-cta{background:var(--green);color:var(--cream);position:relative;text-align:center}.final-strip{height:22px}.final-inner{padding-block:70px 80px;position:relative}.final-inner>.eyebrow{font-size:9px;letter-spacing:.16em}.final-cta h2{font-size:clamp(42px,5vw,70px)}.final-cta>div>p:not(.eyebrow){margin-top:25px;font-size:13px;color:#dce3da}.final-actions{display:flex;gap:14px;justify-content:center;margin:30px 0 24px}.final-cta small{font-size:10px;color:#dce3da}.final-spark{position:absolute;right:7%;top:160px;font-size:70px;color:#c4ab7d}.footer{display:flex;align-items:center;gap:45px;justify-content:space-between;padding-block:40px}.footer p{font-size:11px;margin:0}.footer>span{font-size:10px;color:var(--muted)}.mobile-cta{display:none}.skip{position:fixed;top:-100px;left:16px;background:var(--cream);padding:12px;z-index:10}.skip:focus{top:10px}@media(hover:hover) and (pointer:fine){.button:hover{transform:translateY(-2px)}.red:hover{background:#92232a}.green:hover{background:#265440}.header nav a:hover{color:var(--red)}.package-link:hover,.text-link:hover{color:var(--red)}.featured .package-link:hover,.value-copy .text-link:hover{color:#eac9a2}}
@media(min-width:1600px){.hero{padding-top:50px;padding-bottom:110px}.hero-art{max-width:550px}.hero h1{font-size:94px}}
@media(max-width:1100px){.wrap{width:90%}.header nav{gap:18px}.header>.button{font-size:10px;padding:10px}.hero{gap:30px}.hero-art{margin-right:14px}.round-note{width:108px;height:108px;font-size:17px;right:-20px}.hero h1{font-size:65px}.intro{font-size:14px}.story{gap:60px}.story-photos{height:440px}.story-one{height:310px}.story-two{height:230px;top:175px}.handwritten{font-size:18px}.package-grid{grid-template-columns:repeat(2,1fr);gap:16px}.package{padding:27px 25px 0}.package p{min-height:42px}.package ul{font-size:12px}.package-no{min-height:15px}.steps{grid-template-columns:1fr}.steps-intro h2 br{display:none}.gallery>img{height:340px}.faq{gap:45px}.experience-body{padding:30px}.home-quote{inset:20px 30px}}
@media(max-width:760px){html{scroll-padding-top:20px}.wrap{width:88%}.announcement{font-size:8px;letter-spacing:.12em;padding:9px 12px}.header{height:90px}.header nav{display:none}.brand{font-size:37px}.header>.button{font-size:9px;padding:10px 12px;gap:9px}.header>.button span{font-size:17px}.hero{grid-template-columns:1fr;padding-top:18px;padding-bottom:52px;gap:38px}.hero h1{font-size:clamp(55px,12.6vw,83px);line-height:1.05}.hero .eyebrow{margin-bottom:20px}.hero .intro{font-size:15px;max-width:370px}.hero-sub{font-size:12px}.hero-actions{margin-top:25px}.hero-actions .button{font-size:12px}.starting{font-size:12px;margin-top:15px}.hero-art{width:90%;margin:8px auto 0;padding:16px 16px 23px 0}.hero-photo img{aspect-ratio:1/1.04}.hero-photo figcaption{font-size:13px;height:42px}.round-note{right:-28px;width:107px;height:107px;top:-15px}.photo-corner{font-size:56px;left:-20px}.ribbon{gap:16px;flex-wrap:wrap;font-size:14px;padding:16px 12px}.ribbon i{font-size:15px}.ribbon i:last-child{display:none}.section{padding-block:70px}.story{grid-template-columns:1fr;gap:38px}.story-copy{order:-1}.story-copy h2{font-size:43px}.story-copy p:not(.eyebrow){font-size:14px}.story-photos{height:440px;max-width:450px;width:100%;margin-inline:auto}.story-one{width:73%;height:310px}.story-two{width:55%;height:245px;top:160px}.handwritten{bottom:0}.section-heading{text-align:left;margin-bottom:34px}.section-heading h2{font-size:40px}.section-heading>p:last-child{margin-inline:0;font-size:14px}.experience-grid{grid-template-columns:1fr;gap:28px}.experience-image{height:330px}.experience-body{padding:28px}.experience-body h3{font-size:36px}.experience-body .button{width:100%;font-size:11px;gap:15px}.home-quote{inset:20px 40px}.offer-line{display:block;padding-block:18px}.offer-line p{font-size:18px;margin-bottom:5px}.offer-line span{font-size:10px}.package-grid{grid-template-columns:1fr 1fr;gap:12px}.package{padding:20px 15px 0;margin-right:0}.package-no{font-size:7px;letter-spacing:.08em;min-height:26px}.package h3{font-size:27px;margin:9px 0 15px}.package p{font-size:11px;min-height:75px;line-height:1.65}.package ul{font-size:10px;margin-top:0}.package li{min-height:45px;padding:8px 0;line-height:1.5}.package-link{font-size:10px;gap:5px;padding-block:15px}.package-link span{font-size:17px}.package-note{font-size:10px}.value-inner{grid-template-columns:1fr;gap:28px}.value-inner h2{font-size:39px}.value-section{padding-block:55px}.value-copy p{font-size:14px}.steps{gap:30px}.steps h2{font-size:40px}.steps-intro h2 br{display:block}.steps ol{grid-template-columns:1fr;gap:20px}.steps li{display:grid;grid-template-columns:35px 1fr;column-gap:20px}.steps li>span{grid-row:span 2;border:0;margin:0;padding-top:5px}.steps h3{font-size:26px;margin-bottom:8px}.steps li p{font-size:13px}.gallery{gap:4px}.gallery>img{height:230px}.gallery-caption{font-size:16px;bottom:-23px;padding:15px 23px}.faq{grid-template-columns:1fr;gap:20px;padding-top:90px}.faq h2{font-size:40px}.faq>div>p:last-child{max-width:100%}.faq summary{font-size:12px}.final-inner{padding-block:55px 60px}.final-inner>.eyebrow{font-size:8px;max-width:250px;margin-inline:auto}.final-cta h2{font-size:41px}.final-spark{display:none}.final-actions{flex-direction:column;align-items:stretch;gap:12px;max-width:340px;margin-inline:auto}.final-cta>div>p:not(.eyebrow){font-size:13px}.footer{flex-wrap:wrap;gap:22px;padding-block:32px 105px}.footer p{font-size:10px;max-width:140px}.footer>span{width:100%;font-size:9px}.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--cream);border-top:1px solid var(--line);padding:12px 5% calc(12px + env(safe-area-inset-bottom))}.mobile-cta>span{font:italic 14px/1.3 Georgia,serif;max-width:105px}.mobile-cta .button{font-size:10px;gap:15px}a:focus-visible,summary:focus-visible{outline-offset:3px}}
@media(max-width:370px){.hero h1{font-size:53px}.package-grid{grid-template-columns:1fr}.package p{min-height:0}.package-no{min-height:0}.package li{min-height:35px}.package ul{font-size:12px}.package-link{font-size:12px}.home-quote{inset:20px 25px}.ribbon{gap:10px;font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:active,.text-link:active,.package-link:active{transform:none}}
