:root{--forest:#594a3f;--ink:#3f3933;--paper:#faf8f3;--rust:#79614d;--line:#d9cec1;--muted:#6c6259}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #8b6c50;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08}h2{font-size:clamp(2.5rem,4.4vw,4rem)}h3{font-size:1.6rem}em{font-weight:400}.announcement{background:var(--rust);color:white;text-align:center;padding:10px 20px;font-size:.875rem;letter-spacing:.01em}.announcement a{margin-left:15px;font-weight:bold}header{padding:23px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font:2rem/1 Georgia,serif;letter-spacing:.12em;display:inline-block}.brand span{display:block;font: .75rem/1.5 Arial,sans-serif;letter-spacing:.29em;margin-top:6px}nav{display:flex;gap:30px;align-items:center;font-size:.9rem}nav a{text-decoration:none}.nav-order{border:1px solid var(--forest);padding:10px 20px}.hero{display:grid;grid-template-columns:1fr 1.07fr;background:var(--forest);color:var(--paper);align-items:center;gap:6%;padding:65px 5% 60px}.eyebrow{font-size:.75rem;letter-spacing:.18em;font-weight:700;margin-bottom:22px}.hero h1{font-size:clamp(3.2rem,5.4vw,5.6rem);letter-spacing:-.045em}.hero h1 em{color:#e3ccb0}.intro{max-width:440px;margin-top:25px;font-size:1.125rem;color:#f1e7db}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:32px}.button{padding:14px 22px;display:inline-flex;justify-content:center;text-align:center;text-decoration:none;font-size:.9rem;font-weight:700;border:1px solid transparent;cursor:pointer;border-radius:2px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button.light{background:var(--paper);color:var(--forest)}.button.dark{background:var(--forest);color:white}.button.outline{border-color:var(--forest);color:var(--forest)}.text-link{font-size:.9rem}.hero-note{font-size:.875rem;margin-top:23px;color:#e7dbcf}.hero-photo{position:relative;padding:30px;background:#dfd0bc;box-shadow:12px 12px 0 #44392f}.hero-photo img{width:100%;height:auto;display:block}.photo-caption{color:var(--forest);font-size:.8rem;display:flex;justify-content:space-between;gap:10px;margin-top:18px}.qualities{display:flex;justify-content:space-around;gap:20px;padding:23px 5%;font-size:.875rem;border-bottom:1px solid var(--line)}.qualities span:before{content:'✦';color:var(--rust);margin-right:10px}.section{padding:85px 5%;max-width:1440px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.section-heading>p{max-width:400px;color:var(--muted)}.section .eyebrow{color:var(--rust)}.gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:38px 26px}.art{grid-column:span 2}.art.wide{grid-column:span 3}.art-image{position:relative;display:block;width:100%;padding:0;border:0;cursor:zoom-in;background:#e5ddd2;overflow:hidden}.art-image img{width:100%;height:auto;aspect-ratio:1.4;object-fit:cover;display:block;transition:transform .3s}.art-image:hover img{transform:scale(1.025)}.art-image span{position:absolute;right:12px;bottom:12px;background:var(--paper);color:var(--forest);padding:5px 10px;font-size:.75rem}.art-caption{padding:18px 0 0}.art-caption h3{font-size:1.35rem}.art-caption p{font-size:.9rem;color:var(--muted);margin:8px 0}.art-caption a{font-size:.875rem;color:var(--rust);font-weight:bold}.story{display:grid;grid-template-columns:1fr 1fr;gap:25px 10%;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.story>.eyebrow{grid-column:1/-1;margin:0}.story h2{font-size:clamp(2.7rem,4.5vw,4.4rem)}.story h2 em{color:var(--rust)}.story>div{align-self:center;max-width:470px}.story>div p+p{margin-top:18px}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.price{padding:32px;border:1px solid var(--line);display:flex;flex-direction:column;gap:18px}.price .size{font-size:1.1rem;letter-spacing:.1em}.price h3{font-size:1.5rem}.price-value{font:3.5rem/1.15 Georgia,serif;letter-spacing:-.04em}.price-value span{display:block;font:.8rem/1.5 Arial,sans-serif;letter-spacing:0;margin-top:6px}.price>p:not(.size):not(.price-value){color:var(--muted);font-size:.95rem;margin-bottom:8px}.price .button{margin-top:auto}.price.featured{background:var(--forest);color:var(--paper);border-color:var(--forest)}.price.featured>p:not(.size):not(.price-value){color:#f1e7db}.price-foot{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;margin-top:25px;font-size:.9rem}.order{display:grid;grid-template-columns:.9fr 1fr;gap:10%;background:#ece3d7;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:none}.order-info{max-width:480px}.order-info h2 em{color:var(--rust)}.order-info>p:not(.eyebrow){margin-top:22px}.order-info ol{padding-left:22px;margin:30px 0}.order-info li{padding-left:12px;margin-bottom:22px;font-size:.95rem}.order-info li::marker{color:var(--rust);font-weight:700}form{background:var(--paper);padding:35px;max-width:620px;width:100%;border:1px solid var(--line)}form h3{font-size:1.8rem;margin-bottom:10px}.form-note,.date-note{font-size:.875rem;color:var(--muted);margin-bottom:22px}label{display:block;font-size:.875rem;font-weight:700;margin-bottom:20px}input,select,textarea{display:block;margin-top:8px;width:100%;border:1px solid #b5a697;border-radius:0;padding:11px 12px;background:white;color:var(--ink);font-size:1rem;font-weight:400;min-width:0}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.date-note{margin-top:-5px}.estimate{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-bottom:8px;align-items:center}.estimate strong{font:2rem Georgia,serif}form .button{width:100%}.email-fallback{text-align:center;font-size:.875rem;margin-top:20px;overflow-wrap:anywhere}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:8%}.faq-list details{border-bottom:1px solid var(--line);padding:22px 0}.faq-list details:first-child{padding-top:0}summary{cursor:pointer;font-size:1rem;font-weight:700;padding-right:15px}.faq-list p{margin-top:15px;color:var(--muted);font-size:.95rem}footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:30px;padding:45px 5%;background:var(--forest);color:var(--paper)}footer p{font-size:.9rem}footer>div{display:flex;gap:22px;font-size:.9rem}footer small{flex-basis:100%;font-size:.75rem;color:#e7dbcf;border-top:1px solid #8c7968;padding-top:20px}dialog{max-width:min(950px,94vw);max-height:94vh;padding:25px;border:0;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#30271fe6}dialog img{max-width:100%;max-height:72vh;display:block;object-fit:contain;margin:20px auto}dialog h2{font-size:1.5rem}dialog button{display:block;margin-left:auto;border:1px solid var(--forest);background:none;padding:8px 15px;cursor:pointer}.skip{position:absolute;top:-100px;left:10px;background:white;color:var(--ink);z-index:10;padding:12px}.skip:focus{top:10px}@media(min-width:1600px){.hero{padding-left:max(5%,calc((100vw - 1300px)/2));padding-right:max(5%,calc((100vw - 1300px)/2))}}@media(max-width:900px){.hero{gap:35px;padding-top:45px;padding-bottom:45px}.hero-photo{padding:15px}.hero h1{font-size:3.7rem}.section{padding-top:60px;padding-bottom:60px}.art{grid-column:span 3}.art.wide{grid-column:span 3}.price{padding:24px}.order{gap:40px}.photo-caption{flex-direction:column;gap:0}}@media(max-width:650px){header{padding:20px 5%;align-items:center}.brand{font-size:1.55rem}nav{gap:14px;flex-wrap:wrap;justify-content:flex-end;max-width:200px;font-size:.8rem}.nav-order{padding:6px 10px}.announcement{font-size:.75rem}.announcement a{display:block;margin:3px 0 0}.hero{grid-template-columns:1fr;gap:40px}.hero h1{font-size:3.9rem}.hero-photo{padding:20px;margin-right:12px}.photo-caption{flex-direction:row}.hero-note{font-size:.8rem}.qualities{flex-direction:column;gap:8px;padding:20px 5%}.section-heading{display:block}.section-heading>p{margin-top:22px;max-width:none}.gallery{gap:30px}.art,.art.wide{grid-column:1/-1}.art-image img{aspect-ratio:1.4}.story,.faq,.order{grid-template-columns:1fr;gap:30px}.story>div{max-width:none}.price-grid{grid-template-columns:1fr}.price{padding:28px}.price-foot{gap:12px}.order form{padding:25px 20px}.form-row{gap:12px}.faq-list{margin-top:10px}footer{gap:25px}footer p{flex-basis:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Natural stone branding */
header{padding-top:12px;padding-bottom:12px;background:#fdfcf9}.brand{display:block;flex-shrink:0;line-height:0;letter-spacing:0}.brand img{display:block;width:132px;height:132px;object-fit:contain}.hero{background:linear-gradient(120deg,#594a3f,#6d5b49)}.hero-photo{box-shadow:12px 12px 0 #44392f}.announcement{background:#79614d}footer .brand img{width:124px;height:124px;border-radius:2px}input:focus,select:focus,textarea:focus{border-color:#79614d}@media(max-width:650px){header{padding-top:10px;padding-bottom:10px;gap:15px}.brand img{width:108px;height:108px}nav{max-width:210px;font-size:.875rem;gap:10px 14px}footer .brand img{width:116px;height:116px}}

.story-signature{font:1.5rem/1.4 Georgia,serif;color:var(--rust);padding-top:8px}.story-signature span{font: .875rem/1.6 Arial,sans-serif;color:var(--muted)}@media(max-width:650px){header nav{max-width:220px}}

.story-photo{grid-column:1/-1;margin:20px 0 0;width:100%;max-width:1000px;justify-self:center}.story-photo img{display:block;width:100%;height:auto;border:1px solid var(--line)}.story-photo figcaption{font-size:.9rem;color:var(--muted);text-align:center;margin-top:14px;line-height:1.6}

/* Individual photo crops keep the artwork and lettering in view. */
.art-image img{aspect-ratio:auto;object-fit:contain}
.art-image:hover img{transform:none}
.art-image img[src$="we-rock.jpg"]{aspect-ratio:1.55;object-fit:cover;object-position:center bottom}
.art-image img[src$="rock-pile.jpg"]{aspect-ratio:1.55;object-fit:cover;object-position:center bottom}
.art-image img[src$="together.jpg"]{aspect-ratio:1.2;object-fit:cover;object-position:right center}
.story-photo{max-width:1000px}
.story-photo img{aspect-ratio:2.3;object-fit:cover;object-position:center center}
