@charset "UTF-8";
:root{--ink:#242725;--paper:#f8f6f0;--white:#fff;--peach:#ffd4a6;--blue:#3ab5ff;--line:#d9d9d0;--muted:#666b66;--max:1200px;--header:96px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:2;letter-spacing:.035em;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}main{outline:none}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #168ecf;outline-offset:5px}a:hover{color:#197fa5}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}p+p{margin-top:22px}h1,h2,h3{font-weight:700;letter-spacing:.06em;line-height:1.6}h1{font-size:clamp(36px,4.5vw,66px)}h2{font-size:clamp(28px,3vw,40px)}h3{font-size:21px}h2+p,h3+p{margin-top:24px}::selection{background:var(--peach)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;z-index:1000;padding:10px 24px;background:var(--ink);color:white}.skip-link:focus{top:12px;color:white}.container{width:calc(100% - 120px);max-width:var(--max);margin-inline:auto}.section{padding:112px 0}.eyebrow{font:600 11px/1.5 Arial,sans-serif;letter-spacing:.17em;margin-bottom:28px}.lead{font-size:17px;line-height:2.1;margin-top:36px}.note{font-size:13px;color:var(--muted);line-height:1.9}.text-link{margin-top:32px}.text-link a{display:inline-flex;gap:48px;align-items:center;padding:8px 0;border-bottom:1px solid var(--ink);font-weight:600;transition:gap .3s,color .3s}.text-link a::after{content:'↗';font-size:20px;line-height:1}.text-link a:hover{gap:58px}.button-link{margin-top:35px}.button-link a,.submit-button{display:inline-flex;align-items:center;justify-content:space-between;gap:46px;min-height:62px;padding:15px 30px;border:1px solid var(--ink);border-radius:3px;background:var(--ink);color:var(--white);font-weight:600;transition:background .3s,color .3s,border-color .3s}.button-link a::after{content:'↗';font-size:20px}.button-link a:hover,.submit-button:hover{background:var(--blue);border-color:var(--blue);color:#172328}.phone-link a{font:500 clamp(25px,3vw,36px)/1.5 Arial,sans-serif;letter-spacing:.025em}.mail-link a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:5px}.wordmark{font:800 42px/1 Arial,sans-serif;letter-spacing:-.075em;display:inline-block}.wordmark-dot{color:#a95c22;letter-spacing:-.06em}.site-header{height:var(--header);padding:0 40px;display:flex;align-items:center;justify-content:space-between;position:fixed;inset:0 0 auto;z-index:100;background:rgba(248,246,240,.95);border-bottom:1px solid rgba(36,39,37,.1);backdrop-filter:blur(12px);transition:transform .35s}.site-header.is-hidden{transform:translateY(-100%)}.site-header:focus-within{transform:none}#site-nav{display:flex;align-items:center;gap:32px;font-size:13px;line-height:1.5;font-weight:600}#site-nav>a{position:relative;padding-block:10px}#site-nav>a[aria-current=page]:not(.nav-contact)::after{position:absolute;bottom:0;left:0;content:'';height:2px;width:100%;background:var(--ink)}#site-nav .nav-contact{margin-left:12px;padding:14px 20px;border:1px solid var(--ink);border-radius:3px}.nav-contact span{margin-left:20px}.nav-contact:hover{background:var(--blue);color:var(--ink);border-color:var(--blue)}.menu-toggle{display:none}main{padding-top:var(--header)}
.hero{display:grid;grid-template-columns:49% 51%;min-height:710px;height:calc(100svh - var(--header));max-height:1000px;overflow:hidden;background:var(--paper);position:relative}.photo-film{height:100%;overflow:hidden;position:relative}.photo-film::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(248,246,240,.2),transparent 25%);pointer-events:none}.film-track{animation:photo-flow 54s linear infinite;will-change:transform}.film-set{display:grid;gap:14px;padding-bottom:14px}.film-set figure{overflow:hidden;aspect-ratio:1.8}.film-set img{height:100%;object-fit:cover}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:48px clamp(32px,5vw,80px);position:relative}.hero-title{font-size:clamp(40px,4.25vw,69px);line-height:1.65;letter-spacing:.08em;position:relative}.hero-description{font-size:16px;margin-top:30px;line-height:2.1}.peach-underline{background:linear-gradient(transparent 62%,var(--peach) 62%,var(--peach) 93%,transparent 93%);white-space:nowrap}.hero-link{margin-top:30px;font-size:13px}.hero-link a{display:inline-flex;gap:32px;align-items:center}.hero-link a::after{content:'↓';width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;transition:background .3s,transform .3s}.hero-link a:hover::after{background:var(--peach);transform:translateY(4px)}.photo-film:focus-within .film-track,.photo-film:hover .film-track{animation-play-state:paused}@keyframes photo-flow{to{transform:translateY(-50%)}}
.purpose-section{background:#fff}.purpose-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.purpose-copy{padding-top:34px;font-size:16px;line-height:2.4}.business-section{padding-bottom:80px}.cafe-feature{margin-top:60px}.feature-photo{aspect-ratio:2.35;overflow:hidden}.feature-photo img{height:100%;object-fit:cover;transition:transform .7s}.feature-photo:hover img{transform:scale(1.025)}.cafe-feature-content{display:grid;grid-template-columns:170px 1fr;gap:70px;padding:60px 65px;border-bottom:1px solid var(--line)}.yamafuku-logo{max-width:130px;width:100%;justify-self:center;align-self:center}.yamafuku-logo img{width:100%;height:auto;object-fit:contain}.feature-text{max-width:630px}.feature-lead{font-size:22px;font-weight:600;line-height:1.8}.feature-text .eyebrow{margin-bottom:16px}.feature-text h2{font-size:30px}.business-row{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;padding:68px 0;border-bottom:1px solid var(--line)}.business-row figure{aspect-ratio:1.45;overflow:hidden}.business-row img{height:100%;object-fit:cover;transition:transform .7s}.business-row:hover img{transform:scale(1.03)}.business-copy p:not(.eyebrow){max-width:500px}.about-section{background:var(--peach)}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.address-large{font-size:20px;font-weight:600}.contact-section{background:#fff}.contact-callout{padding:30px 0;max-width:900px}.contact-callout h2{font-size:44px}.contact-callout p:not(.eyebrow){max-width:650px}.site-footer{padding:70px 0 24px;background:var(--ink);color:#faf9f4;font-size:13px}.site-footer a:hover{color:var(--peach)}.footer-grid{display:grid;grid-template-columns:1fr 1.3fr .6fr;gap:50px}.footer-tagline{font-size:13px;margin-top:22px}.footer-links{display:grid;align-content:start;gap:8px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #51534e;margin-top:60px;padding-top:24px}.footer-bottom small{letter-spacing:.04em}.site-footer .wordmark-dot{color:var(--peach)}
.page-intro{padding-top:86px;padding-bottom:86px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.page-intro::after{content:'';position:absolute;right:-80px;bottom:-185px;width:440px;height:440px;border:1px solid #b4b4a5;border-radius:50%;pointer-events:none}.page-intro .container{position:relative;z-index:1}.page-intro .eyebrow{margin-bottom:25px}.wide-photo{aspect-ratio:2.3;overflow:hidden}.wide-photo img{height:100%;object-fit:cover}.brand-intro{display:grid;grid-template-columns:160px 1fr;gap:80px;padding:80px 80px 0}.brand-copy{max-width:680px}.menu-section{background:#fff}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 32px;margin-top:60px}.menu-item figure{aspect-ratio:1.45;overflow:hidden;margin-bottom:24px}.menu-item img{height:100%;object-fit:cover;transition:transform .7s}.menu-item:hover img{transform:scale(1.035)}.menu-item p{margin-top:15px}.menu-section .note{margin-top:45px}.visit-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.visit-layout>figure{aspect-ratio:1;overflow:hidden}.visit-layout>figure img{height:100%;object-fit:cover}.visit-copy .phone-link{margin-top:25px}.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split-layout>figure:not(.sakura-logo){aspect-ratio:1.15;overflow:hidden}.split-layout>figure img{height:100%;object-fit:cover}.offerings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}.offerings.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:60px}.offering{padding-top:30px;border-top:1px solid var(--ink)}.offering .eyebrow{margin-bottom:22px}.wholesale-note,.school-contact{margin-top:75px;border-top:1px solid var(--line);padding-top:60px}.coffee-more,.school-details,.company-profile{background:#fff}.sakura-logo{max-width:190px;margin-bottom:35px}.sakura-logo img{height:auto;object-fit:contain}.school-contact .phone-link{margin-top:24px}.company-table{margin:50px 0 0}.company-table>div{display:grid;grid-template-columns:170px 1fr;gap:35px;border-top:1px solid var(--line);padding:24px 0}.company-table>div:last-child{border-bottom:1px solid var(--line)}.company-table dt{font-weight:600}.company-table dd{margin:0;overflow-wrap:anywhere}.company-table a{text-decoration:underline;text-underline-offset:4px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.contact-aside h2{font-size:23px}.contact-aside .phone-link{margin-top:30px}.preview-notice{background:#eeece4;border-left:3px solid #9a744b;padding:20px 24px;font-size:14px;line-height:1.8;margin-bottom:32px}.preview-notice p{margin-top:5px}.form-field{margin-bottom:26px}.form-field>label{font-weight:600;display:flex;align-items:center;gap:14px;margin-bottom:8px}.form-field label span{font-size:10px;color:white;background:var(--ink);padding:1px 8px;border-radius:2px}.form-field label .optional{background:#e4e4df;color:var(--ink)}input:not([type=checkbox]),select,textarea{width:100%;padding:12px 15px;border:1px solid #b5b8ad;background:white;border-radius:3px;min-height:52px;line-height:1.6}textarea{resize:vertical}.consent{display:flex;align-items:flex-start;gap:13px;margin:32px 0}.consent input{accent-color:var(--ink);width:20px;height:20px;margin:5px 0 0;flex-shrink:0}.consent a{text-decoration:underline;text-underline-offset:4px}.submit-button:disabled{cursor:not-allowed;background:#d4d5ce;color:#63665f;border-color:#d4d5ce}.form-result{margin-top:22px;font-weight:600}.form-result:not(:empty){padding:18px;border:1px solid #809481;background:#edf4ee}.prose{max-width:800px;margin:auto}.prose h2{font-size:25px;margin-top:50px}.prose p{margin-top:18px}.privacy-body{background:#fff}.back-top{white-space:nowrap}.motion-toggle{position:absolute;bottom:18px;right:18px;z-index:2;border:1px solid rgba(255,255,255,.5);background:rgba(36,39,37,.8);color:white;border-radius:3px;font-size:11px;line-height:1.5;padding:8px 12px}.motion-toggle:hover{background:var(--ink)}.film-track.is-paused{animation-play-state:paused}.js-motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.js-motion .reveal.is-visible{opacity:1;transform:none}.hero-title{animation:hero-in .8s both}.hero-description{animation:hero-in .8s .12s both}@keyframes hero-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.hero-copy{padding-left:8vw}.hero-title{font-size:74px}}
@media(max-width:1100px){.site-header{padding-inline:28px}#site-nav{gap:20px;font-size:12px}#site-nav .nav-contact{margin-left:0;padding:12px 15px}.container{width:calc(100% - 80px)}.hero{min-height:640px}.hero-copy{padding-inline:38px}.cafe-feature-content{padding-inline:40px;gap:45px}.business-row,.split-layout,.purpose-layout,.about-layout{gap:45px}.brand-intro{padding-inline:35px;gap:55px}.contact-layout{gap:40px}.footer-grid{gap:30px}}
@media(max-width:850px){:root{--header:78px}.site-header{padding-inline:24px}.site-header .wordmark{font-size:35px}.menu-toggle{display:flex;align-items:center;gap:15px;background:none;border:0;padding:12px 0;font-size:11px;line-height:1}.menu-icon{position:relative;display:block;width:24px;height:14px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);transition:border .2s}.menu-icon::before{content:'';position:absolute;inset:5px 0 auto;border-top:1px solid var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] .menu-icon{border:0}.menu-toggle[aria-expanded=true] .menu-icon::before{top:6px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-icon::after{content:'';position:absolute;top:6px;left:0;right:0;border-top:1px solid var(--ink);transform:rotate(-45deg)}#site-nav{visibility:hidden;display:flex;flex-direction:column;align-items:stretch;gap:0;position:fixed;top:var(--header);left:0;right:0;height:calc(100dvh - var(--header));overflow-y:auto;padding:32px 32px 60px;background:var(--paper);opacity:0;transform:translateY(-12px);transition:opacity .25s,transform .25s,visibility .25s;font-size:18px;pointer-events:none}#site-nav.is-open{visibility:visible;opacity:1;transform:none;pointer-events:auto}#site-nav>a{padding:22px 0;border-bottom:1px solid var(--line)}#site-nav .nav-contact{padding:18px 20px;margin-top:25px;text-align:center}.hero{grid-template-columns:46% 54%;height:680px;min-height:0}.hero-title{font-size:37px}.hero-copy{padding-inline:28px}.hero .eyebrow{font-size:9px}.hero-description{font-size:14px}.film-set figure{aspect-ratio:.95}.section{padding:80px 0}.container{width:calc(100% - 56px)}.feature-photo{aspect-ratio:1.8}.cafe-feature-content{grid-template-columns:110px 1fr;gap:32px;padding:40px 0}.yamafuku-logo{max-width:100px}.feature-text h2{font-size:26px}.feature-lead{font-size:19px}.purpose-copy{font-size:14px}.business-row{gap:35px}.business-row h2,.purpose-layout h2{font-size:28px}.about-layout{gap:30px}.address-large{font-size:17px}.contact-callout h2{font-size:35px}.footer-grid{grid-template-columns:1fr 1.3fr}.footer-links{grid-column:2}.page-intro{padding:70px 0}.page-intro::after{opacity:.5}.split-layout{gap:35px}.split-layout h2{font-size:28px}.brand-intro{padding:55px 0 0;grid-template-columns:110px 1fr;gap:35px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 25px}.visit-layout{gap:32px}.visit-layout h2{font-size:28px}.contact-layout{grid-template-columns:1fr}.contact-aside{border-bottom:1px solid var(--line);padding-bottom:36px}.contact-form-wrap{max-width:650px}.offerings.three{gap:24px}.offerings h3{font-size:18px}}
@media(max-width:600px){:root{--header:72px}.container{width:calc(100% - 40px)}body{font-size:14px;letter-spacing:.02em}.site-header{padding-inline:20px}.section{padding:65px 0}.hero{display:flex;flex-direction:column-reverse;min-height:0;height:auto;max-height:none}.hero-copy{padding:42px 25px 38px}.hero-title{font-size:40px;line-height:1.65;letter-spacing:.05em}.hero-title br:nth-of-type(1){display:none}.hero-copy .eyebrow{font-size:10px;margin-bottom:20px}.hero-description{margin-top:22px;font-size:14px}.hero-link{margin-top:20px}.photo-film{height:285px;width:100%}.film-set{gap:10px;padding-bottom:10px}.film-set figure{aspect-ratio:1.65}.film-track{animation-duration:54s}.purpose-layout,.about-layout,.business-row,.split-layout,.visit-layout{grid-template-columns:1fr;gap:32px}.purpose-copy{padding:0;font-size:14px;line-height:2.3}.purpose-copy br{display:none}.eyebrow{font-size:10px;margin-bottom:22px}h1{font-size:36px}h2{font-size:28px}h3{font-size:19px}.lead{font-size:15px;margin-top:25px}.cafe-feature{margin-top:40px}.feature-photo{aspect-ratio:1.5}.cafe-feature-content{grid-template-columns:70px 1fr;gap:20px;padding:35px 0}.yamafuku-logo{max-width:70px}.feature-text h2{font-size:23px;letter-spacing:.015em}.feature-lead{font-size:17px}.feature-text .eyebrow{font-size:9px}.feature-text p:not(.eyebrow){line-height:2}.feature-text p br{display:none}.text-link{margin-top:22px}.text-link a{gap:25px;font-size:13px}.text-link a:hover{gap:32px}.button-link a{gap:30px;font-size:13px;padding-inline:22px}.business-row{padding:45px 0}.business-row figure{grid-row:1;aspect-ratio:1.6}.business-row .eyebrow{margin-bottom:18px}.business-row h2 br{display:none}.about-copy h2 br{display:none}.contact-callout h2{font-size:28px}.contact-callout{padding:0}.site-footer{padding-top:50px;font-size:12px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-links{grid-column:auto;display:flex;flex-wrap:wrap;gap:12px 22px}.footer-bottom{margin-top:35px;padding-top:20px;font-size:11px}.page-intro{padding:46px 0 54px}.page-intro h1{font-size:35px;line-height:1.7}.page-intro::after{width:260px;height:260px;bottom:-185px;right:-90px}.wide-photo{aspect-ratio:1.5}.brand-intro{grid-template-columns:70px 1fr;gap:25px;padding-top:40px}.brand-copy h2{font-size:24px}.brand-copy p{line-height:2}.menu-grid{gap:32px 18px;margin-top:38px}.menu-item figure{aspect-ratio:1.05;margin-bottom:18px}.menu-item h3{font-size:16px}.menu-item p{font-size:12px;line-height:1.9;margin-top:10px}.menu-section .note{margin-top:28px}.visit-layout>figure{grid-row:1;aspect-ratio:1.5}.visit-copy h2{font-size:27px}.split-layout>figure:not(.sakura-logo){aspect-ratio:1.5}.business-copy p{margin-top:20px}.offerings,.offerings.three{grid-template-columns:1fr;gap:35px}.offerings.three{margin-top:40px}.offering{padding-top:22px}.offering .eyebrow{margin-bottom:15px}.offering h3{font-size:21px}.wholesale-note,.school-contact{margin-top:50px;padding-top:40px}.sakura-logo{max-width:160px;margin-bottom:28px}.company-table{margin-top:32px}.company-table>div{grid-template-columns:1fr;gap:8px;padding:20px 0}.company-table dt{font-size:12px;color:var(--muted)}.contact-layout{gap:35px}.contact-aside h2{font-size:21px}.preview-notice{padding:16px 18px;font-size:13px}.submit-button{width:100%;padding-inline:22px}.consent{font-size:13px}.prose h2{font-size:22px;margin-top:36px}.prose .preview-notice{margin-top:0}.motion-toggle{bottom:12px;right:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}.film-track{transform:none!important}.motion-toggle{display:none}}
@media(max-width:600px){.hero-title br:nth-of-type(1){display:initial}}
/* WordPress editor: the same page layout, without hiding unfinished scroll reveals. */
.editor-styles-wrapper{color:var(--ink);background:var(--paper)}.editor-styles-wrapper .reveal{opacity:1;transform:none}.editor-styles-wrapper .film-track{animation:none}.editor-styles-wrapper .hero-title,.editor-styles-wrapper .hero-description{animation:none}.editor-styles-wrapper .wp-block{max-width:none}.admin-bar .site-header{top:32px}.wpcf7-form .form-field>p{margin:0}.wpcf7-form .wpcf7-form-control-wrap{display:block}.wpcf7-form .wpcf7-acceptance input{width:20px;height:20px}.wpcf7-form .wpcf7-acceptance label{display:flex;gap:12px}.wpcf7-form .wpcf7-list-item{margin:0}.wpcf7-form input[type=submit]{width:auto}.wpcf7-form .wpcf7-not-valid-tip{font-size:13px;margin-top:5px}.wpcf7-form .wpcf7-response-output{margin:24px 0!important}
@media(max-width:782px){.admin-bar .site-header{top:46px}}

/* Supplied guffaw artwork: trim only its surrounding whitespace in the layout. */
.brand-logo-link{display:block;position:relative;flex-shrink:0;width:152px;height:58px;overflow:hidden}.brand-logo-link .brand-logo{position:absolute;width:190px;max-width:none;height:auto;left:-19px;top:-16px;mix-blend-mode:multiply}.site-footer .brand-logo-link{width:176px;height:72px;background:var(--paper);border-radius:3px}.site-footer .brand-logo{width:200px;left:-12px;top:-11px}@media(max-width:850px){.site-header .brand-logo-link{width:128px;height:48px}.site-header .brand-logo{width:160px;left:-16px;top:-14px}}

/* Mobile editorial rhythm; content remains readable in older browsers. */
.reading-break{display:none}.reading-unit{display:inline-block;max-width:100%}
@media(max-width:600px){main h1,main h2,main h3{word-break:auto-phrase;text-wrap:balance;line-break:strict}main p{word-break:auto-phrase;text-wrap:pretty;line-break:strict}main .reading-break{display:initial}}
@media(max-width:600px){.business-row h2 br,.about-copy h2 br,.purpose-copy br,.feature-text p br{display:initial}.hero-title{font-size:clamp(32px,10vw,40px)}.page-intro h1{font-size:clamp(29px,8.2vw,35px)}}

@media(max-width:400px){.menu-grid,.brand-intro{grid-template-columns:1fr}.brand-intro{gap:24px}.menu-item p{font-size:14px}.menu-item h3{font-size:19px}.menu-item figure{aspect-ratio:1.5}.cafe-feature-content{grid-template-columns:1fr;gap:24px}}

/* Brand mark in the purpose section. */
.purpose-mark{width:min(100%,340px);margin:0;align-self:center;justify-self:center}.purpose-mark img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}
@media(max-width:850px){.purpose-mark{width:min(100%,260px)}}
@media(max-width:600px){.purpose-mark{width:180px;margin:0 auto 8px}}

/* Keep the requested phrases together at all screen sizes. */
.reading-keep{display:inline-block;white-space:nowrap;max-width:none}
@media(max-width:600px){.menu-grid{grid-template-columns:1fr}.menu-item figure{aspect-ratio:1.5}.menu-item p{font-size:14px}.menu-item h3{font-size:19px}}

/* v58: Let body copy flow on narrow screens; retain deliberate headline breaks. */
@media(max-width:600px){
  .purpose-copy p br,
  .business-copy p:not(.feature-lead) br,
  .feature-text p:not(.feature-lead):not(.eyebrow) br,
  .about-copy p:not(.address-large) br,
  .about-address p:not(.address-large) br,
  .marketing-final p.lead br,
  .digital-panel p.note br{display:none}
  .marketing-final .container h2{font-size:clamp(22px,6.875vw,27px)}
  .page-id-8 .business-copy h2{font-size:clamp(22px,6.875vw,27px)}
  .page-id-8 .business-copy h2 br:first-of-type{display:none}
}

/* v59: Service illustrations, photo balance and restrained motion. */
.hero-consult.visual-hero{padding:20px 24px 24px;background:#f6f3eb;border-top:0;border-radius:12px}
.hero-consult.visual-hero h2{margin-top:18px;font-size:21px}
.hero-consult.visual-hero .note{margin-top:12px}
.service-overview{margin:0;overflow:hidden;border-radius:10px}
.service-overview img{display:block;width:100%;height:auto}
.digital-panel .service-overview{aspect-ratio:auto;margin:0 0 22px;border-radius:10px}
.digital-panel .service-overview img{height:auto}
.digital-panel{min-width:0}
.example-paper.visual-example{padding:26px;background:#fff;border-radius:12px}
.example-paper.visual-example h3{font-size:20px;line-height:1.7}
.service-screen{margin:22px 0 0;overflow:hidden}
.service-screen img{display:block;width:100%;height:auto;border-radius:8px}
.service-screen figcaption{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.8}
.business-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:14px;min-width:0;align-self:center}
.business-mosaic figure{margin:0;position:relative;aspect-ratio:1.38!important;overflow:hidden;border-radius:6px}
.business-mosaic figure.mosaic-cafe{grid-column:1/-1;aspect-ratio:2.15!important}
.business-mosaic img{width:100%;height:100%;object-fit:cover;display:block}
.business-mosaic figcaption{position:absolute;inset:auto 0 0;padding:24px 14px 12px;background:linear-gradient(transparent,rgba(24,33,26,.72));font-size:13px;line-height:1.6;color:white;letter-spacing:.04em}
.about-marketing .business-mosaic figure{aspect-ratio:1.38!important}
.about-marketing .business-mosaic figure.mosaic-cafe{aspect-ratio:2.15!important}
.offering-photo{margin:0 0 25px;aspect-ratio:1.8;overflow:hidden;border-radius:6px}
.offering-photo img{height:100%;width:100%;display:block;object-fit:cover}
.school-story .split-layout>figure:not(.sakura-logo){aspect-ratio:1.5}
.school-story .split-layout>figure img{object-position:50% 42%}
.menu-item figure:has(img[src*="burger"]),.menu-item figure:has(img[src*="sweets"]){aspect-ratio:1.2}
.menu-item img[src*="burger"]{object-position:50% 55%}
.menu-item img[src*="sweets"]{object-position:50% 52%}
.film-track{animation-duration:72s}
@media(prefers-reduced-motion:no-preference){
  .js-motion .reveal,.js-motion .visual-reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease-out,transform .6s cubic-bezier(.2,.65,.3,1)}
  .js-motion .reveal.is-visible,.js-motion .visual-reveal.is-visible{opacity:1;transform:none}
  .visual-example img{transition:transform .6s ease}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.visual-example:hover img{transform:scale(1.018)}}
@media(prefers-reduced-motion:reduce){.js-motion .visual-reveal{opacity:1;transform:none}.visual-example img{transform:none}}
@media(max-width:600px){
  .hero-consult.visual-hero{padding:16px 18px 22px}
  .example-paper.visual-example{padding:18px}
  .service-screen{margin-top:18px}
  .service-screen figcaption{font-size:13px}
  .business-mosaic{gap:10px;grid-row:1}
  .business-mosaic figcaption{font-size:12px;padding:22px 10px 9px}
  .offering-photo{aspect-ratio:1.8;margin-bottom:20px}
  .digital-panel .service-overview{margin-bottom:20px}
  .school-story .split-layout>figure:not(.sakura-logo){aspect-ratio:1.5}
  .menu-item figure:has(img[src*="burger"]),.menu-item figure:has(img[src*="sweets"]){aspect-ratio:1.05}
}

/* Keep the requested sentence break at every screen width. */
.purpose-copy p br.copy-break-force{display:initial}

/* Real stock photos and supplied coffee assets: keep full chart/product content visible. */
.split-layout>figure.taste-map-figure{aspect-ratio:auto!important;overflow:visible}
.taste-map-figure a{display:block;border-radius:6px;overflow:hidden}
.taste-map-figure img{display:block;width:100%;height:auto!important;object-fit:contain}
.taste-map-figure figcaption{font-size:12px;line-height:1.9;color:var(--muted);margin-top:12px}
.offering-photo.product-photo{aspect-ratio:1.15;background:#faf7f2}
.offering-photo.product-photo img{object-fit:contain}
.business-mosaic img[src*="19723754"]{object-position:50% 62%}
.wide-photo img[src*="7658114"]{object-position:50% 57%}
.digital-panel .service-overview:has(img[src*="11435017"]){background:transparent;padding:0;overflow:hidden;border-radius:6px}
.digital-panel .service-overview img[src*="11435017"]{display:block;aspect-ratio:1.5;object-fit:cover}

/* The four business photos can be browsed with native wheel, touch and keyboard input. */
.film-track{animation:none!important;transform:none!important;will-change:auto}
.film-viewport{height:100%;overflow-y:auto;overflow-x:hidden;scroll-behavior:auto;scrollbar-width:thin;scrollbar-color:#a99a87 transparent;touch-action:pan-y}
.film-viewport:focus-visible{outline:3px solid #b58e58;outline-offset:-3px}
.film-set[hidden]{display:none!important}
.photo-film .film-set figure{position:relative;margin:0}
.photo-film .film-set figcaption{position:absolute;inset:auto 0 0;margin:0;padding:30px 18px 12px;background:linear-gradient(transparent,rgba(25,31,26,.72));color:#fff;font-size:15px;line-height:1.7;letter-spacing:.06em;display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.photo-film .film-set figcaption span{font-size:10px;letter-spacing:.04em}
.photo-scroll-guide{font-size:12px;line-height:1.9;color:var(--muted);margin-top:18px}
.photo-film::after{display:none}
.hero-title br{display:initial!important}
@media(max-width:600px){.photo-film .film-set figcaption{font-size:14px;padding:28px 14px 10px}.photo-scroll-guide{font-size:11px;margin-top:14px}}

/* Keep the school diagram at its intended size and preserve fine coffee imagery. */
.school-learning-diagram{max-width:960px;margin:36px auto 0}
.school-learning-diagram img{width:100%;height:auto;display:block;border-radius:8px}
.school-learning-diagram figcaption{font-size:12px;color:var(--muted);line-height:1.9;margin-top:12px}
.feature-photo img[src*="8937364"],.menu-item img[src*="8937364"]{object-position:50% 56%}
.business-row img[src*="8004552"]{object-position:50% 40%}
.offering-photo img[src*="8351183"]{object-position:50% 51%}

/* Latest headline and cup photographs; preserve the mill/bean images. */
.wide-photo:has(img[src*="8351183"]){aspect-ratio:1.7}
.wide-photo img[src*="8351183"]{object-position:50% 53%}
.visit-layout>figure:has(img[src*="13167702"]){aspect-ratio:1.3}
.visit-layout img[src*="13167702"]{object-position:50% 54%}
.business-mosaic img[src*="10551979"]{object-position:50% 52%}
.purpose-mark{max-width:320px}
.taste-map-figure{width:100%;max-width:540px;justify-self:center}
@media(max-width:380px){.hero-title{font-size:34px}}
