/* Mizokawa Konpou - Main styles (A bright version) */
:root{
  --b-charcoal:#0f1419; --b-charcoal-2:#1c2229; --b-charcoal-3:#2a3138;
  --b-orange:#ff5722; --b-orange-dark:#d84315; --b-yellow:#ffc933;
  --b-white:#fff; --b-cream:#f8f6f3; --b-cream-2:#ecebe7;
  --b-gray:#6b7280; --b-gray-light:#d8d8d4;
  --b-font-display:'Noto Sans JP',sans-serif; --b-font-body:'Noto Sans JP',sans-serif;
  --b-font-eng:'Oswald','Inter',sans-serif;
  --b-container:1280px; --b-gutter:32px; --b-header-h:88px;
  --b-ease:cubic-bezier(0.22,0.61,0.36,1); --b-dur:0.4s;
}
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{margin:0;font-family:var(--b-font-body);font-size:16px;line-height:1.8;color:var(--b-charcoal);background:var(--b-cream);-webkit-font-smoothing:antialiased;font-feature-settings:'palt';}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;transition:color var(--b-dur) var(--b-ease);}
h1,h2,h3,h4{margin:0;line-height:1.3;font-weight:700;}
p{margin:0 0 1.4em;}
ul{padding-left:1.4em;}

