:root{--ink-indigo:#1a2a3a;--muted-gold:#c5a059;--washi-cream:#f9f4e8;--primary:#041525;--on-surface:#1b1c1d;--on-surface-variant:#44474c;--primary-fixed-dim:#b7c8dd;--surface-container-low:#f5f3f4;--outline-variant:#c4c6cc;--surface:#fbf9fa;--ink-dark:#0f0f0f;--font-heading:"Playfair Display", Georgia, "Times New Roman", serif;--font-body:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"Courier New", monospace;--space-unit:8px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--space-5xl:120px;--gutter:32px;--margin-mobile:20px;--touch-min:44px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-body);background:var(--washi-cream);color:var(--ink-indigo);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation;min-height:100dvh;line-height:1.7}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--primary);font-weight:400}.display-lg{font-family:var(--font-heading);letter-spacing:-.02em;font-size:clamp(2.5rem,6vw,4rem);font-weight:600;line-height:1.1}.headline-lg{font-family:var(--font-heading);font-size:clamp(1.8rem,4vw,3rem);font-weight:500;line-height:1.2}.headline-md{font-family:var(--font-heading);font-size:clamp(1.3rem,3vw,2rem);font-weight:500;line-height:1.3}.body-lg{font-family:var(--font-body);letter-spacing:.01em;font-size:clamp(1rem,2vw,1.125rem);line-height:1.7}.body-md{font-family:var(--font-body);font-size:1rem;line-height:1.6}.label-caps{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;font-size:.75rem;font-weight:600;line-height:1.4}.quote-text{font-family:var(--font-heading);font-size:clamp(1.1rem,2.5vw,1.5rem);font-style:italic;font-weight:400;line-height:1.5}p{color:var(--on-surface-variant)}:focus-visible{outline:2px solid var(--muted-gold);outline-offset:3px;border-radius:2px}.nav{z-index:50;-webkit-backdrop-filter:blur(12px);background:#fbf9facc;border-bottom:1px solid #c4c6cc4d;width:100%;position:fixed;top:0}.nav-inner{max-width:1280px;padding:16px var(--gutter);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.nav-brand{font-family:var(--font-heading);color:var(--primary);letter-spacing:2px;font-size:1.5rem;font-weight:500;text-decoration:none}.nav-links{align-items:center;gap:32px;display:none}@media (min-width:768px){.nav-links{display:flex}}.nav-links a{text-transform:uppercase;letter-spacing:.15em;color:var(--on-surface-variant);padding:8px 0;font-size:.75rem;font-weight:600;text-decoration:none;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--primary);border-bottom:1px solid var(--muted-gold)}.nav-links .nav-cta{background:var(--muted-gold);color:var(--ink-indigo);text-transform:uppercase;letter-spacing:.15em;border-radius:6px;padding:10px 28px;font-size:.78rem;font-weight:600;text-decoration:none;transition:all .2s;box-shadow:0 1px 3px #0000001a}.nav-links .nav-cta:hover{background:#b89447;transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.nav-hamburger{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;padding:8px 4px;display:flex}.nav-hamburger span{background:#c5a059;width:24px;height:2px;transition:transform .3s,opacity .3s;display:block}.nav-hamburger.open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-hamburger.open span:nth-child(2){opacity:0}.nav-hamburger.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (min-width:768px){.nav-hamburger{display:none}}.nav-mobile{z-index:1000;opacity:0;visibility:hidden;background:#1a2a3a;flex-direction:column;justify-content:center;align-items:center;gap:32px;width:100vw;height:100dvh;transition:opacity .3s,visibility .3s;display:flex;position:fixed;inset:0}.nav-mobile.open{opacity:1;visibility:visible}.nav-mobile a{font-family:var(--font-heading);color:#f9f4e8;text-transform:uppercase;letter-spacing:.12em;font-size:1.5rem;text-decoration:none;transition:color .2s}.nav-mobile a:hover,.nav-mobile a.active{color:#c5a059}.nav-mobile-cta{letter-spacing:.12em;background:#c5a059;padding:12px 40px;font-weight:600;color:#1a2a3a!important;font-size:1rem!important}.page-content{padding-top:56px}.container{max-width:1280px;padding:0 var(--gutter);margin:0 auto}.container-narrow{max-width:720px;padding:0 var(--gutter);margin:0 auto}.section{padding:var(--space-5xl) 0}.section-sm{padding:var(--space-3xl) 0}.overline{color:var(--muted-gold);text-transform:uppercase;letter-spacing:4px;font-size:.65rem;font-weight:600}.hero{min-height:90vh;padding:0 var(--gutter) var(--space-5xl);align-items:center;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;position:absolute;inset:0;overflow:hidden}.hero-bg img{object-fit:cover;opacity:.4;mix-blend-mode:multiply;pointer-events:none;width:100%;height:100%}.hero-illustration{pointer-events:none;bottom:0;right:-5%;object-fit:contain!important;opacity:.18!important;mix-blend-mode:multiply!important;width:auto!important;height:75%!important;position:absolute!important}.hero-parallax{object-fit:cover;mix-blend-mode:multiply;pointer-events:none;will-change:transform;opacity:.12;width:100%;height:140%;animation:1.4s cubic-bezier(.22,.61,.36,1) .2s forwards heroFadeUp;position:absolute;inset:0}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(80px)}to{opacity:.12;transform:translateY(0)}}.hero-content{z-index:10;width:100%;max-width:1280px;margin:0 auto;position:relative}.hero-content h1{max-width:720px;margin-bottom:32px}.hero-content .subtitle{max-width:560px;color:var(--on-surface-variant);margin-bottom:40px;font-size:1.125rem;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:16px;display:flex}.btn{text-transform:uppercase;letter-spacing:.15em;cursor:pointer;font-size:.75rem;font-weight:600;font-family:var(--font-body);border:none;padding:16px 40px;text-decoration:none;transition:all .2s;display:inline-block}.btn-primary{background:var(--ink-indigo);color:var(--washi-cream)}.btn-primary:hover{opacity:.9}.btn-outline{color:var(--ink-indigo);border:1px solid var(--ink-indigo);background:0 0}.btn-outline:hover{background:var(--ink-indigo);color:var(--washi-cream)}.btn-gold{background:var(--muted-gold);color:var(--ink-indigo)}.btn-gold:hover{background:#d4b870}.bento-grid{grid-template-columns:1fr;gap:32px;display:grid}@media (min-width:768px){.bento-grid{grid-template-columns:repeat(3,1fr)}}.bento-card{background:var(--washi-cream);border-bottom:2px solid #0000;flex-direction:column;justify-content:space-between;padding:40px;transition:border-color .5s;display:flex}.bento-card:hover{border-bottom-color:var(--muted-gold)}.bento-card .bento-icon{color:var(--muted-gold);margin-bottom:24px;font-size:2.5rem}.bento-card h4{margin-bottom:16px}.bento-card p{margin-bottom:32px;font-size:.95rem}.bento-link{text-transform:uppercase;letter-spacing:.15em;color:var(--ink-indigo);align-items:center;gap:8px;font-size:.75rem;font-weight:600;text-decoration:none;transition:gap .3s;display:flex}.bento-link:hover{gap:16px}.bento-link:after{content:"→";font-size:1.1rem}.about-grid{grid-template-columns:1fr;align-items:center;gap:32px;display:grid}@media (min-width:768px){.about-grid{grid-template-columns:1fr 1fr}}.about-image{height:500px;position:relative;overflow:hidden}.about-image img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .7s}.about-image:hover img{transform:scale(1.05)}.about-image-cap{background:var(--washi-cream);border-bottom:2px solid var(--muted-gold);max-width:320px;padding:24px 32px;position:absolute;bottom:24px;left:24px}.about-text h3{margin-bottom:32px}.about-text p{margin-bottom:24px;font-size:1.05rem}blockquote.styled{border-left:2px solid var(--muted-gold);margin:32px 0;padding-left:32px}.cta-dark{background:var(--ink-indigo);color:var(--washi-cream);padding:var(--space-5xl) var(--gutter);position:relative;overflow:hidden}.cta-dark-inner{z-index:1;max-width:720px;margin:0 auto;position:relative}.cta-dark h2{color:var(--washi-cream);margin-bottom:32px}.cta-dark p{color:var(--primary-fixed-dim);margin-bottom:48px}.cta-dark .btn-primary{background:var(--washi-cream);color:var(--ink-indigo)}.cta-dark .btn-primary:hover{background:var(--muted-gold);color:var(--washi-cream)}.footer{background:var(--primary);padding:var(--space-3xl) 0 var(--space-xl);border-top:1px solid #ffffff14}.footer-inner{max-width:1280px;padding:0 var(--gutter);grid-template-columns:1fr;gap:32px;margin:0 auto;display:grid}@media (min-width:768px){.footer-inner{grid-template-columns:1fr 1fr}}.footer-brand{font-family:var(--font-heading);color:var(--washi-cream);margin-bottom:16px;font-size:1.3rem}.footer p{color:var(--primary-fixed-dim);max-width:400px;font-size:.9rem}.footer-links{flex-wrap:wrap;justify-content:flex-start;gap:24px;display:flex}@media (min-width:768px){.footer-links{justify-content:flex-end}}.footer-links a{text-transform:uppercase;letter-spacing:.15em;color:var(--primary-fixed-dim);font-size:.75rem;font-weight:600;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--muted-gold)}.footer-bottom{max-width:1280px;padding:0 var(--gutter);color:var(--primary-fixed-dim);opacity:.6;border-top:1px solid #ffffff0f;margin:32px auto 0;padding-top:16px;font-size:.8rem}.service-hero{text-align:center;padding:var(--space-5xl) 0 var(--space-3xl)}.service-list{grid-template-columns:1fr;gap:0;display:grid}.service-item{border-bottom:1px solid #0000000f;grid-template-columns:1fr;align-items:baseline;gap:16px;padding:32px 0;display:grid}@media (min-width:768px){.service-item{grid-template-columns:2fr 1fr 1.5fr}}.service-item h3{color:var(--primary)}.service-item .price{color:var(--muted-gold);font-weight:600}.service-item .desc{color:var(--on-surface-variant);font-size:.95rem}.faq-section{padding:var(--space-3xl) 0;border-top:1px solid #0000000f}.faq-item{cursor:pointer;color:var(--ink-indigo);border-bottom:1px solid #0000000a;justify-content:space-between;align-items:center;padding:16px 0;font-size:1rem;display:flex}.faq-item:after{content:"+";color:var(--muted-gold);font-size:1.3rem;font-family:var(--font-body)}.journal-header{text-align:center;padding:var(--space-5xl) 0 var(--space-2xl)}.journal-header h1{margin-bottom:10px}.journal-divider{background:var(--muted-gold);width:50px;height:2px;margin:16px auto 0}.article-list{padding-bottom:var(--space-3xl);flex-direction:column;gap:32px;display:flex}.article-card{border-bottom:1px solid #0000000f;padding-bottom:28px}.article-card .cat{color:var(--muted-gold);text-transform:uppercase;letter-spacing:3px;margin-bottom:6px;font-size:.55rem;font-weight:600}.article-card h3{color:var(--primary);cursor:pointer;margin-bottom:8px;font-size:1.5rem;font-weight:400;line-height:1.25;transition:color .2s}.article-card h3:hover{color:var(--muted-gold)}.article-card .excerpt{color:var(--on-surface-variant);margin-bottom:10px;font-size:.88rem;line-height:1.6}.article-card .meta{color:#999;align-items:center;gap:12px;font-size:.7rem;display:flex}.article-content{max-width:680px;padding:var(--space-2xl) var(--gutter) var(--space-3xl);margin:0 auto}.article-content h1{font-family:var(--font-heading);color:var(--primary);margin-bottom:16px;font-size:clamp(1.8rem,5vw,2.8rem);font-weight:400}.article-content h2{font-family:var(--font-heading);margin-top:var(--space-2xl);color:var(--primary);margin-bottom:16px;font-size:clamp(1.3rem,3.5vw,1.6rem)}.article-content p{color:var(--on-surface-variant);max-width:65ch;margin-bottom:20px;font-size:1rem;line-height:1.9}.article-content blockquote{border-left:2px solid var(--muted-gold);margin:var(--space-xl) 0;font-family:var(--font-heading);color:var(--primary);padding-left:20px;font-size:1.05rem;font-style:italic}.article-meta{color:var(--muted-gold);text-transform:uppercase;letter-spacing:2px;margin-bottom:var(--space-xl);font-size:.7rem}.progress-bar{background:var(--muted-gold);z-index:100;height:3px;transition:width .1s linear;position:fixed;top:0;left:0}.article-contact{margin-top:var(--space-2xl);padding:var(--space-xl);background:var(--surface-container-low);border-left:2px solid var(--muted-gold)}.article-contact .cta-label{color:var(--muted-gold);text-transform:uppercase;letter-spacing:3px;margin-bottom:12px;font-size:.55rem;font-weight:600}.article-contact h3{margin-top:0;margin-bottom:8px;font-size:1.15rem}.article-contact p{max-width:50ch;margin-bottom:16px;font-size:.9rem}.article-contact a{color:var(--muted-gold);border-bottom:1px solid var(--muted-gold);padding-bottom:2px;font-size:.9rem;font-weight:500;text-decoration:none}.atelier-hero{text-align:center;padding:var(--space-5xl) 0 var(--space-3xl)}.atelier-portrait{border:3px solid var(--muted-gold);background:linear-gradient(135deg,#d9cfbc,#c8b894,#b8a576);border-radius:50%;justify-content:center;align-items:center;width:180px;height:180px;margin:0 auto 40px;display:flex;overflow:hidden}.atelier-portrait span{color:#8a7e6b;text-transform:uppercase;letter-spacing:1px;text-align:center;font-size:.6rem}.bio-text{padding:0 0 var(--space-3xl)}.bio-text p{color:var(--on-surface-variant);margin-bottom:20px;font-size:1rem;line-height:1.8}.bio-text .dropcap{float:left;font-family:var(--font-heading);color:var(--muted-gold);padding-top:4px;padding-right:8px;font-size:3.8rem;line-height:.8}.section-divider{text-align:center;color:var(--muted-gold);letter-spacing:8px;padding:8px 0 32px;font-size:1.4rem}.contact-form{flex-direction:column;gap:32px;display:flex}.contact-row{grid-template-columns:1fr;gap:32px;display:grid}@media (min-width:768px){.contact-row{grid-template-columns:1fr 1fr}}.contact-field{position:relative}.contact-field label{text-transform:uppercase;letter-spacing:.15em;color:var(--muted-gold);margin-bottom:8px;font-size:.75rem;font-weight:600;display:block}.contact-field input,.contact-field textarea{width:100%;font-family:var(--font-body);color:var(--washi-cream);background:0 0;border:none;border-bottom:1px solid #ffffff4d;outline:none;padding:12px 0;font-size:1rem;transition:border-color .2s}.contact-field input:focus,.contact-field textarea:focus{border-bottom-color:var(--muted-gold)}.featured-card{background:var(--ink-indigo);color:var(--washi-cream);margin:var(--space-2xl) 0;border-radius:2px;overflow:hidden}.featured-card-inner{grid-template-columns:1fr;max-width:960px;margin:0 auto;display:grid}@media (min-width:768px){.featured-card-inner{grid-template-columns:3fr 2fr}}.featured-card .img-area{background:linear-gradient(135deg,#1a2a3a,#2a3a4a);justify-content:center;align-items:center;min-height:200px;display:flex}.featured-card .text-area{padding:var(--space-2xl);flex-direction:column;justify-content:center;display:flex}.featured-card .badge{color:var(--muted-gold);text-transform:uppercase;letter-spacing:3px;margin-bottom:16px;font-size:.55rem}.featured-card h2{color:var(--washi-cream);margin-bottom:12px;font-size:1.3rem;font-weight:600;line-height:1.4}.featured-card .read-link{color:var(--muted-gold);text-transform:uppercase;letter-spacing:2px;margin-top:16px;font-size:.75rem;text-decoration:none}.filter-pills{border-bottom:1px solid #0000000f;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:36px;padding-bottom:20px;display:flex}.filter-pill{color:var(--on-surface-variant);cursor:pointer;font-size:.72rem;font-family:var(--font-body);background:0 0;border:1px solid #0000001f;border-radius:20px;padding:6px 16px;text-decoration:none;transition:all .2s}.filter-pill:hover,.filter-pill.active{background:var(--ink-indigo);color:var(--washi-cream);border-color:var(--ink-indigo)}.fade-in{opacity:0;transition:all 1s ease-out;transform:translateY(20px)}.fade-in.visible{opacity:1;transform:translateY(0)}.horizontal-scroll-section{height:calc(var(--slide-count,9) * 100vh);background:var(--washi-cream);margin:0;position:relative}.slideshow-sticky{z-index:2;background:var(--washi-cream);height:100vh;position:sticky;top:0;overflow:hidden}.slides-track{will-change:transform;height:100%;transition:none;display:flex;position:relative}.timeline-line{z-index:0;pointer-events:none;background:#1a2a3a1a;height:2px;position:absolute;top:50%;transform:translateY(-50%)}.tl-slide{justify-content:center;align-items:center;min-width:100vw;height:100vh;display:flex;position:relative}.tl-marker{z-index:3;background:var(--washi-cream);border:2px solid #1a2a3a1a;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;transition:border-color .5s,background .5s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tl-marker--active{border-color:var(--muted-gold)}.tl-marker-year{font-family:var(--font-sans);letter-spacing:.12em;color:var(--muted-gold);text-transform:uppercase;white-space:nowrap;font-size:.65rem;font-weight:700}.tl-text{z-index:4;opacity:0;width:42%;max-width:380px;transition:opacity .6s,transform .6s;position:absolute}.tl-text--above{text-align:left;top:50%;left:8%;transform:translateY(-50%)translate(-24px)}.tl-text--below{text-align:left;top:50%;right:8%;transform:translateY(-50%)translate(24px)}.tl-text--visible{opacity:1;transform:translateY(-50%)translate(0)}.tl-title{font-family:var(--font-serif);color:var(--ink-indigo);margin:0 0 8px;font-size:clamp(1.4rem,3vw,2rem);line-height:1.2}.tl-desc{font-family:var(--font-sans);color:#1a2a3a8c;margin:0;font-size:.95rem;line-height:1.65}.tl-image{z-index:1;opacity:0;transition:opacity .7s .1s,transform .7s .1s;position:absolute}.tl-image img{object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%}.tl-image--right{width:44%;height:56%;top:50%;right:6%;transform:translateY(-50%)translate(30px)}.tl-image--left{width:44%;height:56%;top:50%;left:6%;transform:translateY(-50%)translate(-30px)}.tl-image--visible{opacity:.82;transform:translateY(-50%)translate(0)}@media (max-width:768px){.tl-marker{width:52px;height:52px}.tl-marker-year{font-size:.6rem}.tl-text{width:80%;max-width:320px}.tl-text--above{left:10%}.tl-text--below{right:10%}.tl-title{font-size:clamp(1.1rem,4vw,1.4rem)}.tl-desc{font-size:.85rem}.tl-image--right{width:50%;height:40%;right:0}.tl-image--left{width:50%;height:40%;left:0}.display-lg{font-size:clamp(2rem,8vw,3rem)}.headline-lg{font-size:clamp(1.5rem,6vw,2.2rem)}.nav-inner{padding:12px var(--margin-mobile)}.section{padding:var(--space-3xl) 0}.hero{min-height:70vh;padding:0 var(--margin-mobile) var(--space-3xl)}.container,.container-narrow{padding:0 var(--margin-mobile)}.about-image{height:320px}.bento-card{padding:28px 20px}.cta-dark{padding:var(--space-3xl) var(--margin-mobile)}.featured-card-inner{grid-template-columns:1fr}.footer-inner,.footer-bottom{padding:0 var(--margin-mobile)}.article-content{padding:var(--space-xl) var(--margin-mobile) var(--space-2xl)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;padding:1rem 0 3rem;display:grid}.recipe-card{background:#fff;border-radius:12px;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 1px 3px #0000000f}.recipe-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000014}.recipe-card-img{background-position:50%;background-size:cover;height:200px}.recipe-card-body{padding:1.25rem}.recipe-card-body h3{color:var(--ink-indigo);margin:.4rem 0 .5rem;font-family:Playfair Display,Georgia,serif;font-size:1.1rem;line-height:1.3}.recipe-card-body p{color:var(--slate);margin:0 0 .75rem;font-size:.85rem;line-height:1.4}.recipe-card-meta{color:var(--muted-gold);font-size:.75rem;font-weight:500}.recipe-tip{border-left:3px solid var(--muted-gold);background:#c5a05914;border-radius:0 6px 6px 0;margin:1.5rem 0;padding:1rem 1.25rem;font-size:.9rem;line-height:1.5}.recipe-tip strong{color:var(--ink-indigo)}@media (max-width:640px){.recipe-grid{grid-template-columns:1fr;gap:1rem}.recipe-card-img{height:160px}}.intern-loading{background:var(--washi-cream);min-height:100vh;color:var(--ink-indigo);font-family:var(--font-body);justify-content:center;align-items:center;font-size:.95rem;display:flex}.intern-gate{background:var(--washi-cream);min-height:100vh;font-family:var(--font-body);justify-content:center;align-items:center;display:flex}.intern-card{text-align:center;background:#fff;border-radius:12px;width:90%;max-width:380px;padding:2.5rem 2rem;box-shadow:0 4px 24px #0000000f}.intern-card h1{font-family:var(--font-heading);color:var(--ink-indigo);margin-bottom:.35rem;font-size:1.4rem}.intern-card p{color:var(--on-surface-variant);margin-bottom:1.5rem;font-size:.85rem}.intern-input{text-align:center;box-sizing:border-box;border:1px solid #0000001f;border-radius:8px;outline:none;width:100%;padding:.65rem 1rem;font-family:inherit;font-size:.95rem;transition:border-color .15s}.intern-input-error{border-color:#d92d20}.intern-error{color:#d92d20;margin-top:.4rem;font-size:.8rem}.intern-button{background:var(--ink-indigo);width:100%;color:var(--washi-cream);cursor:pointer;border:none;border-radius:8px;margin-top:.75rem;padding:.6rem;font-family:inherit;font-size:.9rem;font-weight:600}
