/* Design tokens and foundations */
:root{--paper:#f7f4ed;--ink:#493426;--muted:#705e50;--line:#d8cdbf;--olive:#646b43;--accent:#aa5c27;--white:#fffdf9;--serif:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;--sans:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;--content:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:16px;line-height:1.95;letter-spacing:.06em}body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:5;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.5' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:auto;object-fit:cover}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:500}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}a{transition:color .2s,background .2s,opacity .2s}a:hover{color:var(--accent)}.container{width:min(var(--content),calc(100% - 104px));margin:auto}.section{margin-top:66px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;top:-100px;left:16px;background:var(--white);padding:10px 20px;z-index:30}.skip-link:focus{top:10px}.section-label{font-size:17px;line-height:1.5;letter-spacing:.13em}.section-label span{display:block;font-size:13px;letter-spacing:.1em;margin-top:3px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.text-link{font-size:14px;display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid var(--line);padding:6px 0}.text-link span{transition:transform .2s}.text-link:hover span{transform:translateX(4px)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:46px;padding:9px 25px;border:1px solid #9c8977;border-radius:30px;font-size:14px;line-height:1.6;font-weight:600;letter-spacing:.08em;background:#fff9}.button:hover{background:var(--ink);color:white;border-color:var(--ink)}.primary{background:var(--accent);color:white;border-color:var(--accent)}.olive{background:var(--olive);color:white;border-color:var(--olive)}.light{background:var(--white);border-color:var(--white)}.small-note,.availability,.demo-note{font-family:var(--sans);color:var(--muted);font-size:12px;letter-spacing:.03em}.availability{margin-top:22px}.demo-note{margin-top:12px;line-height:1.8}
/* Header and first view */
.header{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px max(4vw,24px);background:linear-gradient(90deg,#faf7f1f7 65%,#faf7f1b3);min-height:94px}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:18px;letter-spacing:.14em;line-height:1.5}.brand small{display:block;font-size:10px;letter-spacing:.14em;margin-top:3px}.brand-mark{font-size:48px;line-height:1;transform:rotate(-25deg);font-weight:400}.header nav{display:flex;align-items:center;gap:38px}.header nav a{font-size:14px;letter-spacing:.12em;line-height:1.5}.header nav small{display:block;font-size:10px;text-align:center;margin-top:3px}.header .social-link{display:flex;align-items:center;gap:8px;background:var(--olive);color:white;border-radius:30px;padding:10px 22px;letter-spacing:.05em}.social-link span{font-size:24px;line-height:1}.menu-toggle{display:none}.hero{position:relative;min-height:740px;display:flex;align-items:center;isolation:isolate;background:#dbcebd}.hero-image{position:absolute;inset:0;height:100%;z-index:-2;object-position:center 55%}.hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f8f5effc 0%,#f8f5eff0 25%,#f8f5ef70 48%,transparent 72%)}.hero-inner{width:min(var(--content),calc(100% - 104px));margin:105px auto 35px}.eyebrow{font-size:11px;letter-spacing:.2em;margin-bottom:23px}.hero h1{font-size:clamp(42px,4.4vw,66px);line-height:1.5;letter-spacing:.18em}.hero-description{font-size:15px;line-height:2;margin-top:23px;letter-spacing:.08em}.actions{display:flex;gap:15px;margin-top:28px}.hero-note{font-size:14px;letter-spacing:.15em;margin-top:35px}.hero-stamp{position:absolute;right:5vw;bottom:38px;color:white;text-shadow:0 1px 5px #321b0f;font-size:16px;letter-spacing:.2em;line-height:1.8;transform:rotate(-4deg)}.hero-stamp span{font-size:12px}
/* About and craft */
.about{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;margin-top:42px}.about-photo{position:relative}.about-photo img{aspect-ratio:1.48}.about-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(130deg,#e9efeca0,transparent 65%)}.about-photo figcaption{position:absolute;top:30px;left:35px;font-size:20px;z-index:1;color:#303c32;letter-spacing:.15em}.about h2,.story h2{font-size:30px;line-height:1.65;letter-spacing:.08em;margin:18px 0}.about-copy>p:not(.section-label),.story-copy>p:not(.section-label){font-size:14px;line-height:2.1}.about-copy>p+p{margin-top:9px}.about .text-link{margin-top:17px}.commitment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:22px}.commitment-card{overflow:hidden;background:var(--white);border-radius:4px}.commitment-card>img{aspect-ratio:2.05}.card-copy{padding:20px 24px 24px}.card-number{font-size:11px;color:var(--muted);letter-spacing:.15em}.card-copy h3{font-size:21px;margin:7px 0}.card-copy p{font-size:15px;line-height:1.9}
/* Product collection and seasonal feature */
.bread-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.image-wrap{overflow:hidden;border-radius:3px}.bread-card img{aspect-ratio:1.35;transition:transform .5s}.bread-card:hover img{transform:scale(1.035)}.category{font-size:10px;letter-spacing:.15em;color:var(--muted);margin-top:15px}.bread-card h3{font-size:19px;margin:3px 0 8px;letter-spacing:.03em}.bread-card>p:last-child{font-size:14px;line-height:1.9;letter-spacing:.03em}.seasonal{position:relative;isolation:isolate;min-height:345px;overflow:hidden;border-radius:10px;color:white;display:flex;align-items:center;margin-top:45px}.seasonal>img{position:absolute;inset:0;height:100%;z-index:-2;object-position:70% 50%}.seasonal::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#303d23e8 0%,#303d23bf 36%,#303d2320 80%)}.seasonal-copy{padding:35px 46px}.seasonal h2{font-size:36px;line-height:1.55;letter-spacing:.12em;margin:18px 0 12px}.seasonal-copy>p:not(.section-label){font-size:14px;line-height:1.8}.seasonal .button{margin-top:20px;color:var(--ink)}.seasonal .button:hover{color:white}.season-badge{position:absolute;top:30px;right:30px;width:112px;height:112px;border:1px solid #ffffff85;outline:4px solid #68704bbd;background:#646b43e0;border-radius:50%;display:flex;flex-direction:column;justify-content:center;text-align:center;line-height:1.4;font-size:21px}.season-badge em{font-size:14px;margin-top:7px}.seasonal-details{font-size:14px;border-bottom:1px solid var(--line)}.seasonal-details summary{padding:15px 0;display:flex;justify-content:space-between}.seasonal-details p{padding:0 0 20px;max-width:800px}.story{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}.story-photo{position:relative}.story-photo img{aspect-ratio:1.35}.story-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#20170d80,transparent 65%)}.story-photo figcaption{position:absolute;top:30px;left:25px;writing-mode:vertical-rl;color:white;z-index:1;font-size:22px;letter-spacing:.16em;text-shadow:0 1px 4px #22180a}.signature{margin-top:20px}
/* News, store, and journal */
.information{display:grid;grid-template-columns:.9fr 1.3fr;gap:40px}.news{padding-right:30px;border-right:1px solid var(--line)}.news-list{margin-top:20px}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.news summary{display:grid;grid-template-columns:84px 1fr 14px;gap:10px;align-items:start;padding:19px 0;font-size:13px;border-bottom:1px solid var(--line);letter-spacing:.02em}.news time{font-size:12px}.news summary b{font-weight:400}.news details p{font-size:14px;padding:16px 0 20px}.news details[open] summary b{transform:rotate(45deg)}summary:hover{color:var(--accent)}.shop-content{display:grid;grid-template-columns:38% 1fr;gap:22px;margin-top:22px}.shop-content>img{height:100%;max-height:315px}.shop h3{font-size:16px;margin-bottom:10px}address{font-style:normal;font-size:13px;line-height:1.85}dl{margin:10px 0 16px;font-size:12px;font-family:var(--sans);letter-spacing:0}dl div{display:flex;gap:12px}dt{width:56px;flex-shrink:0}dd{margin:0}.shop .button{font-size:12px;min-height:42px;padding:9px 17px;gap:15px}.instagram{margin-bottom:60px}.instagram-heading{display:flex;align-items:center;gap:23px}.instagram h2{font-size:25px;letter-spacing:.07em}.instagram-heading p{font-size:12px}.instagram-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.instagram-grid img{aspect-ratio:1;border-radius:2px}.footer{background:#422e21;color:#f5ecdf;padding:48px max(4vw,24px) 22px}.footer-inner{max-width:var(--content);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer nav{display:flex;gap:24px;font-size:12px}.footer-inner>p{font-size:13px;line-height:1.8}.footer-bottom{max-width:var(--content);margin:32px auto 0;display:flex;justify-content:space-between;gap:16px;border-top:1px solid #ffffff25;padding-top:18px}.footer-bottom small{font-size:10px;letter-spacing:.04em}.footer a:hover{color:#e5ba8c}
/* Tablet */
@media(max-width:1050px){.header{padding:20px 30px;gap:20px}.brand{font-size:15px;gap:8px}.brand-mark{font-size:36px}.header nav{gap:22px}.header .social-link{padding:9px 14px}.container,.hero-inner{width:calc(100% - 64px)}.hero{min-height:680px}.about,.story{gap:32px}.about h2,.story h2{font-size:26px}.commitment-grid{gap:20px}.card-copy{padding:18px}.card-copy h3{font-size:18px}.bread-grid{gap:16px}.bread-card h3{font-size:16px}.bread-card>p:last-child{font-size:13px}.information{grid-template-columns:1fr 1.2fr;gap:25px}.news{padding-right:20px}.shop-content{grid-template-columns:1fr}.shop-content>img{height:190px;aspect-ratio:2}.footer nav{gap:14px}.footer-inner>p{display:none}.instagram-heading{display:block}}
/* Mobile: comfortable reading, two-column products, accessible navigation */
@media(max-width:700px){html{scroll-padding-top:90px}body{font-size:16px}.container,.hero-inner{width:calc(100% - 40px)}.section{margin-top:46px}.header{position:absolute;min-height:78px;padding:17px 20px;background:#faf7f1f5}.brand{font-size:14px}.brand small{font-size:9px}.brand-mark{font-size:35px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;border:1px solid var(--line);background:transparent;border-radius:50%;padding:12px;color:var(--ink);cursor:pointer}.menu-toggle>span:not(.sr-only){display:block;width:18px;height:1px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px;box-shadow:0 12px 15px #49342612;grid-template-columns:1fr 1fr;gap:0}.header nav.is-open{display:grid}.header nav a{padding:14px;text-align:center;min-height:55px}.header nav .social-link{justify-content:center;grid-column:1/-1;margin-top:10px}.hero{min-height:780px;align-items:flex-start}.hero-image{height:52%;top:auto;bottom:0;object-position:center}.hero::after{background:linear-gradient(180deg,var(--paper) 0%,var(--paper) 41%,#f7f4eda0 54%,transparent 72%)}.hero-inner{margin-top:110px;margin-bottom:0}.eyebrow{font-size:10px;margin-bottom:15px}.hero h1{font-size:43px;line-height:1.45;letter-spacing:.12em}.hero-description{font-size:14px;line-height:1.95;margin-top:18px}.actions{gap:10px;margin-top:23px}.button{padding:10px 20px;font-size:13px;gap:18px}.hero-note{display:none}.hero-stamp{font-size:13px;bottom:22px;right:22px}.hero-stamp span{font-size:10px}.about,.story{grid-template-columns:1fr;gap:28px}.about-photo img{aspect-ratio:1.35}.about-photo figcaption{top:24px;left:24px;font-size:18px}.about-copy{padding:0 4px}.about h2,.story h2{font-size:27px}.about-copy>p:not(.section-label),.story-copy>p:not(.section-label){font-size:15px}.desktop-break{display:none}.section-label{font-size:16px}.section-label span{font-size:12px}.commitment-grid{grid-template-columns:1fr;gap:22px}.commitment-card>img{aspect-ratio:2}.card-copy{padding:20px 22px 24px}.card-copy h3{font-size:21px}.card-copy p{font-size:15px}.bread-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.bread-card img{aspect-ratio:1}.bread-card h3{font-size:16px;line-height:1.6}.bread-card>p:last-child{font-size:14px;line-height:1.8}.bread-card br{display:none}.category{font-size:9px;margin-top:11px}.section-heading{align-items:start}.small-note{display:none}.availability{font-size:11px}.seasonal{min-height:445px;border-radius:5px;margin-left:-5px;margin-right:-5px}.seasonal::after{background:linear-gradient(90deg,#26391ceb,#26391ca8 60%,#26391c35)}.seasonal-copy{padding:30px 25px}.seasonal h2{font-size:30px}.seasonal-copy>p:not(.section-label){font-size:13px}.season-badge{width:77px;height:77px;top:22px;right:19px;font-size:15px}.season-badge em{font-size:11px}.seasonal-details{font-size:13px}.story-photo img{aspect-ratio:1.2}.story-photo figcaption{font-size:20px}.story-copy{padding:0 4px}.information{grid-template-columns:1fr;gap:42px}.news{border-right:0;padding-right:0}.news summary{grid-template-columns:84px 1fr 14px;font-size:14px;padding:20px 0}.shop-content{grid-template-columns:1fr;gap:22px}.shop-content>img{height:auto;max-height:none;aspect-ratio:1.5}.shop h3{font-size:19px}address{font-size:15px}dl{font-size:14px;line-height:2}dt{width:70px}.shop .button{font-size:14px;padding:12px 24px}.instagram .section-heading{display:block}.instagram .text-link{margin-top:12px}.instagram-heading p{margin-top:5px;font-size:12px}.instagram-grid{grid-template-columns:repeat(3,1fr);gap:9px}.instagram{margin-bottom:40px}.footer{padding:38px 20px 24px}.footer-inner{flex-direction:column;align-items:flex-start;gap:26px}.footer nav{flex-wrap:wrap;gap:13px 25px}.footer-bottom{flex-direction:column;margin-top:25px;gap:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(min-width:701px){.header nav{display:flex!important}}

/* Typographic bakery emblem */
.brand-mark{font-size:34px;transform:none;letter-spacing:0;border-right:1px solid currentColor;padding-right:12px;line-height:1.1}
@media(max-width:700px){.brand-mark{font-size:29px;padding-right:10px}}
@media(scripting:none) and (max-width:700px){.header nav{display:grid;position:static;box-shadow:none}.header{position:relative;flex-wrap:wrap}.header nav{width:100%}.menu-toggle{display:none}.hero-inner{margin-top:35px}}
