:root{--paper:#f8f3e8;--ink:#302e27;--green:#334132;--rust:#8b472f;--line:#d4cbbb;--muted:#635e52}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1.125rem;line-height:1.65}h1,h2,h3,h4,.brand,.footer-brand,.statement p{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.15}h1{font-size:clamp(3rem,5.3vw,5.6rem);letter-spacing:-.045em;margin:1.2rem 0 1.5rem}h2{font-size:clamp(2.1rem,3.2vw,3.4rem);letter-spacing:-.03em;margin:.7rem 0 1.3rem}h3{font-size:1.7rem;margin:.5rem 0 1rem}h4{font-size:1.5rem;margin:.6rem 0}p{margin:0 0 1rem}a{color:inherit;text-underline-offset:5px}em{color:var(--rust);font-weight:400}header{max-width:1360px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;font-size:1.55rem;white-space:nowrap}.brand i,.footer-brand i{color:var(--rust)}.brand small{display:block;font: .75rem/1.4 Arial,sans-serif;letter-spacing:.18em;margin-top:9px}.brand-mark{width:48px;height:54px;border:1px solid var(--rust);display:grid;place-items:center;font-size:2.3rem;color:var(--rust)}nav{display:flex;align-items:center;gap:30px}nav>a{font-size:1rem;text-decoration:none}nav>a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:white;min-height:58px;padding:15px 26px;text-decoration:none;border:1px solid var(--green);border-radius:3px;font:600 1.05rem/1.4 Arial,sans-serif;cursor:pointer;text-align:center}.button:hover{background:#253224;color:white}.button.small{min-height:48px;padding:12px 20px}.hero{max-width:1360px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr;gap:7%;padding:66px 5% 72px;align-items:center}.eyebrow{font-size:.85rem;line-height:1.7;letter-spacing:.13em;color:var(--rust);font-weight:700}.intro{font-size:1.22rem;max-width:490px;line-height:1.7;margin-bottom:28px;color:var(--muted)}.hero-note{font-size:.94rem;color:var(--muted);margin-top:21px}.hero-photo{margin:0;padding:13px 13px 0;background:#fffaf1;border:1px solid var(--line);box-shadow:8px 10px 0 #e8dfcd;transform:rotate(2deg)}.hero-photo img{display:block;width:100%;height:495px;object-fit:cover;object-position:50% 62%;filter:sepia(.2)}figcaption{font:italic 1.1rem/1.5 Georgia,serif;text-align:center;padding:16px 0;color:var(--muted)}.statement{background:var(--green);color:var(--paper);padding:35px 6%;display:flex;justify-content:center;gap:10%;align-items:center}.statement span{font-size:.8rem;letter-spacing:.16em;max-width:190px;line-height:1.8}.statement p{font-size:1.7rem;line-height:1.45;margin:0}.section{max-width:1210px;margin:auto;padding:80px 4%}.section-heading{max-width:740px;margin-bottom:35px}.section-heading>p:last-child{color:var(--muted)}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px}.service-grid article{border-top:1px solid var(--line);padding-top:24px}.number{color:var(--rust);font-family:Georgia,serif;font-size:1.25rem}.service-grid p,.delivery p,.premium p,.steps p{color:var(--muted)}.delivery{margin-top:40px;background:#eee6d6;padding:30px}.delivery>h3{margin-bottom:26px}.delivery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.delivery-grid article+article{border-left:1px solid #c6bbab;padding-left:30px}.tag{font-size:.78rem;font-weight:700;letter-spacing:.1em;color:var(--rust)}.delivery p{font-size:1.03rem;margin-bottom:0}.how{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.1fr;gap:7%}.steps{margin:0;padding:0;list-style:none;display:grid;gap:25px}.steps li{display:flex;gap:22px}.steps li>span{flex-shrink:0;display:grid;place-items:center;width:40px;height:40px;border:1px solid #a39782;border-radius:50%;font-family:Georgia,serif;color:var(--rust);margin-top:6px}.steps h3{font-size:1.4rem}.steps p{font-size:1.06rem}.premium{border-top:1px solid var(--line);display:grid;grid-template-columns:1.1fr 1fr;gap:8%}.premium-list article{border-bottom:1px solid var(--line);padding:0 0 12px;margin-bottom:22px}.premium-list h3{font-size:1.5rem}.premium-list p{font-size:1.06rem}form{background:#fffaf1;padding:32px;border:1px solid var(--line)}.project-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-family:Georgia,serif;font-size:1.35rem;margin-bottom:12px}legend span{font-family:Arial,sans-serif;font-size:1rem;color:var(--muted)}label{display:flex;align-items:center;gap:12px;min-height:48px;cursor:pointer}input{width:22px;height:22px;accent-color:var(--green);flex-shrink:0}.form-note{font-size:.95rem;color:var(--muted);margin:16px 0 0}.faq{border-top:1px solid var(--line);padding-top:55px}.faq h2{font-size:2.2rem}details{border-bottom:1px solid var(--line);padding:20px 0}summary{font-size:1.15rem;cursor:pointer;font-weight:600;padding:5px 0}details p{padding:16px 0 0;max-width:800px;color:var(--muted)}footer{border-top:1px solid var(--line);max-width:1360px;margin:auto;padding:40px 5%;display:flex;flex-wrap:wrap;align-items:center;gap:16px 30px;font-size:.95rem;color:var(--muted)}.footer-brand{font-size:1.5rem;text-decoration:none;color:var(--ink)}footer p{margin:0;flex:1}footer a:last-child{margin-left:auto}:focus-visible{outline:3px solid var(--rust);outline-offset:5px}.skip{position:absolute;top:-100px;left:15px;padding:10px;background:white;z-index:20}.skip:focus{top:10px}[hidden]{display:none!important}@media(max-width:900px){header{align-items:flex-start}nav{gap:16px;flex-wrap:wrap;justify-content:flex-end}.brand{font-size:1.3rem}.hero{gap:5%;padding-top:45px}.hero-photo img{height:420px}.delivery-grid{gap:20px}.delivery-grid article+article{padding-left:18px}.how,.premium{gap:5%}.section{padding-top:60px;padding-bottom:60px}}@media(max-width:650px){header{padding:22px 6%;display:block}.brand{font-size:1.55rem}nav{justify-content:flex-start;margin-top:22px;gap:18px}nav>a{font-size:1rem}nav .small{padding:10px 12px}.hero{display:flex;flex-direction:column;padding:38px 6% 50px;gap:30px}.hero-copy{width:100%}h1{font-size:3.3rem}.hero-photo{width:92%;transform:rotate(1deg)}.hero-photo img{height:370px}.statement{display:block;padding:28px 7%}.statement span{display:block;max-width:none;margin-bottom:12px}.statement p{font-size:1.45rem}.section{padding:50px 6%}.service-grid,.delivery-grid,.how,.premium,.project-options-grid{grid-template-columns:1fr;gap:24px}.delivery{padding:25px}.delivery-grid article+article{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.service-grid article{padding-top:18px}.premium-list{margin-top:10px}form{padding:24px 18px}.button{width:100%}nav .button{width:auto}footer{padding:30px 6%;display:block}footer p,footer span{display:block;margin:14px 0}footer a:last-child{display:inline-block;margin-top:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.contact{border-top:1px solid var(--line);display:grid;grid-template-columns:.85fr 1.25fr;gap:7%;align-items:start}.contact-copy>p:not(.eyebrow){color:var(--muted)}.contact-phone{display:inline-block;font:1.8rem/1.4 Georgia,serif;color:var(--green);margin:10px 0 20px;white-space:nowrap}.contact-location{font-size:1rem}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:end}.contact-field label{display:block;min-height:0;margin-bottom:8px;font-size:1rem;font-weight:600;line-height:1.5}.contact-field label span{display:block;font-weight:400;font-size:.9rem;color:var(--muted)}.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;height:auto;min-height:48px;border:1px solid #a39782;border-radius:3px;padding:12px;background:#fffdf8;color:var(--ink);font:1rem/1.5 Arial,Helvetica,sans-serif}.contact-field textarea{resize:vertical;min-height:140px}.contact-field select{min-height:50px}.contact-message{grid-column:1/-1}.contact-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#contact-form{min-width:0}.contact-turnstile{overflow-x:auto}#contact-form>.button{margin-top:24px}#contact-form button:disabled{opacity:.65;cursor:wait}@media(max-width:900px){.contact{grid-template-columns:1fr;gap:28px}}@media(max-width:650px){.contact-fields{grid-template-columns:1fr}.contact-message{grid-column:auto}}@media print{.contact{display:none!important}}

.project-options{margin-top:28px}.project-options summary{font-weight:600}.project-options summary span{font-weight:400;font-size:.95rem}.project-options-grid{margin-top:24px}.project-options legend{font-size:1.2rem}.project-options label{font-size:1rem;line-height:1.4}.project-options input{width:22px;height:22px}#contact-status{font-size:1rem;margin-top:20px;color:var(--rust)}#contact-status:empty{display:none}#contact-form button:disabled{cursor:not-allowed}

/* Frame the logo with the wordmark inside the photo border. */
header{padding-top:18px;padding-bottom:18px}.brand{flex-shrink:0}.logo-window{position:relative;display:block;width:90px;aspect-ratio:700/930;overflow:hidden}.logo-window img{position:absolute;display:block;width:146.28571%;max-width:none;height:auto;left:-25.71429%;top:-30.10753%}.footer-brand .logo-window{width:80px}@media(max-width:900px){header{align-items:center}}@media(max-width:650px){header{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:16px;padding-top:16px;padding-bottom:16px}.brand .logo-window{width:82px}nav{width:100%;margin-top:0}.footer-brand{display:inline-block}}

/* Clear tap targets and a compact two-row mobile header. */
header nav{margin-left:auto}.header-cta{flex-shrink:0}
@media(max-width:650px){
 header{display:grid;grid-template-columns:82px minmax(0,1fr);gap:18px 20px}
 header .brand{grid-column:1;grid-row:1}
 .header-cta{grid-column:2;grid-row:1;justify-self:end;width:auto;max-width:100%;padding:12px 16px;font-size:.95rem}
 header nav{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px;width:100%;margin:0}
 header nav>a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 6px;border:1px solid #a39782;border-radius:3px;background:#fffaf1;text-align:center;font-size:.9rem;line-height:1.3;text-decoration:underline;text-underline-offset:3px}
 header nav>a:hover,header nav>a:active{background:#eee6d6;border-color:var(--green)}
}

/* Keep the mobile footer compact while separating its links. */
.footer-links{display:contents}
@media(max-width:650px){
 footer{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;padding:20px 6%;gap:4px 16px}
 footer .footer-brand{grid-column:1;grid-row:1/3}
 footer .footer-brand .logo-window{width:56px;margin:0}
 footer p,footer>span{grid-column:2;margin:0;line-height:1.45}
 footer p{grid-row:1;align-self:end}
 footer>span{grid-row:2;align-self:start}
 .footer-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:0 18px;margin-top:6px}
 .footer-links a,.footer-links a:last-child{display:inline-flex;align-items:center;min-height:44px;margin:0}
}

@media(max-width:650px){footer .footer-sharing{display:block;margin:0}}

/* Public service pricing. */
.pricing{border-top:1px solid var(--line)}.pricing-main{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.price-panel{padding:28px;background:#fffaf1;border:1px solid var(--line)}.price-panel>p{color:var(--muted);font-size:1.03rem}.price-panel h3,.price-panel h4{margin-top:0}.photo-rates{width:100%;border-collapse:collapse;margin:20px 0}.photo-rates caption{text-align:left;font-size:.88rem;color:var(--muted);margin-bottom:8px}.photo-rates th,.photo-rates td{padding:12px 0;border-bottom:1px solid var(--line);text-align:left;font-size:1rem}.photo-rates thead th{color:var(--muted);font-size:.88rem}.photo-rates tbody th{font-weight:400}.photo-rates td{font-weight:700;color:var(--green)}.price-note,.price-panel>.price-note{font-size:.94rem;line-height:1.6;color:var(--muted);margin-bottom:0}.price-panel>.price-amount{font:2.4rem/1.2 Georgia,serif;color:var(--green);margin:16px 0}.price-amount span{font:1rem/1.4 Arial,sans-serif;color:var(--muted)}.price-minimum{margin-top:30px;padding-top:20px;border-top:1px solid var(--line)}.price-minimum>strong{color:var(--green)}.price-minimum p{font-size:1rem;color:var(--muted);margin:8px 0 0}.pricing-subheading{margin:36px 0 18px}.price-delivery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.price-delivery .price-panel{padding:24px}.price-delivery .price-panel>p:last-child{margin-bottom:0}.price-pickup{margin-top:28px;padding:28px;background:#eee6d6}.price-pickup h3{margin-top:0}.price-pickup p{font-size:1.03rem;color:var(--muted)}.price-pickup .price-note{font-size:.94rem}.pricing-extras{margin-top:16px}.pricing-extras dl{margin:20px 0}.pricing-extras dl>div{display:grid;grid-template-columns:1fr 1.6fr;gap:24px;padding:14px 0;border-top:1px solid var(--line)}.pricing-extras dt{font-weight:600}.pricing-extras dd{margin:0;color:var(--muted);font-size:1rem}.pricing-bottom{display:flex;align-items:center;gap:28px;margin-top:28px}.pricing-bottom .price-note{flex:1}.pricing-bottom .button{flex-shrink:0}
@media(max-width:900px){.price-delivery{grid-template-columns:1fr}.price-delivery .price-panel{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.price-delivery .price-panel>p:last-child{grid-column:1/-1}.price-delivery .price-amount{margin:0 0 14px;text-align:right}.pricing-main{grid-template-columns:1fr}}
@media(max-width:650px){header nav{grid-template-columns:repeat(2,minmax(0,1fr))}.price-panel,.price-pickup{padding:22px}.price-delivery .price-panel{display:block}.price-delivery .price-amount{text-align:left;margin:16px 0}.pricing-extras dl>div{grid-template-columns:1fr;gap:6px}.pricing-bottom{display:block}.pricing-bottom .button{margin-top:20px}}

.payment-page{max-width:900px}.payment-page h1{font-size:clamp(2.8rem,5vw,4.5rem)}.payment-page form{max-width:700px}.payment-page form>.button{margin-top:22px}.payment-help{margin-top:48px}.payment-help h2{font-size:2rem}.payment-home{font-size:1rem}#invoice-status:empty{display:none}#invoice-status{color:var(--rust)}@media(max-width:650px){.payment-home{grid-column:2;justify-self:end;text-align:right}}

.payment-entry{margin-top:24px;font-size:1rem;color:var(--muted)}

.shop-page{max-width:1210px}.shop-page form{max-width:none;padding:0;border:0;background:none}.shop-notice{padding:18px 22px;border:1px solid var(--line);background:#eee6d6;margin-bottom:26px}.shop-notice p:last-child{margin-bottom:0}.product-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.product-card{padding:24px;border:1px solid var(--line);background:#fffaf1}.product-card.selected{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.product-choice{font:1.35rem/1.3 Georgia,serif;margin-bottom:12px}.product-choice input{width:22px;height:22px}.product-price{font-weight:700;color:var(--green);margin-bottom:10px}.product-description{font-size:1rem;color:var(--muted)}.product-quantity{max-width:240px;margin-top:14px}.product-quantity input:disabled{opacity:.5}.product-quantity label{font-size:.9rem}.order-summary{margin-top:28px;padding:26px;background:#eee6d6}.order-summary h2{font-size:1.8rem}.order-line{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:1rem}.order-line strong{white-space:nowrap}.order-total{display:flex;justify-content:space-between;gap:20px;font-size:1.3rem;margin:20px 0 0}.shop-page #checkout-button{margin-top:24px}.shop-page #checkout-button:disabled{opacity:.6;cursor:not-allowed}#order-error{color:var(--rust)}#order-error:empty{display:none}.payment-area{margin-top:48px}.payment-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:22px}.button.secondary{background:transparent;color:var(--green)}.button.secondary:hover{background:#eee6d6}.shop-page .payment-help{border-top:1px solid var(--line);padding-top:28px}.shop-page .payment-help>p{color:var(--muted)}@media(max-width:650px){.product-list{grid-template-columns:1fr}.product-card{padding:20px}.order-summary{padding:20px}.order-line{gap:12px}.product-quantity{max-width:none}}
