:root{--ivory:#f6f0e7;--paper:#fffdf9;--brown:#8b6b50;--ink:#302a25;--muted:#81776c;--line:#e4dcd1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Apple SD Gothic Neo,Malgun Gothic,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}.header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5%,calc((100vw - 1300px)/2));background:var(--paper)}.logo{font-family:Georgia,serif;font-size:23px;letter-spacing:.11em}.logo span{font-size:13px;letter-spacing:.22em}.header nav{display:flex;gap:38px;font-size:12px;letter-spacing:.12em}.header nav a:hover,.section-heading a:hover{color:var(--brown)}.hero{min-height:620px;display:grid;grid-template-columns:1fr 1fr;background:var(--ivory)}.hero-copy{padding:115px 7% 90px max(10%,calc((100vw - 1300px)/2));display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:11px;letter-spacing:.22em;color:var(--brown);font-weight:700}.hero h1{font-size:clamp(42px,5vw,76px);font-weight:400;letter-spacing:-.06em;line-height:1.24;margin:34px 0 25px}.hero h1 em{font-style:normal;color:var(--brown)}.hero-copy p{line-height:1.9;color:var(--muted);font-size:15px;max-width:380px}.cta{display:inline-flex;gap:38px;align-items:center;background:var(--ink);color:white;padding:17px 24px;font-size:13px;margin-top:35px}.cta:hover{background:var(--brown)}.hero-visual{position:relative;min-height:620px;background:linear-gradient(135deg,#d4c5b0,#eee3d4 55%,#c6b198);display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,#fff4 56%,transparent 85%);transform:skew(-22deg)}.hero-frame{width:min(53%,350px);aspect-ratio:3/4;border:20px solid #947251;box-shadow:8px 18px 32px #46332244,inset 0 0 0 4px #c9a47c;z-index:1;background:#f5eee3;padding:18px}.hero-art{width:100%;height:100%;position:relative;background:#e8d8bd;overflow:hidden}.sun{top:18%;right:13%;width:66px;height:66px;border-radius:50%;background:#c68f65}.hill,.sun{position:absolute}.hill{width:140%;height:58%;border-radius:50% 50% 0 0;bottom:-17%;left:-20%;background:#9d9f83;transform:rotate(-13deg)}.hill.two{background:#6d7c65;bottom:-31%;left:12%;transform:rotate(16deg)}.visual-caption{position:absolute;bottom:32px;right:35px;font-size:10px;letter-spacing:.2em;color:#6b5a48}.section{max-width:1300px;margin:auto;padding:110px 5%}.intro{text-align:center;max-width:820px}.intro h2{font-weight:400;font-size:clamp(30px,4vw,49px);line-height:1.5;margin:20px 0}.intro p{color:var(--muted);line-height:1.8}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.section-heading h2{font-family:Georgia,serif;font-size:48px;font-weight:400;margin:12px 0 0}.section-heading a{font-size:13px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:24px;gap:24px}.detail-image,.product-photo{background:#ede6db;aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;overflow:hidden}.detail-image img,.product-photo img{width:100%;height:100%;object-fit:cover}.product-card:hover .product-photo{filter:brightness(.96)}.frame-placeholder{width:55%;height:66%;border:13px solid #947557;background:#f8f2e9;box-shadow:5px 9px 17px #483e3533;padding:13px}.frame-inner{width:100%;height:100%;background:linear-gradient(145deg,#e4d4bd 0 45%,#b7b49b 45% 70%,#8b9b85 70%)}.product-meta{display:flex;justify-content:space-between;align-items:center;padding:17px 2px}.product-meta h3{font-size:16px;font-weight:500;margin:0 0 7px}.product-meta p{font-size:12px;color:var(--muted);margin:0}.closing{background:#8c7863;color:white;text-align:center;padding:110px 20px}.closing .eyebrow{color:#f4e3cb}.closing h2{font-weight:400;font-size:clamp(29px,4vw,48px);line-height:1.5}.cta.light{background:#fff;color:var(--ink)}.footer{background:#292622;color:#f4ede4;padding:50px 5%;display:flex;justify-content:space-between;gap:30px}.footer strong{font-family:Georgia,serif;letter-spacing:.15em}.footer p{font-size:12px;color:#bcb1a4;line-height:1.8}.page-section{min-height:65vh}.page-title{font-family:Georgia,serif;font-size:clamp(40px,6vw,66px);font-weight:400;margin:15px 0}.page-description{color:var(--muted);margin-bottom:45px}.filters{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px}.filter-tabs{display:flex;gap:8px;flex-wrap:wrap}.filter-tabs button{border:1px solid var(--line);background:transparent;padding:10px 18px;cursor:pointer;font-size:13px}.filter-tabs button.active{background:var(--ink);color:white;border-color:var(--ink)}.filters input{border:1px solid var(--line);padding:12px 14px;min-width:230px;background:white}.result-count{font-size:11px;color:var(--muted);letter-spacing:.1em;margin:28px 0 18px}.empty{padding:50px;text-align:center}.back-link,.empty{color:var(--muted)}.back-link{font-size:13px}.detail-layout{display:grid;grid-template-columns:1.15fr 1fr;grid-gap:8%;gap:8%;margin-top:35px}.detail-info{padding-top:20px}.detail-info h1{font-size:40px;font-weight:400;margin:20px 0 10px}.muted{color:var(--muted)}.detail-description{line-height:1.9;margin:35px 0}.detail-info dl{border-top:1px solid var(--line);margin:0}.detail-info dl div{display:grid;grid-template-columns:100px 1fr;border-bottom:1px solid var(--line);padding:17px 0;font-size:14px}.detail-info dt{color:var(--muted)}.detail-info dd{margin:0}.detail-gallery{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-top:12px}.detail-gallery img{width:100%;aspect-ratio:1;object-fit:cover}.text-page{max-width:900px}.text-page .lead{font-size:24px;line-height:1.7}.text-page p{line-height:1.9;color:var(--muted)}.contact-note{margin-top:35px;background:var(--ivory);padding:30px;line-height:2.3}@media(max-width:850px){.header{height:auto;min-height:78px;display:block;padding:22px 5%}.header nav{margin-top:20px;gap:20px;flex-wrap:wrap}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 7%}.hero-visual{min-height:450px}.section{padding:70px 5%}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout{grid-template-columns:1fr;gap:35px}.filters,.footer{flex-direction:column}.filters{align-items:stretch}.filters input{width:100%}}@media(max-width:520px){.product-grid{gap:14px}.product-meta h3{font-size:13px}.product-meta p{font-size:11px}.frame-placeholder{border-width:9px;padding:8px}.section-heading h2{font-size:36px}.hero h1{font-size:44px}.hero-visual{min-height:350px}.header nav{gap:15px;font-size:10px}.section{padding:60px 5%}}.footer{align-items:flex-start}.footer-brand{min-width:180px}.footer-brand>a{display:inline-block;margin-top:10px;font-size:13px;color:#e9d9c4}.footer-details{max-width:760px}.footer-details p{margin:0 0 9px}.footer-details b{color:#eee3d5;margin-right:9px;font-weight:500}.footer-brand a:hover,.footer-details a:hover{color:#fff;text-decoration:underline}.footer-separator{padding:0 9px;color:#8c8074}.footer-details .copyright{margin-top:25px;color:#9f9589}.directions-page{max-width:1200px}.directions-layout{display:grid;grid-template-columns:1fr 1fr;grid-gap:28px;gap:28px}.directions-panel{background:var(--ivory);padding:42px}.directions-panel h2{font-weight:500;font-size:28px;margin:0 0 28px}.directions-panel dl{margin:0}.directions-panel dl>div{display:grid;grid-template-columns:100px 1fr;grid-gap:12px;gap:12px;border-bottom:1px solid #ded4c6;padding:17px 0}.directions-panel dt{color:var(--muted);font-size:13px}.directions-panel dd{margin:0;font-size:14px;line-height:1.7;overflow-wrap:anywhere}.directions-panel dd a:hover{text-decoration:underline}.directions-panel .cta{margin-top:30px}.directions-hint{font-size:12px;color:var(--muted);line-height:1.7}.directions-map-placeholder{min-height:400px;background:linear-gradient(140deg,#e5d9c8,#f6f0e7);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.directions-map-mark{font-size:70px;color:var(--brown);margin:15px}.directions-map-placeholder p{line-height:1.8}.directions-map-placeholder a{font-size:13px;text-decoration:underline;text-underline-offset:5px}@media(max-width:850px){.directions-layout{grid-template-columns:1fr}.directions-map-placeholder{min-height:280px}}@media(max-width:520px){.directions-panel{padding:24px}.directions-panel dl>div{grid-template-columns:80px 1fr}.footer-separator{display:none}}