@charset "UTF-8";
:root{--wine:#582734;--wine-dark:#431d28;--pink:#f1d3dc;--pink-light:#f9e9ee;--cream:#fffbf6;--ink:#46212c;--line:#b88c99;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:5px}button,input,textarea{font:inherit}button,a,input,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2,h3,em{font-family:var(--serif)}em{font-weight:400}h1{font-size:clamp(3.5rem,6.5vw,7rem);line-height:.95;letter-spacing:-.045em}h2{font-size:clamp(3rem,5vw,5.7rem);line-height:1.02;letter-spacing:-.04em}h3{font-size:2.9rem;line-height:1.1;letter-spacing:-.02em}p+p{margin-top:18px}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #a34970;outline-offset:5px}::selection{background:var(--wine);color:var(--pink)}[hidden]{display:none!important}.skip-link{position:absolute;top:-100px;left:16px;padding:12px;background:white;z-index:50}.skip-link:focus{top:16px}.eyebrow{font-family:var(--sans);text-transform:uppercase;font-weight:500;letter-spacing:.12em;font-size:.78rem;line-height:1.6}.announcement{background:var(--wine);color:var(--pink-light);text-align:center;padding:9px 20px;font-size:.8rem;letter-spacing:.02em}.announcement a{text-decoration:none}.header{padding:25px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:25px}.wordmark{font-family:var(--serif);font-weight:500;letter-spacing:.13em;font-size:2rem;text-decoration:none;line-height:1}.header nav{display:flex;gap:30px;align-items:center}.header nav>a:not(.button){font-size:.88rem;text-decoration:none}.header nav>a:hover{text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--wine);border-radius:100px;background:var(--wine);color:var(--cream);padding:13px 28px;font-size:.88rem;font-weight:500;text-decoration:none;line-height:1.4;transition:background .2s,color .2s,transform .2s}.button:hover{background:var(--wine-dark);transform:translateY(-2px)}.button-small{padding:10px 23px}.button-outline{background:transparent;color:var(--wine)}.button-outline:hover{color:var(--cream)}.button-pink{background:var(--pink);color:var(--wine);border-color:var(--pink)}.button-pink:hover{background:var(--cream);color:var(--wine);border-color:var(--cream)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.hero-photo{position:relative;overflow:hidden;background:#cab9b0;max-height:780px}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 43%}.photo-caption{position:absolute;bottom:22px;left:26px;color:var(--wine);background:var(--cream);padding:8px 18px;font-size:.75rem;border-radius:2px}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:65px 10%;background:var(--cream)}.hero-copy .eyebrow{margin-bottom:30px}.hero-copy h1 em{position:relative}.hero-intro{max-width:385px;line-height:1.65;margin:32px 0 26px}.hero-note{font-size:.75rem;max-width:300px;margin-top:24px;color:#74535e}.ribbon{border-block:1px solid var(--wine);background:var(--pink);display:flex;justify-content:center;gap:55px;align-items:center;padding:15px 20px;text-transform:uppercase;font-size:.8rem;letter-spacing:.1em}.ribbon i{font-style:normal;font-size:1.25rem}.section-pad{padding:100px max(6%,calc((100vw - 1240px)/2))}.intro{text-align:center;max-width:900px;margin:auto;padding:100px 35px}.intro .eyebrow{margin-bottom:24px}.intro>p:not(.eyebrow){max-width:590px;margin:28px auto}.text-link{font-size:.88rem}.services{background:var(--pink-light);border-block:1px solid var(--line)}.services-heading{display:flex;justify-content:space-between;gap:30px;padding:32px 6%;align-items:center}.services-heading>p:last-child{font-size:.9rem;max-width:420px}.services details{border-top:1px solid var(--line)}.services summary{display:flex;justify-content:space-between;align-items:center;padding:26px 6%;cursor:pointer;list-style:none;font-family:var(--serif);font-size:clamp(2.3rem,4.5vw,4.7rem);line-height:1.12;letter-spacing:-.035em}.services summary::-webkit-details-marker{display:none}.detail-icon{flex-shrink:0;position:relative;width:24px;height:24px;margin-left:20px}.detail-icon:before,.detail-icon:after{content:'';position:absolute;top:11px;left:0;width:24px;height:1px;background:var(--wine)}.detail-icon:after{transform:rotate(90deg)}details[open] .detail-icon:after{display:none}.service-content{padding:0 6% 40px;display:grid;grid-template-columns:1fr 1fr;gap:60px}.service-content h3{font-size:2.05rem;max-width:430px}.service-content p{max-width:520px;font-size:.95rem}.section-heading{text-align:center;max-width:700px;margin:0 auto 48px}.section-heading .eyebrow{margin-bottom:16px}.section-heading>p:last-child{margin-top:22px}.package-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.package-card{background:var(--pink-light);padding:40px;position:relative;border:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.package-card .eyebrow{margin-bottom:15px}.package-card h3{font-size:4rem;margin-bottom:16px}.package-lead{max-width:360px;min-height:80px}.signature{background:var(--wine);color:var(--cream);border-color:var(--wine)}.offer-label{position:absolute;right:28px;top:0;transform:translateY(-50%) rotate(5deg);background:var(--pink);color:var(--wine);border:1px solid var(--wine);padding:13px 18px;border-radius:50%;font-size:.9rem;font-weight:600}.price-block{display:flex;flex-wrap:wrap;align-items:baseline;gap:14px;margin:23px 0}.price{font-family:var(--serif);font-size:3.1rem;line-height:1.1}.old-price{text-decoration:line-through;font-size:1.15rem;color:var(--pink)}.price-note{flex-basis:100%;font-size:.8rem}.package-card ul{list-style:none;padding:0;margin:0 0 25px;width:100%;font-size:.92rem}.package-card li{padding:14px 0;border-top:1px solid var(--line)}.signature li{border-color:#986f7b}.package-meta{font-size:.79rem;line-height:1.7;margin-bottom:24px;max-width:370px}.package-card .button{margin-top:auto}.offer-terms{font-size:.75rem;line-height:1.6;margin-top:22px;max-width:370px}.scope-note{font-size:.8rem;max-width:800px;text-align:center;margin:32px auto 0;color:#70545f}.builder-section{background:repeating-linear-gradient(90deg,#efcdd7 0,#efcdd7 35px,#f6dde4 35px,#f6dde4 70px);padding:70px 6%;border-block:1px solid var(--line)}.builder-panel{background:var(--cream);max-width:1240px;margin:auto;padding:60px 6%;border:1px solid var(--line)}.builder-panel .section-heading{max-width:570px}.builder-panel h2{font-size:clamp(3rem,5vw,5rem)}fieldset{border:0;padding:0;margin:0 0 30px;min-width:0}legend,.goal-label{font-size:.98rem;font-weight:500;margin-bottom:15px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.choice{display:flex;align-items:flex-start;gap:12px;padding:20px 16px;border:1px solid var(--line);background:var(--cream);cursor:pointer}.choice:has(input:checked){background:var(--pink-light);border-color:var(--wine)}input[type=checkbox]{accent-color:var(--wine);width:18px;height:18px;flex-shrink:0;margin:4px 0 0}.choice strong{display:block;font-size:.9rem;font-weight:500}.choice small{display:block;font-size:.78rem;line-height:1.5;margin-top:8px;color:#74535e}.channel-choices{display:flex;flex-wrap:wrap;gap:12px}.channel-choices label{display:flex;align-items:center;gap:10px;padding:9px 18px;border:1px solid var(--line);border-radius:100px;cursor:pointer;font-size:.86rem}.channel-choices label:has(input:checked){background:var(--pink-light);border-color:var(--wine)}.channel-choices input{margin:0}.field-note{font-size:.78rem;color:#735460;margin:0 0 14px;line-height:1.65}.goal-label{display:block}textarea{resize:vertical;display:block;width:100%;padding:15px;border:1px solid var(--line);background:var(--cream);color:var(--ink);font-size:.92rem;line-height:1.6;border-radius:0}textarea::placeholder{color:#7e6871;opacity:1}.builder-result{display:flex;justify-content:space-between;gap:35px;margin:28px 0 18px;padding:27px;background:var(--pink-light);border:1px solid var(--line);align-items:center}.builder-result h3{font-size:2rem;margin:10px 0;max-width:620px}.builder-result p:not(.eyebrow){font-size:.85rem}.quote-note{font-size:.78rem!important;margin-top:12px!important}.builder-actions{display:flex;flex-direction:column;align-items:center;gap:12px;flex-shrink:0}.copy-button{border:0;background:none;padding:8px;font-size:.8rem;color:var(--ink);text-decoration:underline;text-underline-offset:4px}.status{min-height:1.5em;font-size:.82rem}.copy-fallback{margin-top:12px}.copy-fallback summary{cursor:pointer;padding:10px 0}.founder-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:25px}.founder-grid p{max-width:520px}.closing{background:var(--wine);color:var(--cream);text-align:center}.closing .eyebrow{color:var(--pink);margin-bottom:24px}.closing .button{margin-top:35px}.closing>p:last-child{font-size:.8rem;margin-top:22px;color:var(--pink)}footer{display:grid;grid-template-columns:1fr 1.3fr;gap:24px 35px;padding:45px 6%;align-items:center}footer>p{font-size:.85rem;justify-self:end}footer>div{display:flex;gap:24px;flex-wrap:wrap;font-size:.8rem}.copyright{font-size:.75rem;justify-self:end}.legal{max-width:850px;margin:auto;padding:70px 30px 100px}.legal h1{font-size:4rem;margin-bottom:35px}.legal h2{font-family:var(--sans);font-size:1.1rem;font-weight:600;letter-spacing:0;margin:30px 0 10px}.legal p{margin:12px 0}.legal .eyebrow{margin-bottom:20px}
@media(min-width:1500px){.hero{max-height:850px}.hero-copy{padding-right:15%}}
@media(max-width:1000px){.header nav{gap:20px}.hero{min-height:570px}.hero-copy{padding:55px 8%}h1{font-size:4.9rem}.ribbon{gap:25px}.section-pad{padding:75px 5%}.package-card{padding:30px}.choice-grid{grid-template-columns:1fr}.choice{padding:18px}.choice small{margin-top:3px}.builder-result{flex-direction:column;align-items:flex-start}.builder-actions{align-items:flex-start}.builder-panel{padding:50px 5%}}
@media(max-width:700px){.header{position:relative;padding:20px 6%;gap:15px}.wordmark{font-size:1.7rem}.menu-toggle{display:block;border:1px solid var(--line);border-radius:100px;background:transparent;padding:7px 15px;font-size:.85rem;color:var(--ink)}.header nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:10;background:var(--cream);border-bottom:1px solid var(--line);padding:25px 6%;align-items:flex-start;flex-direction:column;gap:20px}.header nav.is-open{display:flex}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{grid-row:1;padding:50px 7% 42px}.hero-copy .eyebrow{margin-bottom:23px}h1{font-size:clamp(3.6rem,13.8vw,5.7rem);line-height:.99}.hero-intro{max-width:430px;margin-top:27px}.hero-note{max-width:none;font-size:.75rem;margin-top:20px}.hero-photo{height:430px;max-height:none}.hero-photo img{object-position:50% 39%}.photo-caption{left:20px;bottom:20px}.ribbon{gap:12px;padding:13px 12px;flex-wrap:wrap;font-size:.67rem;letter-spacing:.05em}.ribbon i{font-size:.85rem}.section-pad{padding:65px 7%}.intro{padding:65px 7%}.intro h2{font-size:3.5rem}.services-heading{padding:27px 7%;display:block}.services-heading>p:last-child{margin-top:12px}.services summary{padding:24px 7%;font-size:2.5rem}.service-content{grid-template-columns:1fr;gap:16px;padding:0 7% 30px}.service-content h3{font-size:1.8rem}.package-grid{grid-template-columns:1fr;gap:38px}.package-card{padding:32px 26px}.package-lead{min-height:0}.section-heading{margin-bottom:40px}.package-card h3{font-size:3.7rem}.builder-section{padding:35px 5%;background-size:auto}.builder-panel{padding:40px 6%}.builder-panel h2{font-size:3.2rem}.channel-choices{gap:8px}.channel-choices label{padding:9px 13px}.builder-result{padding:20px;gap:24px}.builder-actions,.builder-actions .button{width:100%}.builder-actions{align-items:center}.founder-grid{grid-template-columns:1fr;gap:24px}.founder h2{font-size:3.6rem}.closing h2{font-size:3.1rem}footer{grid-template-columns:1fr;gap:18px;padding:35px 7%}footer>p,.copyright{justify-self:start}footer>div{gap:16px}.legal{padding:50px 7%}.legal h1{font-size:3.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Clear service heading and portrait framing */
.services-heading{display:block;padding:55px 6% 45px}.services-heading h2{font-size:clamp(3.2rem,5.5vw,6rem);line-height:1.02}.hero-photo img{object-position:50% 48%}
@media(max-width:700px){.services-heading{padding:42px 7% 35px}.services-heading h2{font-size:clamp(3rem,12vw,4rem)}.hero-photo img{object-position:50% 35%}}

/* Real client work */
.client-work{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);background:var(--cream)}
.client-work-photo{position:relative;min-height:640px;max-height:740px;overflow:hidden}.client-work-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 57%}
.client-work-copy{padding:75px 10%;align-self:center}.client-work-copy .eyebrow{margin-bottom:25px}.client-work-copy h2{margin-bottom:30px}.client-work-copy>p:not(.eyebrow){max-width:470px}.project-status{display:block;margin-top:28px;font-size:.78rem;color:#74535e}
@media(max-width:700px){.client-work{grid-template-columns:1fr}.client-work-photo{min-height:0;height:520px;max-height:none}.client-work-photo img{object-position:50% 64%}.client-work-copy{padding:50px 7%}.client-work-copy h2{font-size:3.6rem}}

/* Supplied package backgrounds and optional project feature */
.package-card{background-color:var(--pink);background-image:url('assets/direction-stripes.jpeg');background-size:cover;background-position:center}
.package-card.signature{background-color:var(--wine);background-image:url('assets/signature-stripes.jpeg')}
.builder-section{background:var(--pink)}
.portfolio-offer{margin-top:25px;padding-top:22px;border-top:1px solid #b98c99;width:100%}
.portfolio-offer h4{font-family:var(--serif);font-size:1.6rem;font-weight:500;line-height:1.2;margin:0 0 12px}
.portfolio-offer p{font-size:.8rem;line-height:1.65}.portfolio-offer p+p{margin-top:12px}

.email-fallback{display:none;font-size:.8rem;text-underline-offset:4px}
@media(max-width:700px){.builder-result{width:100%;overflow-wrap:anywhere}.builder-actions .button{min-height:48px;padding-inline:20px}.email-fallback{display:inline-flex;min-height:44px;align-items:center;justify-content:center}}
.offer-label{font-size:.78rem;transform:translateY(-50%) rotate(4deg)}