/* HEADER */
.b-header{position:sticky;top:0;z-index:100;background:rgba(15,20,25,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);}
.b-header__inner{display:flex;align-items:center;justify-content:space-between;max-width:var(--b-container);margin:0 auto;padding:0 var(--b-gutter);height:var(--b-header-h);}
.b-logo{display:flex;align-items:center;gap:14px;}
.b-logo__emblem{height:46px;width:auto;background:#fff;padding:6px 9px;border-radius:3px;display:block;}
.b-logo__text{display:flex;flex-direction:column;gap:2px;}
.b-logo__name{color:#fff;font-weight:700;font-size:.95rem;letter-spacing:.05em;}
.b-logo__eng{color:var(--b-gray-light);font-family:var(--b-font-eng);font-size:.65rem;letter-spacing:.25em;}
.b-nav__list{display:flex;gap:2.5rem;list-style:none;margin:0;padding:0;align-items:center;}
.b-nav__list a{color:#fff;font-size:.92rem;font-weight:500;letter-spacing:.04em;padding:.4em 0;position:relative;}
.b-nav__list a::after{content:'';position:absolute;left:0;bottom:-4px;width:0;height:2px;background:var(--b-orange);transition:width var(--b-dur) var(--b-ease);}
.b-nav__list a:hover::after,.b-nav__list .current a::after{width:100%;}
.b-header__cta{background:var(--b-orange);color:#fff;padding:.85rem 1.5rem;font-weight:700;font-size:.9rem;letter-spacing:.05em;display:inline-flex;align-items:center;gap:8px;}
.b-header__cta:hover{background:var(--b-orange-dark);}
.b-header__cta::after{content:'→';font-size:1.05em;}
.b-menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px;}
.b-menu-toggle span{display:block;width:26px;height:2px;background:#fff;transition:.3s;}

/* HERO (A = BRIGHT) */
.b-hero{position:relative;height:calc(100vh - var(--b-header-h));min-height:640px;overflow:hidden;background:var(--b-charcoal);}
.b-hero__slides{position:absolute;inset:0;}
.b-hero__slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s var(--b-ease);}
.b-hero__slide.is-active{opacity:1;}
/* BRIGHT overlay */
.b-hero__slide::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,20,25,.55) 0%,rgba(15,20,25,.2) 50%,rgba(15,20,25,.1) 100%),linear-gradient(180deg,rgba(15,20,25,.05) 0%,rgba(15,20,25,.2) 100%);}
.b-hero__caption{position:absolute;left:var(--b-gutter);bottom:110px;max-width:760px;color:#fff;z-index:3;padding-left:24px;border-left:4px solid var(--b-orange);text-shadow:0 2px 14px rgba(0,0,0,.55);}
.b-hero__num{font-family:var(--b-font-eng);font-size:.95rem;letter-spacing:.4em;color:var(--b-orange);margin:0 0 1rem;font-weight:500;text-shadow:none;}
.b-hero__title{font-family:var(--b-font-display);font-weight:900;font-size:clamp(2rem,6vw,4.5rem);line-height:1.2;letter-spacing:-.01em;margin:0 0 1rem;}
.b-hero__title em{font-style:normal;color:var(--b-orange);}
.b-hero__eng{font-family:var(--b-font-eng);font-weight:500;font-size:clamp(1rem,1.5vw,1.4rem);letter-spacing:.25em;text-transform:uppercase;color:rgba(255,255,255,.9);}
.b-hero__controls{position:absolute;left:var(--b-gutter);bottom:36px;display:flex;align-items:center;gap:1.5rem;z-index:3;}
.b-hero__dots{display:flex;gap:12px;}
.b-hero__dot{width:36px;height:3px;background:rgba(255,255,255,.35);cursor:pointer;transition:background var(--b-dur) var(--b-ease);border:0;padding:0;}
.b-hero__dot.is-active{background:var(--b-orange);}
.b-hero__arrows{display:flex;gap:6px;margin-left:1rem;}
.b-hero__arrow{width:44px;height:44px;background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:.3s;}
.b-hero__arrow:hover{background:var(--b-orange);border-color:var(--b-orange);}
.b-hero__counter{position:absolute;right:var(--b-gutter);bottom:36px;color:rgba(255,255,255,.9);display:flex;align-items:baseline;gap:4px;z-index:3;}
.b-hero__counter-current{font-family:var(--b-font-eng);font-size:2.6rem;font-weight:600;color:var(--b-orange);line-height:1;}
.b-hero__counter-divider{color:rgba(255,255,255,.5);margin:0 .4em;font-family:var(--b-font-eng);font-size:1.1rem;}
.b-hero__counter-total{font-family:var(--b-font-eng);font-size:1.1rem;color:rgba(255,255,255,.7);}
.b-hero__scroll{position:absolute;right:var(--b-gutter);top:50%;transform:translateY(-50%) rotate(90deg);transform-origin:right center;color:rgba(255,255,255,.7);font-family:var(--b-font-eng);font-size:.8rem;letter-spacing:.4em;z-index:2;}

/* STATS */
.b-stats{background:var(--b-charcoal-2);color:#fff;padding:2.5rem 0;}
.b-stats__inner{max-width:var(--b-container);margin:0 auto;padding:0 var(--b-gutter);display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;}
.b-stat{border-left:3px solid var(--b-orange);padding-left:1.5rem;}
.b-stat__num{font-family:var(--b-font-eng);font-weight:600;font-size:2.6rem;line-height:1;color:#fff;}
.b-stat__num small{font-family:var(--b-font-display);font-size:1.1rem;margin-left:.3rem;color:var(--b-orange);font-weight:500;}
.b-stat__label{margin-top:.6rem;color:var(--b-gray-light);font-size:.85rem;letter-spacing:.05em;}

/* SECTION */
.b-section{padding:7rem 0;background:var(--b-cream);}
.b-section--alt{background:var(--b-cream-2);}
.b-section__inner{max-width:var(--b-container);margin:0 auto;padding:0 var(--b-gutter);}
.b-section__header{margin-bottom:3.5rem;}
.b-section__eng{font-family:var(--b-font-eng);font-size:.9rem;letter-spacing:.35em;text-transform:uppercase;color:var(--b-orange);font-weight:600;margin:0 0 .6rem;display:inline-block;padding-left:50px;position:relative;}
.b-section__eng::before{content:'';position:absolute;left:0;top:50%;width:36px;height:2px;background:var(--b-orange);}
.b-section__title{font-family:var(--b-font-display);font-weight:900;font-size:clamp(2rem,4vw,3rem);line-height:1.2;color:var(--b-charcoal);margin:0 0 1rem;}
.b-section__lead{color:var(--b-gray);font-size:1rem;margin:0;max-width:720px;}

/* GREETING */
.b-greeting__layout{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;}
.b-greeting__image{position:relative;overflow:hidden;}
.b-greeting__image img{width:100%;aspect-ratio:4/5;object-fit:cover;}
.b-greeting__image::after{content:'';position:absolute;bottom:-30px;left:-30px;width:120px;height:120px;background:var(--b-orange);z-index:-1;}
.b-greeting__body p{font-size:1rem;line-height:2;color:var(--b-charcoal-2);}
.b-greeting__signature{margin-top:2.5rem!important;padding-top:1.5rem;border-top:1px solid var(--b-gray-light);color:var(--b-charcoal);font-weight:700;font-size:1.1rem;}

/* SERVICE */
.b-service__row{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;margin-bottom:6rem;}
.b-service__row:last-child{margin-bottom:0;}
.b-service__row--reverse{direction:rtl;}
.b-service__row--reverse>*{direction:ltr;}
.b-service__image{aspect-ratio:4/3;overflow:hidden;background-size:cover;background-position:center;}
.b-service__num{font-family:var(--b-font-eng);font-weight:600;font-size:.95rem;letter-spacing:.3em;color:var(--b-orange);display:flex;align-items:center;gap:.8rem;}
.b-service__num::before{content:'';width:30px;height:1px;background:var(--b-orange);}
.b-service__title{font-family:var(--b-font-display);font-weight:900;font-size:1.9rem;color:var(--b-charcoal);margin:1rem 0 1.5rem;}
.b-service__desc{color:var(--b-gray);font-size:.98rem;line-height:2;}
.b-service__more{display:inline-flex;align-items:center;gap:.7rem;color:var(--b-orange);font-weight:700;font-size:.9rem;letter-spacing:.1em;margin-top:1.5rem;padding-bottom:4px;border-bottom:2px solid var(--b-orange);}

/* FLEET */
.b-fleet__layout{display:grid;grid-template-columns:1fr 1.4fr;gap:4rem;align-items:start;}
.b-fleet__hero{color:var(--b-charcoal);}
.b-fleet__hero-num{font-family:var(--b-font-eng);font-size:11rem;line-height:.9;font-weight:700;color:var(--b-orange);letter-spacing:-.04em;}
.b-fleet__hero-num small{font-family:var(--b-font-display);font-size:1.6rem;color:var(--b-charcoal);margin-left:.3em;font-weight:700;}
.b-fleet__hero-label{font-family:var(--b-font-eng);font-size:.95rem;letter-spacing:.4em;color:var(--b-gray);margin-top:.5rem;}
.b-fleet__hero-jp{font-weight:700;font-size:1.1rem;margin-top:1rem;color:var(--b-charcoal);}
.b-fleet__slider{margin-top:2.5rem;position:relative;}
.b-fleet__slider-track{position:relative;aspect-ratio:4/3;overflow:hidden;background:#000;}
.b-fleet__slider-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .6s var(--b-ease);}
.b-fleet__slider-slide.is-active{opacity:1;}
.b-fleet__slider-dots{display:flex;gap:8px;margin-top:1rem;justify-content:center;}
.b-fleet__slider-dot{width:28px;height:3px;background:var(--b-gray-light);cursor:pointer;border:0;padding:0;}
.b-fleet__slider-dot.is-active{background:var(--b-orange);}
.b-fleet__list{list-style:none;margin:0;padding:0;}
.b-fleet__item{display:grid;grid-template-columns:60px 1fr auto;gap:1.5rem;align-items:center;padding:1.1rem 0;border-bottom:1px solid var(--b-gray-light);}
.b-fleet__item:first-child{border-top:2px solid var(--b-charcoal);}
.b-fleet__cat{font-family:var(--b-font-eng);color:var(--b-orange);font-weight:600;font-size:.85rem;letter-spacing:.1em;}
.b-fleet__name{color:var(--b-charcoal);font-weight:500;font-size:1rem;}
.b-fleet__count{font-family:var(--b-font-eng);font-weight:600;font-size:1.4rem;color:var(--b-charcoal);}
.b-fleet__count small{font-family:var(--b-font-display);font-size:.8rem;color:var(--b-gray);margin-left:.3em;font-weight:400;}

/* SAFETY */
.b-safety{background:var(--b-charcoal);color:#fff;padding:7rem 0;}
.b-safety__inner{max-width:var(--b-container);margin:0 auto;padding:0 var(--b-gutter);}
.b-safety__layout{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;}
.b-safety__body p{color:rgba(255,255,255,.78);font-size:1rem;line-height:2;}
.b-safety__grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.b-safety__figure{margin:0;overflow:hidden;position:relative;}
.b-safety__figure img{width:100%;aspect-ratio:1/1;object-fit:cover;}
.b-safety__figure:first-child{grid-column:1/-1;}
.b-safety__figure:first-child img{aspect-ratio:16/9;}
.b-safety__figure figcaption{position:absolute;left:12px;bottom:12px;background:var(--b-orange);color:#fff;padding:.3rem .9rem;font-size:.78rem;font-weight:700;letter-spacing:.05em;}

/* COMPANY */
.b-company__layout{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;align-items:start;}
.b-company__intro{position:sticky;top:120px;}
.b-company__table{width:100%;border-collapse:collapse;}
.b-company__table th,.b-company__table td{text-align:left;padding:1.1rem 0;border-bottom:1px solid var(--b-gray-light);}
.b-company__table th{width:30%;color:var(--b-orange);font-weight:700;font-size:.92rem;letter-spacing:.05em;vertical-align:top;}
.b-company__table td{color:var(--b-charcoal);font-size:.98rem;}
.b-company__table tr:first-child th,.b-company__table tr:first-child td{border-top:2px solid var(--b-charcoal);}

/* NEWS */
.b-news__layout{display:grid;grid-template-columns:280px 1fr;gap:4rem;align-items:start;}
.b-news__list{list-style:none;margin:0;padding:0;}
.b-news__item{display:grid;grid-template-columns:110px 110px 1fr;gap:1.5rem;padding:1.2rem 0;align-items:center;border-bottom:1px solid var(--b-gray-light);transition:.3s;}
.b-news__item:first-child{border-top:1px solid var(--b-gray-light);}
.b-news__item:hover{padding-left:1rem;background:var(--b-cream-2);}
.b-news__date{font-family:var(--b-font-eng);font-size:1.05rem;color:var(--b-gray);font-weight:500;}
.b-news__cat{display:inline-block;padding:.25rem .9rem;background:var(--b-charcoal);color:#fff;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-align:center;}
.b-news__cat--orange{background:var(--b-orange);}
.b-news__title{font-weight:500;color:var(--b-charcoal);}

/* CTA */
.b-cta{background:var(--b-orange);color:#fff;padding:5rem 0;position:relative;overflow:hidden;}
.b-cta::before{content:'CONTACT';position:absolute;right:-2%;bottom:-40px;font-family:var(--b-font-eng);font-size:18rem;font-weight:700;color:rgba(255,255,255,.08);line-height:1;}
.b-cta__inner{position:relative;max-width:var(--b-container);margin:0 auto;padding:0 var(--b-gutter);display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center;}
.b-cta__title{font-family:var(--b-font-display);font-weight:900;font-size:clamp(1.8rem,3.5vw,2.8rem);color:#fff;margin:0 0 .6rem;}
.b-cta__lead{margin:0;color:rgba(255,255,255,.9);}
.b-cta__actions{display:flex;flex-direction:column;gap:.7rem;}
.b-btn{display:inline-flex;align-items:center;gap:.7rem;padding:1.2rem 2rem;font-weight:700;letter-spacing:.05em;font-size:.95rem;transition:.3s;}
.b-btn--white{background:#fff;color:var(--b-orange);}
.b-btn--white:hover{background:var(--b-charcoal);color:#fff;}
.b-btn--ghost{background:transparent;border:2px solid #fff;color:#fff;}
.b-btn--ghost:hover{background:#fff;color:var(--b-orange);}

/* FOOTER */
.b-footer{background:var(--b-charcoal);color:var(--b-gray-light);padding:5rem 0 0;}
.b-footer__inner{max-width:var(--b-container);margin:0 auto;padding:0 var(--b-gutter);display:grid;grid-template-columns:1.3fr 2fr;gap:4rem;}
.b-footer__tagline{font-family:var(--b-font-display);font-weight:700;font-size:1.4rem;color:#fff;margin:1.5rem 0;line-height:1.5;}
.b-footer__tagline em{font-style:normal;color:var(--b-orange);}
.b-footer__columns{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;}
.b-footer__heading{font-family:var(--b-font-eng);font-size:.85rem;color:var(--b-orange);margin:0 0 1rem;letter-spacing:.2em;text-transform:uppercase;}
.b-footer__addr{font-style:normal;font-size:.9rem;line-height:1.9;color:var(--b-gray-light);}
.b-footer__menu{list-style:none;padding:0;margin:0;}
.b-footer__menu li{margin-bottom:.6rem;}
.b-footer__menu a{color:var(--b-gray-light);font-size:.9rem;}
.b-footer__menu a:hover{color:var(--b-orange);}
.b-footer__bottom{margin-top:4rem;padding:1.5rem var(--b-gutter);border-top:1px solid rgba(255,255,255,.08);text-align:center;}
.b-footer__copy{font-family:var(--b-font-eng);font-size:.82rem;letter-spacing:.2em;color:var(--b-gray);}

/* RESPONSIVE */
@media (max-width:992px){
  .b-stats__inner{grid-template-columns:repeat(2,1fr);gap:2rem;}
  .b-greeting__layout,.b-service__row,.b-fleet__layout,.b-safety__layout,.b-company__layout,.b-news__layout,.b-cta__inner{grid-template-columns:1fr;gap:2.5rem;}
  .b-service__row--reverse{direction:ltr;}
  .b-fleet__hero-num{font-size:8rem;}
  .b-footer__inner{grid-template-columns:1fr;gap:2.5rem;}
}
@media (max-width:768px){
  body{font-size:14px;overflow-x:clip;}
  .b-header__inner{padding:0 1rem;height:64px;}
  .b-logo__emblem{height:34px;padding:5px 7px;}
  .b-logo__name{font-size:.8rem;}
  .b-logo__eng{display:none;}
  .b-nav{position:fixed;inset:64px 0 auto 0;background:var(--b-charcoal-2);flex-direction:column;padding:1rem var(--b-gutter) 2rem;transform:translateY(-120%);transition:transform .4s var(--b-ease);}
  .b-nav.is-open{transform:translateY(0);}
  .b-nav__list{flex-direction:column;gap:0;align-items:stretch;}
  .b-nav__list li{border-bottom:1px solid rgba(255,255,255,.08);}
  .b-nav__list a{display:block;padding:1rem 0;font-size:1rem;}
  .b-menu-toggle{display:flex;}
  .b-menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .b-menu-toggle.is-open span:nth-child(2){opacity:0;}
  .b-menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .b-header__cta{display:none;}
  .b-hero{min-height:560px;height:85vh;}
  .b-hero__caption{bottom:120px;max-width:calc(100% - 64px);}
  .b-hero__controls{bottom:24px;gap:.8rem;}
  .b-hero__arrows{margin-left:0;}
  .b-hero__arrow{width:38px;height:38px;}
  .b-hero__counter{bottom:24px;}
  .b-hero__counter-current{font-size:1.8rem;}
  .b-hero__scroll{display:none;}
  .b-stats__inner{grid-template-columns:1fr 1fr;}
  .b-section{padding:4rem 0;}
  .b-section__header{margin-bottom:2.5rem;}
  .b-fleet__hero-num{font-size:6rem;}
  .b-footer__columns{grid-template-columns:1fr;gap:2rem;}
  .b-safety__grid{grid-template-columns:1fr;}
  .b-news__item{grid-template-columns:1fr;gap:.4rem;padding:1rem 0;}
}
/* ============================================================
   ADDITIONAL STYLES FOR WORDPRESS (下層ページ・フォーム・投稿)
============================================================ */

/* Page header (下層ページ共通見出し) */
.b-pagehead{position:relative;background:var(--b-charcoal);color:#fff;padding:5rem 0 4rem;overflow:hidden;}
.b-pagehead::before{content:'';position:absolute;inset:0;background-size:cover;background-position:center;opacity:.25;}
.b-pagehead__inner{position:relative;max-width:var(--b-container);margin:0 auto;padding:0 var(--b-gutter);z-index:2;}
.b-pagehead__eng{font-family:var(--b-font-eng);font-size:.9rem;letter-spacing:.35em;color:var(--b-orange);text-transform:uppercase;font-weight:600;margin:0 0 .5rem;display:inline-block;padding-left:50px;position:relative;}
.b-pagehead__eng::before{content:'';position:absolute;left:0;top:50%;width:36px;height:2px;background:var(--b-orange);}
.b-pagehead__title{font-family:var(--b-font-display);font-weight:900;font-size:clamp(1.8rem,4vw,2.8rem);margin:0;}
.b-breadcrumb{background:var(--b-cream-2);padding:.8rem 0;font-size:.82rem;}
.b-breadcrumb__inner{max-width:var(--b-container);margin:0 auto;padding:0 var(--b-gutter);color:var(--b-gray);}
.b-breadcrumb a{color:var(--b-gray);}
.b-breadcrumb a:hover{color:var(--b-orange);}

/* Article / single post */
.b-article{max-width:820px;margin:0 auto;}
.b-article__meta{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;}
.b-article__date{font-family:var(--b-font-eng);color:var(--b-gray);font-size:1rem;}
.b-article__cat{display:inline-block;padding:.25rem .9rem;background:var(--b-charcoal);color:#fff;font-size:.78rem;font-weight:700;}
.b-article__title{font-family:var(--b-font-display);font-weight:900;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.4;margin:0 0 1.5rem;color:var(--b-charcoal);}
.b-article__thumb{margin:0 0 2rem;}
.b-article__thumb img{width:100%;height:auto;}
.b-article__body{font-size:1rem;line-height:2;color:var(--b-charcoal-2);}
.b-article__body h2{font-family:var(--b-font-display);font-weight:900;font-size:1.5rem;margin:2.5rem 0 1rem;padding-left:1rem;border-left:5px solid var(--b-orange);}
.b-article__body h3{font-weight:700;font-size:1.2rem;margin:2rem 0 .8rem;color:var(--b-charcoal);}
.b-article__body p{margin:0 0 1.5em;}
.b-article__body img{height:auto;margin:1.5rem 0;}
.b-article__body a{color:var(--b-orange);text-decoration:underline;}
.b-article__body ul,.b-article__body ol{margin:0 0 1.5em;padding-left:1.5em;}
.b-article__body blockquote{border-left:4px solid var(--b-gray-light);padding-left:1.2rem;color:var(--b-gray);margin:1.5rem 0;}

/* News archive list */
.b-newslist{max-width:900px;margin:0 auto;list-style:none;padding:0;}
.b-newslist__item{border-bottom:1px solid var(--b-gray-light);}
.b-newslist__item:first-child{border-top:1px solid var(--b-gray-light);}
.b-newslist__link{display:grid;grid-template-columns:120px 110px 1fr;gap:1.5rem;align-items:center;padding:1.4rem .5rem;transition:.3s;}
.b-newslist__link:hover{background:var(--b-cream-2);padding-left:1rem;}
.b-newslist__date{font-family:var(--b-font-eng);color:var(--b-gray);font-size:1.05rem;}
.b-newslist__cat{display:inline-block;padding:.25rem .9rem;background:var(--b-charcoal);color:#fff;font-size:.78rem;font-weight:700;text-align:center;}
.b-newslist__cat--orange{background:var(--b-orange);}
.b-newslist__title{font-weight:500;color:var(--b-charcoal);}

/* Pagination */
.b-pagination{display:flex;justify-content:center;gap:.5rem;margin-top:3rem;flex-wrap:wrap;}
.b-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 .8rem;background:#fff;border:1px solid var(--b-gray-light);color:var(--b-charcoal);font-family:var(--b-font-eng);font-weight:500;transition:.3s;}
.b-pagination .page-numbers.current{background:var(--b-orange);color:#fff;border-color:var(--b-orange);}
.b-pagination .page-numbers:hover:not(.current){border-color:var(--b-orange);color:var(--b-orange);}

/* Post navigation */
.b-postnav{max-width:820px;margin:3rem auto 0;display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--b-gray-light);padding-top:1.5rem;}
.b-postnav a{color:var(--b-charcoal);font-size:.9rem;font-weight:500;}
.b-postnav a:hover{color:var(--b-orange);}

/* Contact form (Contact Form 7 styling) */
.b-form{max-width:760px;margin:0 auto;}
.b-form__intro{text-align:center;margin-bottom:3rem;color:var(--b-charcoal-2);}
.b-form__tel{background:var(--b-cream-2);padding:2rem;text-align:center;margin-bottom:3rem;}
.b-form__tel-label{font-weight:700;color:var(--b-charcoal);margin:0 0 .5rem;}
.b-form__tel-num{font-family:var(--b-font-eng);font-size:2.4rem;font-weight:600;color:var(--b-orange);line-height:1;}
.b-form__tel-hours{color:var(--b-gray);font-size:.9rem;margin:.5rem 0 0;}
.wpcf7{max-width:760px;margin:0 auto;}
.wpcf7 label{display:block;font-weight:700;color:var(--b-charcoal);margin-bottom:.5rem;}
.wpcf7 .b-form__required{color:var(--b-orange);font-size:.75em;margin-left:.5em;background:#ffe7df;padding:.1em .6em;border-radius:2px;font-weight:700;}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=url],.wpcf7 textarea,.wpcf7 select{width:100%;padding:.9rem 1rem;border:1px solid var(--b-gray-light);background:#fff;font-family:inherit;font-size:1rem;margin-bottom:1.5rem;transition:border-color .3s;}
.wpcf7 input:focus,.wpcf7 textarea:focus,.wpcf7 select:focus{outline:none;border-color:var(--b-orange);}
.wpcf7 textarea{min-height:160px;resize:vertical;}
.wpcf7 .wpcf7-submit{background:var(--b-orange);color:#fff;border:0;padding:1.1rem 3rem;font-weight:700;font-size:1rem;letter-spacing:.05em;cursor:pointer;transition:background .3s;display:inline-block;width:auto;}
.wpcf7 .wpcf7-submit:hover{background:var(--b-orange-dark);}
.wpcf7-response-output{border-radius:2px;padding:1rem!important;margin:1rem 0!important;}

/* Simple built-in contact form fallback (no CF7) */
.b-simpleform label{display:block;font-weight:700;color:var(--b-charcoal);margin-bottom:.5rem;}
.b-simpleform .b-form__required{color:var(--b-orange);font-size:.75em;margin-left:.5em;background:#ffe7df;padding:.1em .6em;border-radius:2px;font-weight:700;}
.b-simpleform input[type=text],.b-simpleform input[type=email],.b-simpleform input[type=tel],.b-simpleform textarea,.b-simpleform select{width:100%;padding:.9rem 1rem;border:1px solid var(--b-gray-light);background:#fff;font-family:inherit;font-size:1rem;margin-bottom:1.5rem;box-sizing:border-box;transition:border-color .3s;}
.b-simpleform input:focus,.b-simpleform textarea:focus,.b-simpleform select:focus{outline:none;border-color:var(--b-orange);}
.b-simpleform textarea{min-height:160px;resize:vertical;}
.b-simpleform__submit{background:var(--b-orange);color:#fff;border:0;padding:1.1rem 3rem;font-weight:700;font-size:1rem;letter-spacing:.05em;cursor:pointer;transition:background .3s;}
.b-simpleform__submit:hover{background:var(--b-orange-dark);}
.b-formnotice{padding:1rem 1.25rem;margin-bottom:1.5rem;border-radius:3px;font-size:.95rem;}
.b-formnotice--success{background:#e6f6ec;border-left:4px solid #1a9950;color:#0d5c2f;}
.b-formnotice--error{background:#fdecea;border-left:4px solid var(--b-orange);color:#a3271a;}

/* 404 */
.b-404{text-align:center;padding:5rem 0;}
.b-404__code{font-family:var(--b-font-eng);font-size:8rem;font-weight:700;color:var(--b-orange);line-height:1;}
.b-404__msg{font-size:1.2rem;color:var(--b-charcoal);margin:1rem 0 2rem;}

/* Back-to-top button */
.b-pagetop{position:fixed;right:24px;bottom:24px;width:48px;height:48px;background:var(--b-orange);color:#fff;border:0;cursor:pointer;font-size:1.3rem;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;z-index:90;display:flex;align-items:center;justify-content:center;}
.b-pagetop.is-visible{opacity:1;pointer-events:auto;}
.b-pagetop:hover{background:var(--b-orange-dark);transform:translateY(-3px);}

/* WordPress core alignment / caption classes */
.aligncenter{margin-left:auto;margin-right:auto;display:block;}
.alignright{float:right;margin:0 0 1rem 1.5rem;}
.alignleft{float:left;margin:0 1.5rem 1rem 0;}
.wp-caption{max-width:100%;}
.wp-caption-text{font-size:.85rem;color:var(--b-gray);text-align:center;margin-top:.5rem;}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);}

/* Admin bar spacing fix */
body.admin-bar .b-header{top:32px;}
@media(max-width:782px){body.admin-bar .b-header{top:46px;}}

/* WordPress gallery */
.wp-block-image img{height:auto;}
