/* Strong section contrast; original brand artwork stays unchanged. */
:root{--ink:#111612;--paper:#ffffff;--muted:#48534b;--line:#cbd3cd;--lime:#d4f75b}
header,.hero{background:#000000;color:#fff}
header{border-bottom-color:#364237}
nav a{padding:10px 0;border-bottom:1px solid transparent;transition:border-color .2s,color .2s}
nav a:hover{color:var(--lime);border-bottom-color:var(--lime);opacity:1}
.hero .eyebrow{color:var(--lime)}
.hero h1{font-weight:600}.hero h1 .serif{color:var(--lime);font-weight:500}
.hero .intro{color:#e1e7df;font-size:15px}
@media(max-width:760px){.hero .intro{font-size:14px}}
.hero-top,.hero-bottom{color:#b9c5bb}
.hero-bottom{border-top-color:#465344}
.hero .round-link{color:var(--lime);font-weight:600}
.round-link span{background:var(--lime);border-color:var(--lime);color:#14200f}
.orbit{border-color:#697b4e;box-shadow:none}.orbit.two{border-color:#d4f75b}.orbit.three{border-color:#3c613c}
.business{background:#fff}
.section-heading{padding-bottom:38px;border-bottom:1px solid #bbc7bf}
.section-heading>.eyebrow{color:#205b3c;font-weight:700}
.section-heading h2{font-weight:600}
.restaurant{background:#fff8f0;border:1px solid #e1d3c7}
.restaurant-art{background:#e6001a;color:#fff7ed}
.restaurant-art>span{font-weight:600}
.plate{background:#fff9eb;border-color:#ddc7ae;box-shadow:0 0 0 16px #b0373e,0 0 0 17px #d47974,14px 26px 35px #430c252e}
.restaurant-copy .eyebrow{color:#96222b;font-weight:700}
.restaurant-copy h3{color:var(--ink);font-weight:600}
.restaurant-copy h3 span{color:#4c423b;font-weight:400}
.restaurant-copy .text-link{color:#8a1d25;border-bottom:2px solid #9c2932;font-weight:600}
.stores>a{border-color:#d3b8aa;color:#3e302c}
.stores>a span{color:#9c2932}
.business-grid{gap:65px 38px}
.digital.official-panel{background:#111111;border:0;outline:0;box-shadow:none}
.card-art.oyasai-art{background:#e0f09a;border:0;outline:0;box-shadow:none}
.business-card .card-copy{padding:26px 0 0}
.business-card:first-child .eyebrow{color:#222222;font-weight:700}
.business-card:last-child .eyebrow{color:#235c36;font-weight:700}
.card-copy h3{font-weight:600}
.card-copy .text-link{color:#222222;border-bottom:1px solid #aeb3a4;font-weight:600}
.status{background:#eef3e6;color:#435634;padding:8px 12px;border:1px solid #b9caa6}
.company{background:#000000;color:#fff;border:0;outline:0;box-shadow:none}
.company .eyebrow{color:#dcf886;font-weight:600}
.company h2{color:#fff;font-weight:600}
.company-tagline{color:#f0f6e7}
.company .draft-note{color:#bed1c4}
.company dl>div{border-color:#3b3b3b}
.company dt{color:#c9c9c9}
.company dd{color:#fff;font-weight:500}
footer{background:#080d0a;color:#dce6dd;border-top:1px solid #365543}
footer>a:last-child{color:#d4f75b}
a:focus-visible{outline:3px solid #568b27;outline-offset:5px}
header a:focus-visible,.hero a:focus-visible,footer a:focus-visible{outline-color:#d4f75b}
@media(max-width:760px){.section-heading{padding-bottom:28px}.restaurant-art{min-height:370px}.plate{box-shadow:0 0 0 12px #b0373e,0 0 0 13px #d47974,10px 18px 24px #430c252e}}
@media(prefers-reduced-motion:reduce){nav a{transition:none}}

/* Fresh, undecorated brand backgrounds; retain the previous 3:2 dimensions. */
.brand-background{display:block;width:100%;height:auto;aspect-ratio:3/2;margin:0;padding:0;border:0;border-radius:0;outline:0;box-shadow:none;background-image:none}
.brand-background-mediatect{background-color:#000000}
.brand-background-oyasai{background-color:#e0f09a}

/* Match the restaurant artwork to the two brand panels. */
.restaurant{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:start;border:0;background:transparent}
.restaurant-art{width:100%;height:auto;min-height:0;aspect-ratio:3/2;padding:18px;justify-content:space-between}
.restaurant-art>span{font-size:8px;letter-spacing:1.6px;line-height:1.4}
.restaurant-art>.capricciosa-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:42%;height:auto;border:0;outline:0;box-shadow:none}
.restaurant-art>span:last-child{margin-top:auto}
.restaurant-copy{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:22px 26px;background:transparent}
.restaurant-copy>.eyebrow{margin:0 0 8px}
.restaurant-copy h3{font-size:28px;line-height:1.25;margin:0 0 12px}
.restaurant-copy h3 span{margin-top:6px}
.restaurant-copy h4{font-size:20px;line-height:1.5;margin:12px 0}
.restaurant-copy h4 br{display:none}
.restaurant-copy>p:not(.eyebrow){margin:0;line-height:1.85}
.restaurant-copy .stores{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-top:18px}
.restaurant-copy .stores>.eyebrow{grid-column:1/-1;margin:0 0 4px}
.restaurant-copy .stores>a{gap:8px;padding:10px 0;line-height:1.6}
@media(max-width:1000px){.restaurant-copy{padding:20px}.restaurant-copy h3{font-size:25px}.restaurant-copy .stores{grid-template-columns:1fr}}
@media(max-width:760px){.restaurant{grid-template-columns:1fr;gap:0}.restaurant-art{min-height:0}.restaurant-copy{padding:26px 8%}.restaurant-copy .stores{grid-template-columns:1fr 1fr}}
@media(max-width:400px){.restaurant-copy .stores{grid-template-columns:1fr}.restaurant-art{padding:14px}.restaurant-art>span{font-size:7px}}
/* Restore supplied artwork inside the new undecorated backgrounds. */
.brand-background{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.brand-background-oyasai>img{position:absolute;inset:0;display:block;width:100%;height:100%;padding:clamp(20px,3vw,38px);object-fit:contain}

.brand-background-mediatect .logo-mediatect{width:min(84%,348px)}

/* Desktop company columns align with the business grid above. */
@media(min-width:761px){.company{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:38px;align-items:center}.company>div{text-align:center}.company>div>.eyebrow{margin-top:0}.company .draft-note{margin-left:auto;margin-right:auto}.company>dl{min-width:0;width:100%}}

/* Close space left by the removed hero label; company content re-centers naturally. */
.hero{min-height:700px}.hero-copy{padding-bottom:60px}.hero-art{top:60px}
@media(max-width:760px){.hero{min-height:810px}.hero-copy{padding-bottom:300px}.hero-art{top:440px}}

/* Keep short mobile headings from leaving a lone ending on the next line. */
@media(max-width:760px){.restaurant-copy h4 br{display:initial}}
@media(max-width:400px){.hero h1{font-size:clamp(30px,9.6vw,38px)}}

/* Compact company section while retaining readable table spacing. */
.company.section{padding-top:70px;padding-bottom:70px}
@media(max-width:760px){.company.section{padding-top:48px;padding-bottom:48px}}

/* Use the supplied VIM logo for the company heading. */
.company .company-logo-heading{display:flex;justify-content:center;line-height:1}
.company-logo-heading .logo-vim{width:clamp(125px,12.5vw,167px)}
.company-identity{text-align:center}.company-identity .company-tagline{text-align:center}

/* Retain copyright within the company section without a separate footer band. */
.company-copyright{grid-column:1/-1;text-align:center;margin:36px 0 -38px;color:#a8aca9;line-height:1.6}
.company-copyright small{font-size:10px;letter-spacing:.7px}
@media(max-width:760px){.company-copyright{margin:0 0 -18px}}
@media(min-width:761px){.company{row-gap:0}}

/* Copyright and back-to-top share the company background. */
.company-bottom{grid-column:1/-1;position:relative;margin:36px 0 -38px;display:flex;align-items:center;justify-content:center;min-height:26px}
.company-bottom .company-copyright{margin:0;line-height:1.6}
.company-back-top{position:absolute;right:0;font-size:10px;letter-spacing:.7px;color:#d4f75b;padding:8px 0}
@media(max-width:760px){.company-bottom{margin:0 0 -18px;justify-content:space-between;gap:16px}.company-back-top{position:static;white-space:nowrap}.company-copyright small,.company-back-top{font-size:9px}}