@charset "UTF-8";
:root{--paper:#f6f2e9;--ink:#3d2e29;--muted:#71665c;--line:#d8cfc1;--blue:#333d62;--gold:#aa672e;--sand:#e9e0d1;--white:#fffdf8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:Georgia,"Times New Roman",serif;line-height:1.06;letter-spacing:-.045em}h1{font-size:clamp(52px,5.5vw,84px)}h2{font-size:clamp(38px,4vw,60px)}h3{line-height:1.3}em{color:var(--blue);font-weight:400}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:10px;font-weight:650;line-height:1.6}.site-header{max-width:1520px;margin:auto;min-height:128px;padding:22px 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:13px;flex-shrink:0}.brand img{width:70px;height:70px}.brand>span{font-size:14px;letter-spacing:.13em;font-weight:650;line-height:1.5}.brand small{display:block;font-size:10px;letter-spacing:.3em;font-weight:500}nav{display:flex;align-items:center;gap:30px;font-size:13px}nav>a{padding:9px 0;border-bottom:1px solid transparent}nav>a:hover,nav>a[aria-current]{border-color:var(--ink)}nav>.nav-contact{border:1px solid var(--ink);padding:11px 18px;margin-left:12px}.nav-contact span{margin-left:14px}.menu-toggle{display:none}.hero{max-width:1520px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;padding:62px 5% 70px;gap:5%;align-items:center}.hero-copy .eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:27px}.little-line{height:1px;width:24px;background:var(--gold);flex-shrink:0}.hero h1{margin-bottom:28px}.intro{font-size:17px;line-height:1.8;max-width:440px;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:30px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;background:var(--blue);color:var(--white);padding:15px 23px;font-size:13px;border:1px solid var(--blue);transition:background .2s}.button:hover{background:#202945}.text-link{font-size:13px;padding:8px 0;border-bottom:1px solid var(--ink);display:inline-block}.text-link span{margin-left:15px}.hero-note{font-size:11px;color:var(--muted);margin-top:44px}.hero-image{align-self:stretch;display:flex;flex-direction:column;justify-content:center}.hero-image img{width:100%;aspect-ratio:1.35;object-fit:cover;border-radius:47% 47% 2px 2px;object-position:47% center}.hero-image figcaption{display:flex;justify-content:space-between;gap:15px;margin-top:17px;font-size:10px;color:var(--muted)}.hero-image figcaption span:first-child{letter-spacing:.15em;font-weight:600}.values-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:center;align-items:center;gap:65px;padding:22px;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.values-strip i{font-size:15px;font-style:normal;color:var(--gold)}.section{max-width:1400px;padding:90px 5%;margin:auto}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:17px}.section-heading>p{max-width:330px;color:var(--muted);font-size:15px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.feature>img{aspect-ratio:1.3;object-fit:cover;transition:filter .2s}.feature:nth-child(2)>img{object-position:center 62%}.feature:hover>img{filter:brightness(.94)}.feature>div{padding-top:23px}.feature .eyebrow{font-size:9px;color:var(--muted)}.feature h3{font-family:Georgia,serif;font-size:27px;margin-top:10px;display:flex;justify-content:space-between;gap:20px}.feature h3 span{font-family:Arial,sans-serif;font-size:22px}.story-preview{display:grid;grid-template-columns:1fr 1fr;max-width:1400px;margin:0 auto 90px;padding:0 5%}.story-photo img{height:100%;object-fit:cover;min-height:500px}.story-copy{background:var(--sand);padding:65px 12%;display:flex;flex-direction:column;align-items:start;justify-content:center}.story-copy .eyebrow{margin-bottom:20px}.story-copy h2{font-size:48px;margin-bottom:22px}.story-copy>p:not(.eyebrow){color:#62554c;font-size:14px;margin-bottom:16px}.contact-band{background:var(--blue);color:var(--paper);padding:70px max(7%,calc((100vw - 1260px)/2));display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.contact-band .eyebrow{color:#ddd1bf;font-size:9px;margin-bottom:20px}.contact-band h2{font-size:62px}.contact-band em{color:#e4bf87}.contact-band p:not(.eyebrow){font-size:14px;line-height:1.9;color:#ece7dd;max-width:440px}.contact-band .button{background:var(--paper);color:var(--blue);margin-top:24px}.contact-band .button:hover{background:#e4d8c4}.plain-email{display:block;font-size:12px;margin-top:20px;text-decoration:underline;text-underline-offset:4px}footer{max-width:1520px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:40px 5%;font-size:11px;color:var(--muted)}.footer-brand{display:flex;align-items:center;gap:14px;color:var(--ink);font-size:12px}.footer-brand img{width:55px;height:55px}.footer-brand small{display:block;font-size:10px;color:var(--muted)}footer>a{text-decoration:underline;text-underline-offset:4px}.page-intro{max-width:1400px;margin:auto;padding:70px 5% 55px}.page-intro .eyebrow{margin-bottom:25px}.page-intro h1{font-size:clamp(52px,5.4vw,78px)}.page-intro>p:last-child{max-width:610px;color:var(--muted);margin-top:25px;font-size:16px}.gallery-section{padding-top:20px}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:20px 0 25px;border-top:1px solid var(--line);margin-bottom:25px;flex-wrap:wrap}.gallery-toolbar>p{font-size:11px;color:var(--muted)}.gallery-toolbar a{text-decoration:underline;text-underline-offset:3px}.filters{display:flex;gap:10px;flex-wrap:wrap}.filters[hidden]{display:none}.filters button{padding:9px 16px;background:transparent;border:1px solid var(--line);font-size:12px;border-radius:2px;color:var(--ink)}.filters button.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 25px}.work-card[hidden]{display:none}.photo-link{display:block;position:relative;overflow:hidden;background:var(--sand)}.photo-link img{aspect-ratio:1.12;object-fit:cover;transition:transform .3s}.photo-link:hover img{transform:scale(1.025)}.enlarge{position:absolute;right:12px;bottom:12px;background:var(--paper);border-radius:50%;width:31px;height:31px;display:grid;place-items:center;font-size:16px}.card-caption{padding-top:17px}.card-caption h3{font-family:Georgia,serif;font-size:24px;letter-spacing:-.02em}.card-caption p{font-size:12px;color:var(--muted);margin-top:6px}.gallery-note{font-size:12px;color:var(--muted);padding-top:40px;max-width:660px}.custom-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:end;padding-bottom:65px}.custom-intro>div>p:not(.eyebrow){font-size:16px;max-width:420px;color:var(--muted)}.custom-intro .button{margin-top:25px}.custom-intro>div>.small-note{font-size:11px;margin-top:18px}.compact{border-top:1px solid var(--line);padding-top:30px}.compact h2{font-size:36px}.compact>p{font-size:12px}.custom-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.custom-gallery .photo-link img{aspect-ratio:1.35}.process{background:var(--sand);padding:60px max(7%,calc((100vw - 1260px)/2)) 70px}.process .eyebrow{margin-bottom:16px}.process h2{font-size:44px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.process-grid span{color:var(--gold);font-family:Georgia,serif;font-size:23px}.process-grid h3{font-family:Georgia,serif;font-size:25px;margin:15px 0}.process-grid p{font-size:13px;color:var(--muted)}.about-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px;max-width:1400px;padding:70px 5%;margin:auto}.about-hero .eyebrow{margin-bottom:25px}.about-hero .intro{margin-top:25px}.about-hero>img{aspect-ratio:1.1;object-fit:cover;border-radius:45% 45% 0 0}.about-story{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:50px;max-width:1140px;padding:65px 5%;margin:auto}.about-story .eyebrow{padding-top:12px}.about-story h2{font-size:44px;margin-bottom:30px}.about-story p:not(.eyebrow){font-size:16px;margin-bottom:20px;color:var(--muted)}.about-story .signature{font-family:Georgia,serif;font-style:italic;color:var(--ink);font-size:25px!important}.about-images{max-width:1400px;padding:10px 5% 90px;display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:auto}.about-images img{aspect-ratio:1.35;object-fit:cover}.about-images figcaption{font-size:11px;color:var(--muted);margin-top:12px}dialog{padding:45px 20px 20px;background:var(--paper);color:var(--ink);border:0;max-width:min(1100px,94vw);max-height:94vh;box-shadow:0 20px 70px #0005}dialog::backdrop{background:#171412d9}dialog figure img{max-height:75vh;width:auto;max-width:100%;object-fit:contain;margin:auto}dialog figcaption{font-family:Georgia,serif;font-size:22px;text-align:center;padding:14px 0 0}.close-lightbox{position:absolute;top:7px;right:10px;border:0;background:transparent;width:38px;height:32px;color:var(--ink);font-size:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:absolute;left:20px;top:-100px;background:var(--blue);color:white;padding:10px;z-index:100}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
@media(min-width:1600px){.hero{padding-top:80px;padding-bottom:85px}.hero-image img{aspect-ratio:1.35}}@media(max-width:1000px){.site-header{padding:18px 4%;min-height:108px}.brand img{width:58px;height:58px}.brand>span{font-size:12px}nav{gap:20px;font-size:12px}nav>.nav-contact{margin-left:0;padding:9px}.hero{padding:45px 5%;gap:4%;grid-template-columns:1fr 1fr}.hero h1{font-size:58px}.hero .eyebrow{font-size:8px;letter-spacing:.12em}.hero .intro{font-size:15px}.hero-note{font-size:10px;margin-top:25px}.hero-image img{aspect-ratio:1.35}.hero-image figcaption{font-size:8px}.hero-actions{gap:18px}.story-copy{padding:40px 9%}.story-copy h2{font-size:40px}.story-photo img{min-height:470px}.values-strip{gap:35px}.section{padding-top:65px;padding-bottom:65px}.custom-intro{gap:40px}.contact-band{gap:35px}.contact-band h2{font-size:52px}footer{flex-wrap:wrap}.about-hero{gap:35px}.about-hero h1{font-size:57px}.about-story{grid-template-columns:1fr 2.5fr}}
@media(max-width:740px){.site-header{position:relative;min-height:95px;padding:14px 6%;flex-wrap:wrap;gap:0}.brand img{width:59px;height:59px}.brand>span{font-size:12px}.brand small{font-size:9px}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:transparent;font-size:12px;color:var(--ink);padding:12px 0}.menu-toggle span{font-size:18px}nav{display:flex;width:100%;flex-wrap:wrap;gap:10px 20px;padding:12px 0}.js nav{display:none}.js nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-bottom:10px}nav>a{padding:12px 0}.js nav>.nav-contact{margin-top:10px;padding:12px}.hero{padding:45px 6% 35px;display:flex;flex-direction:column;gap:35px;align-items:stretch}.hero h1{font-size:clamp(48px,11vw,72px)}.hero-copy .eyebrow{font-size:8px;margin-bottom:20px}.hero .intro{font-size:15px;max-width:470px}.hero-actions{margin-top:23px}.hero-note{margin-top:25px}.hero-image img{aspect-ratio:1.35;border-radius:43% 43% 0 0}.hero-image figcaption{font-size:8px}.values-strip{padding:18px 5%;gap:15px;justify-content:space-between;font-size:8px;letter-spacing:.07em}.values-strip i{font-size:11px}.section{padding:55px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px;max-width:450px;font-size:14px}.section-heading h2{font-size:43px}.feature-grid{grid-template-columns:1fr;gap:35px}.feature h3{font-size:25px}.feature>img{aspect-ratio:1.2}.story-preview{padding:0 6%;grid-template-columns:1fr;margin-bottom:55px}.story-photo img{min-height:0;height:auto;aspect-ratio:1.4}.story-copy{padding:35px 9%}.story-copy h2{font-size:43px}.contact-band{grid-template-columns:1fr;padding:45px 8%;gap:25px}.contact-band h2{font-size:50px}.contact-band p:not(.eyebrow){font-size:13px}.contact-band .eyebrow{font-size:8px}.contact-band .button{margin-top:20px}footer{padding:30px 6%;flex-direction:column;align-items:start;gap:20px}.page-intro{padding:45px 6% 35px}.page-intro h1{font-size:clamp(44px,10.5vw,66px)}.page-intro>p:last-child{font-size:15px}.gallery-section{padding-top:10px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.photo-link img{aspect-ratio:1}.card-caption h3{font-size:21px}.card-caption p{font-size:11px}.gallery-toolbar{margin-bottom:10px;gap:18px}.filters{gap:7px}.filters button{font-size:11px;padding:9px 12px}.gallery-toolbar>p{font-size:10px}.custom-intro{display:block}.custom-intro>div+div{margin-top:25px}.custom-intro>div>p:not(.eyebrow){font-size:15px}.compact h2{font-size:33px}.custom-gallery{grid-template-columns:1fr;gap:30px}.custom-gallery .photo-link img{aspect-ratio:1.3}.process{padding:45px 8%}.process h2{font-size:36px}.process-grid{grid-template-columns:1fr;gap:25px;margin-top:25px}.process-grid>div{border-top:1px solid #c9bcaa;padding-top:20px}.process-grid h3{margin:8px 0 10px}.about-hero{grid-template-columns:1fr;gap:30px;padding:45px 6%}.about-hero h1{font-size:clamp(48px,11vw,70px)}.about-hero .intro{font-size:16px}.about-hero>img{aspect-ratio:1.12}.about-story{grid-template-columns:1fr;gap:20px;padding:35px 8%}.about-story h2{font-size:36px}.about-story p:not(.eyebrow){font-size:15px}.about-images{grid-template-columns:1fr;padding:0 6% 50px;gap:25px}dialog{padding:45px 12px 12px}dialog figcaption{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Keep the handmade pieces and family portraits fully in frame. */
.hero-image img{aspect-ratio:1.5;border-radius:2px;object-fit:contain}.about-hero>img{aspect-ratio:auto;border-radius:2px;height:auto}.gallery:not(.custom-gallery) .photo-link img{object-fit:contain;background:var(--sand)}

/* Product prices and made-to-order details */
.product-price{font-weight:700;color:var(--ink,#302a25);font-size:1.15rem;margin-top:1rem!important}.product-inquiry{display:inline-block;margin-top:.55rem;font-size:.9rem;text-underline-offset:4px}.delivery-note{font-size:.85rem!important;font-weight:600}.order-note{padding:1.3rem 1.5rem;border:1px solid #d9d1c4;border-radius:8px;margin-bottom:2rem;background:#eee8dc}.order-note strong{font-size:1.1rem}.order-note p{margin:.5rem 0 0;max-width:80ch;line-height:1.65}.lead-time{font-size:.95rem;line-height:1.6}
