:root{--contrast: #2F2E2E;--contrast-2: #555;--base: #F8F6F4;--white: #FFFFFF;--accent: #9B454D;--accent-2: #C97872;--accent-3: #E5C8B2}*{box-sizing:border-box}html{background:var(--white);color:var(--contrast);font-family:Mulish,Arial,sans-serif}body{margin:0;line-height:1.7;font-size:16px}a{color:inherit}img{display:block;max-width:100%;height:auto}.site-header{background:var(--white);border-bottom:1px solid #eee7e3}.brand-wrap{text-align:center;padding:32px 20px 24px}.site-title{display:inline-block;font-family:Playfair Display,Georgia,serif;font-size:28px;letter-spacing:.2em;text-decoration:none;color:var(--contrast)}.tagline{margin:7px 0 0;color:var(--contrast-2);font-size:14px}.navigation-wrap{border-top:1px solid #f1ece8}.main-navigation{width:min(1180px,calc(100% - 32px));margin:0 auto;min-height:58px;display:flex;justify-content:center;align-items:center;gap:27px}.main-navigation a{color:var(--contrast);text-decoration:none;text-transform:uppercase;font-size:13px;font-weight:700;letter-spacing:.13em;transition:color .15s ease}.container{width:min(1160px,calc(100% - 36px));margin:0 auto}.hero{text-align:center;padding:58px 0 34px}.hero h1{margin:0 0 12px;font-family:Playfair Display,Georgia,serif;font-size:clamp(2.2rem,4vw,3.4rem);font-weight:500;line-height:1.15}.hero p{margin:0 auto;max-width:680px;color:var(--contrast-2);font-size:1.05rem}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 26px;padding:10px 0 70px}.card{background:var(--white)}.card-image{display:block;aspect-ratio:4 / 3;overflow:hidden;background:var(--base)}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.card:hover .card-image img{transform:scale(1.015)}.card-body{padding:17px 3px 0}.card h2{margin:0 0 9px;font-family:Playfair Display,Georgia,serif;font-weight:500;font-size:1.45rem;line-height:1.3}.card h2 a{text-decoration:none}.card h2 a:hover{color:var(--accent)}.card p{margin:0;color:var(--contrast-2);font-size:.95rem;line-height:1.65}.article{width:min(800px,calc(100% - 36px));margin:54px auto 90px}.article h1{font-family:Playfair Display,Georgia,serif;font-weight:500;font-size:clamp(2.3rem,4.5vw,3.45rem);line-height:1.15;letter-spacing:.01em;margin:0 0 15px}.article-meta{color:#777;font-size:.92rem;margin-bottom:30px}.featured{width:100%;margin:0 0 38px}.content{font-size:1.05rem;color:var(--contrast)}.content h2,.content h3,.content h4,.content h5,.content h6{font-family:Playfair Display,Georgia,serif;font-weight:500}.content h2{margin:2.1em 0 .65em;font-size:clamp(1.9rem,3vw,2.4rem);line-height:1.25}.content h3{margin:1.8em 0 .55em;font-size:clamp(1.55rem,2.5vw,1.95rem);line-height:1.35}.content h4{font-size:1.45rem}.content p{margin:0 0 1.25em}.content ul,.content ol{padding-left:1.5em}.content li{margin-bottom:.65em}.content a{color:var(--accent)}.content img{margin:28px auto}.content blockquote{margin:30px 0;padding:20px 26px;background:var(--base);border-left:4px solid var(--accent-2)}.categories{margin-top:45px;padding-top:22px;border-top:1px solid #e9e3df}.categories a{display:inline-block;margin:0 8px 8px 0;padding:7px 12px;background:var(--base);text-decoration:none;font-size:.88rem}.site-footer{background:var(--base);margin-top:40px;padding:48px 20px 24px}.footer-inner{width:min(1160px,100%);margin:0 auto;display:flex;justify-content:space-between;gap:50px}.footer-brand{font-family:Playfair Display,Georgia,serif;font-size:1.5rem}.footer-inner p{color:var(--contrast-2);max-width:440px}.footer-menu{display:flex;flex-wrap:wrap;align-content:flex-start;gap:13px 22px;max-width:460px}.footer-menu a{font-size:.9rem;text-decoration:none}.footer-menu a:hover{color:var(--accent)}.copyright{width:min(1160px,100%);margin:35px auto 0;border-top:1px solid #e3dcd7;padding-top:20px;color:#777;font-size:.85rem}@media (max-width: 900px){.main-navigation{overflow-x:auto;justify-content:flex-start;padding:0 3px;white-space:nowrap}.grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 620px){body{font-size:17px}.brand-wrap{padding-top:24px}.site-title{font-size:22px;letter-spacing:.14em}.tagline{font-size:13px}.main-navigation{min-height:52px;gap:20px}.grid{grid-template-columns:1fr;gap:38px}.hero{padding:38px 0 24px}.article{margin-top:36px}.footer-inner{flex-direction:column}}.astro-ad{width:100%;margin:34px auto;text-align:center;clear:both;min-height:90px}.astro-ad-inline{margin-top:34px;margin-bottom:34px}@media (max-width: 620px){.astro-ad{margin-top:26px;margin-bottom:26px}}.site-header{background:#fffffffa;border-bottom:1px solid #eee7e3}.brand-wrap{text-align:center;padding:18px 20px 14px}.site-title{display:inline-flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;color:var(--contrast);line-height:1;letter-spacing:0}.brand-name{font-family:Playfair Display,Georgia,serif;font-size:35px;line-height:1;font-weight:600;font-style:italic;letter-spacing:.015em}.brand-category{margin-top:7px;padding-left:.36em;font-family:Mulish,Arial,sans-serif;font-size:10px;line-height:1;font-weight:700;text-transform:uppercase;letter-spacing:.36em;color:var(--accent)}.tagline{margin:9px 0 0;color:#706b68;font-size:12.5px;line-height:1.4;letter-spacing:.015em}.navigation-wrap{border-top:1px solid #f1ece8;border-bottom:0;background:#fff}.main-navigation{width:min(1180px,calc(100% - 32px));margin:0 auto;min-height:50px;display:flex;justify-content:center;align-items:center;gap:25px}.main-navigation a{position:relative;padding:16px 0 14px;color:var(--contrast);text-decoration:none;text-transform:uppercase;font-size:12px;line-height:1;font-weight:700;letter-spacing:.115em;white-space:nowrap}.main-navigation a:after{content:"";position:absolute;left:50%;bottom:9px;width:0;height:1px;background:var(--accent);transform:translate(-50%);transition:width .18s ease}.main-navigation a:hover{color:var(--accent)}.main-navigation a:hover:after{width:100%}.home-hero{padding:43px 0 31px}.hero-kicker,.section-kicker{margin:0 0 9px;color:var(--accent);font-size:10.5px;line-height:1.3;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.home-hero h1{margin:0;font-family:Playfair Display,Georgia,serif;font-size:clamp(2.35rem,4.6vw,3.65rem);font-weight:500;line-height:1.08;letter-spacing:-.015em}.home-hero .hero-copy{max-width:690px;margin:13px auto 0;color:var(--contrast-2);font-size:1rem;line-height:1.7}.category-shortcuts{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;max-width:850px;margin:24px auto 0}.category-shortcuts a{display:inline-flex;align-items:center;min-height:36px;padding:8px 15px;border:1px solid #e8ded9;border-radius:999px;background:#fff;color:#494543;text-decoration:none;font-size:12px;line-height:1;font-weight:700;transition:border-color .15s ease,color .15s ease,background .15s ease,transform .15s ease}.category-shortcuts a:hover{border-color:var(--accent-2);background:#fcf8f6;color:var(--accent);transform:translateY(-1px)}.home-section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:7px 0 21px;padding-top:24px;border-top:1px solid #eee7e3}.home-section-heading h2{margin:0;font-family:Playfair Display,Georgia,serif;font-size:clamp(1.8rem,3vw,2.35rem);font-weight:500;line-height:1.15}.section-intro{max-width:420px;margin:0 0 3px;color:#77706d;font-size:13px;line-height:1.5;text-align:right}.grid{gap:38px 25px;padding:0 0 72px}.card{min-width:0;background:var(--white)}.card-image{display:flex;align-items:center;justify-content:center;width:100%;height:300px;aspect-ratio:auto;overflow:hidden;background:#f7f3f0;border:1px solid #eee7e3;border-radius:10px;text-decoration:none}.card-image img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center;transition:opacity .2s ease}.card:hover .card-image img{transform:none;opacity:.96}.card-body{padding:15px 3px 0}.card h2{margin:0 0 8px;font-family:Playfair Display,Georgia,serif;font-weight:500;font-size:1.3rem;line-height:1.31}.card-excerpt{display:-webkit-box;overflow:hidden;margin:0;color:var(--contrast-2);font-size:.91rem;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:4}.card-link{display:inline-flex;gap:6px;align-items:center;margin-top:12px;color:var(--accent);text-decoration:none;font-size:11px;line-height:1;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.card-link span{transition:transform .15s ease}.card-link:hover span{transform:translate(3px)}@media (max-width: 900px){.main-navigation{justify-content:flex-start;overflow-x:auto;gap:22px;padding:0 3px;scrollbar-width:none}.main-navigation::-webkit-scrollbar{display:none}.card-image{height:320px}}@media (max-width: 620px){.brand-wrap{padding:15px 18px 12px}.brand-name{font-size:29px}.brand-category{margin-top:6px;font-size:9px}.tagline{margin-top:7px;font-size:11.5px}.main-navigation{min-height:46px}.main-navigation a{padding-top:15px;padding-bottom:14px;font-size:11px}.home-hero{padding:32px 0 25px}.home-hero h1{font-size:2.45rem}.home-hero .hero-copy{font-size:.96rem}.category-shortcuts{gap:7px;margin-top:20px}.category-shortcuts a{min-height:34px;padding:7px 12px;font-size:11px}.home-section-heading{display:block;margin-bottom:18px;padding-top:21px}.section-intro{margin-top:8px;text-align:left}.grid{gap:38px}.card-image{height:330px}.card h2{font-size:1.4rem}}.home-project-heading{padding:34px 0 22px;text-align:center}.home-project-heading h1{margin:0;font-family:Playfair Display,Georgia,serif;font-size:clamp(2rem,3.3vw,2.75rem);line-height:1.15;font-weight:500;letter-spacing:-.01em}.home-project-heading:after{content:"";display:block;width:38px;height:2px;margin:14px auto 0;background:var(--accent-2)}.home-project-heading+.grid{padding-top:0}.site-footer{margin-top:45px;padding:0;background:#faf8f6;border-top:1px solid #ebe4df}.footer-simple{width:min(1160px,calc(100% - 36px));margin:0 auto;padding:32px 0 22px;text-align:center}.footer-simple .footer-menu{max-width:none;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:0}.footer-simple .footer-menu a{position:relative;padding:4px 14px;color:#514d4a;text-decoration:none;font-size:12px;font-weight:600;letter-spacing:.035em;transition:color .15s ease}.footer-simple .footer-menu a:hover{color:var(--accent)}.footer-simple .footer-menu a:not(:last-child):after{content:"•";position:absolute;right:-2px;color:#c8bdb7;font-weight:400}.footer-simple .copyright{width:auto;margin:20px 0 0;padding:17px 0 0;border-top:1px solid #e8e0db;color:#8a827d;font-size:11px;letter-spacing:.035em}@media (max-width: 620px){.home-project-heading{padding:25px 0 18px}.home-project-heading h1{font-size:2rem}.footer-simple{padding:27px 0 20px}.footer-simple .footer-menu{gap:8px 0}.footer-simple .footer-menu a{padding:4px 10px;font-size:11px}}
