/* ============================================================
   千葉版テーマ CSS — BtoB硬派・シャープエッジデザイン
   ============================================================ */
:root{
    /* カラー: テラコッタオレンジ + ダークスレート */
    --c-primary-50:#fff7ed;--c-primary-100:#ffedd5;--c-primary-200:#fed7aa;
    --c-primary-500:#f97316;--c-primary-700:#c2410c;--c-primary-900:#7c2d12;
    --c-corp:#0f172a;--c-corp-light:#1e293b;--c-corp-card:#1e293b;
    --c-cta:#ea580c;--c-cta-hover:#c2410c;--c-cta-border:#9a3412;
    --c-line:#16a34a;--c-line-hover:#15803d;--c-line-border:#166534;
    --c-yellow:#fbbf24;
    --c-text:#1e293b;--c-text-light:#64748b;
    --c-white:#fff;--c-bg-alt:#f1f5f9;--c-border:#e2e8f0;
    --max-w:1200px;--max-w-md:800px;--max-w-sm:640px;
    --radius:0px;--radius-sm:0px;--radius-lg:0px;
    --shadow-sm:4px 4px 0 rgba(249,115,22,.15);--shadow-md:4px 4px 0 rgba(249,115,22,.3);--shadow-lg:8px 8px 0 rgba(249,115,22,.3);
    --font-body:'Noto Sans JP',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font-body);color:var(--c-text);background:var(--c-bg-alt);line-height:1.8;font-size:16px;padding-bottom:72px}
@media(min-width:768px){body{padding-bottom:80px}}
img{max-width:100%;height:auto}a{text-decoration:none;color:inherit}
.container{max-width:var(--max-w);margin:0 auto;padding:0 20px}
.container--md{max-width:var(--max-w-md);margin:0 auto;padding:0 20px}
.container--sm{max-width:var(--max-w-sm);margin:0 auto;padding:0 20px}
.text-center{text-align:center}.sp-only{display:none}@media(max-width:767px){.sp-only{display:block}}

/* Sections */
.section{padding:72px 0}@media(max-width:767px){.section{padding:36px 0}}
.section--alt{background:var(--c-bg-alt)}.section--white{background:var(--c-white)}
.section--primary{background:var(--c-primary-50)}.section--dark{background:var(--c-corp);color:#fff}
.section-title{font-size:1.375rem;font-weight:900;text-align:center;color:var(--c-corp);margin-bottom:24px;line-height:1.4;letter-spacing:-.02em;border-bottom:3px solid var(--c-corp);display:inline-block;padding-bottom:8px}
@media(min-width:768px){.section-title{font-size:2rem;margin-bottom:48px}}

/* ============================================================
   Header — ダーク背景 + オレンジ下線
   ============================================================ */
.site-header{background:var(--c-corp);box-shadow:none;position:sticky;top:0;z-index:40;border-bottom:4px solid var(--c-primary-500)}
.admin-bar .site-header{top:32px}@media(max-width:782px){.admin-bar .site-header{top:46px}}
.site-header__inner{max-width:var(--max-w);margin:0 auto;padding:8px 20px;display:flex;align-items:center;gap:24px}
.site-header__logo{font-size:1.125rem;font-weight:900;color:#fff;letter-spacing:-.02em;margin-right:auto}
.site-header__logo a{color:#fff}
.site-header__logo-sub{display:block;font-size:.625rem;color:var(--c-primary-500);font-weight:700;letter-spacing:.1em}
.header-nav{display:none;gap:24px}@media(min-width:1024px){.header-nav{display:flex}}
.header-nav a{color:#fff;font-weight:700;font-size:.875rem;padding:4px 0;border-bottom:2px solid transparent;transition:all .2s}
.header-nav a:hover{color:var(--c-primary-500);border-color:var(--c-primary-500)}
.header-nav .dropdown{position:relative}
.header-nav .dropdown-menu{display:none;position:absolute;top:100%;left:0;background:var(--c-corp-light);min-width:180px;padding:8px 0;z-index:50;border:1px solid rgba(255,255,255,.1)}
.header-nav .dropdown:hover .dropdown-menu{display:block}
.header-nav .dropdown-menu a{display:block;padding:8px 16px;font-size:.8125rem;color:#94a3b8}
.header-nav .dropdown-menu a:hover{color:var(--c-primary-500);background:rgba(255,255,255,.05)}
.header-contact{display:none;align-items:center;gap:16px}
@media(min-width:1024px){.header-contact{display:flex}}
.header-contact__phone{text-align:right;background:var(--c-white);color:var(--c-corp);padding:4px 16px;border-left:4px solid var(--c-primary-500)}
.header-contact__number{font-size:1.25rem;font-weight:900;display:flex;align-items:center;gap:4px;letter-spacing:.03em;color:var(--c-corp)}
.header-contact__phone-icon{width:16px;height:16px;color:var(--c-primary-500)}
.header-contact__meta{font-size:.5625rem;color:var(--c-text-light);font-weight:700}
.header-contact__btn{display:flex;align-items:center;gap:8px;background:var(--c-primary-500);color:#fff;padding:10px 24px;font-weight:900;transition:all .2s;white-space:nowrap}
.header-contact__btn:hover{background:var(--c-primary-700)}
.header-contact__btn-icon{width:22px;height:22px;flex-shrink:0}
.header-contact__btn-sub{display:block;font-size:.6875rem;font-weight:700;line-height:1;opacity:.9}
.header-contact__btn-main{display:block;font-size:1.125rem;font-weight:900;line-height:1.2}
.mobile-menu-btn{background:none;border:none;cursor:pointer;color:#fff;padding:4px}
@media(min-width:1024px){.mobile-menu-btn{display:none}}
.mobile-menu{display:none;background:var(--c-corp-light);position:absolute;width:100%;top:100%;left:0;z-index:50;border-top:1px solid rgba(255,255,255,.1)}
.mobile-menu.is-open{display:block}
.mobile-menu a{display:block;padding:12px 20px;color:#94a3b8;font-weight:700;border-bottom:1px solid rgba(255,255,255,.05)}
.mobile-menu a:hover{color:var(--c-primary-500)}

/* ============================================================
   FV — 左テキスト + 右機体写真カード
   ============================================================ */
.fv{position:relative;background:var(--c-bg-alt);overflow:hidden;border-bottom:1px solid var(--c-border)}
.fv__inner{max-width:var(--max-w);margin:0 auto;padding:40px 20px;display:flex;flex-direction:column;align-items:center;position:relative;z-index:2}
@media(min-width:768px){.fv__inner{flex-direction:row;padding:48px 20px}}
.fv__content{width:100%;margin-bottom:32px}@media(min-width:768px){.fv__content{width:60%;margin-bottom:0;padding-right:40px}}
.fv__label{display:inline-block;background:var(--c-corp);color:#fff;font-size:.75rem;font-weight:700;padding:4px 12px;margin-bottom:20px;border-left:4px solid var(--c-primary-500);text-transform:uppercase;letter-spacing:.1em}
.fv__heading{font-size:2rem;font-weight:900;line-height:1.3;margin-bottom:20px;color:var(--c-corp)}
@media(min-width:768px){.fv__heading{font-size:3rem}}
@media(min-width:1024px){.fv__heading{font-size:3.5rem}}
.fv__heading-accent{color:var(--c-primary-700);font-size:1.2em;display:block;margin-top:4px;border-bottom:8px solid var(--c-primary-500);display:inline-block;padding-bottom:2px}
.fv__features{background:rgba(255,255,255,.9);padding:24px;border-left:4px solid var(--c-primary-500);margin-top:24px}
@media(min-width:768px){.fv__features{padding:28px}}
.fv__feature{display:flex;align-items:flex-start;gap:8px;font-size:1rem;font-weight:700;color:var(--c-corp-light);margin-bottom:12px}
.fv__feature:last-child{margin-bottom:0}
.fv__feature-icon{width:20px;height:20px;color:var(--c-primary-500);flex-shrink:0;margin-top:3px}
.fv__feature em{color:#dc2626;font-style:normal}
.fv__image{width:100%}@media(min-width:768px){.fv__image{width:40%}}
.fv__image-wrap{position:relative;max-width:400px;margin:0 auto}
.fv__image-shadow{position:absolute;inset:0;background:var(--c-primary-500);transform:translate(8px,8px)}
.fv__image-wrap img{position:relative;z-index:2;width:100%;border:2px solid var(--c-corp);background:#fff;padding:8px}

/* ============================================================
   Maker Bar
   ============================================================ */
.maker-bar{background:var(--c-white);border-bottom:1px solid var(--c-border);padding:10px 0}
.maker-bar__inner{max-width:var(--max-w);margin:0 auto;padding:0 20px;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;font-size:.875rem;font-weight:700;color:var(--c-text-light)}
.maker-bar__badge{background:var(--c-corp);color:var(--c-primary-500);padding:4px 12px;font-size:.75rem;font-weight:900;letter-spacing:.05em}
.maker-bar__sep{color:#bdbdbd}@media(max-width:767px){.maker-bar__sep{display:none}.maker-bar__inner a:nth-of-type(n+4){display:none}}

/* ============================================================
   Result Table (TOP)
   ============================================================ */
.result-table{width:100%;border-collapse:collapse;border-top:4px solid var(--c-corp)}
.result-table th{background:var(--c-bg-alt);font-weight:900;padding:12px;text-align:left;font-size:.8125rem;color:var(--c-corp);border-bottom:2px solid var(--c-border)}
.result-table td{padding:12px;border-bottom:1px solid var(--c-border);font-size:.875rem}
.result-table tr:hover{background:var(--c-primary-50)}
.result-table__price{font-weight:900;color:var(--c-primary-700);font-size:1.125rem;text-align:right}
@media(max-width:767px){.result-table--pc{display:none}}
.result-card{background:var(--c-white);border:1px solid var(--c-border);padding:16px;margin-bottom:12px;border-left:4px solid var(--c-primary-500)}
.result-card__title{font-weight:900;font-size:1rem;color:var(--c-corp);margin-bottom:4px}
.result-card__meta{font-size:.75rem;color:var(--c-text-light);margin-bottom:8px}
.result-card__price{font-weight:900;color:var(--c-primary-700);font-size:1.125rem}
.result-card__comment{font-size:.8125rem;color:#555;margin-top:8px;line-height:1.6}

/* ============================================================
   Voice (お客様の声)
   ============================================================ */
.voice-grid{display:grid;gap:24px}@media(min-width:768px){.voice-grid{grid-template-columns:1fr 1fr}}
.voice-card{background:var(--c-white);padding:28px;border-top:4px solid var(--c-primary-500);position:relative}
.voice-card__name{font-weight:900;font-size:1rem;color:var(--c-corp);margin-bottom:4px}
.voice-card__stars{color:var(--c-primary-500);font-size:.8125rem;letter-spacing:.15em;margin-bottom:12px}
.voice-card__title{font-weight:900;font-size:1.125rem;color:var(--c-corp);margin-bottom:8px}
.voice-card__text{font-size:.875rem;color:#555;line-height:1.8}

/* ============================================================
   Pain Points (お悩み)
   ============================================================ */
.pain-grid{display:grid;gap:24px}@media(min-width:768px){.pain-grid{grid-template-columns:1fr 1fr}}
.pain-card{border-left:4px solid var(--c-border);padding-left:20px;transition:border-color .3s}
.pain-card:hover{border-color:var(--c-primary-500)}
.pain-card__head{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.pain-card__icon{width:28px;height:28px;color:var(--c-primary-500);flex-shrink:0}
.pain-card__title{font-weight:900;font-size:1.125rem;color:var(--c-corp)}
.pain-card__text{font-size:.875rem;color:#555;line-height:1.7}

/* Worry grid (image cards) */
.worry-grid{display:grid;grid-template-columns:1fr;gap:12px;max-width:900px;margin:0 auto}
@media(min-width:640px){.worry-grid{grid-template-columns:1fr 1fr}}
.worry-grid__card{width:100%;height:auto;display:block}

/* ============================================================
   Reason Cards (TOP 3つの理由)
   ============================================================ */
.reason-grid{display:grid;gap:24px}@media(min-width:768px){.reason-grid{grid-template-columns:repeat(3,1fr)}}
.reason-card{background:var(--c-white);padding:32px 24px;text-align:center;border:1px solid var(--c-border);box-shadow:var(--shadow-sm);transition:all .3s}
.reason-card:hover{box-shadow:var(--shadow-lg)}
.reason-card__icon-wrap{width:56px;height:56px;margin:0 auto 16px;background:var(--c-corp);display:flex;align-items:center;justify-content:center}
.reason-card__icon{width:28px;height:28px;color:#fff}
.reason-card__title{font-size:1.0625rem;font-weight:900;margin-bottom:12px;color:var(--c-corp)}
.reason-card__text{color:#555;text-align:left;line-height:1.7;font-size:.875rem}

/* ============================================================
   Steps (3ステップ)
   ============================================================ */
.step-grid{display:flex;flex-direction:column;align-items:center;gap:4px}
@media(min-width:768px){.step-grid{flex-direction:row;justify-content:center;gap:0}}
.step-item{text-align:center;padding:24px 16px;flex:1;background:var(--c-white);border:1px solid var(--c-border)}
@media(min-width:768px){.step-item{max-width:240px}}
.step-item__circle{width:72px;height:72px;background:var(--c-corp);margin:0 auto 12px;display:flex;align-items:center;justify-content:center;position:relative;border-radius:50%}
.step-item__num{position:absolute;top:-6px;right:-6px;width:24px;height:24px;background:var(--c-primary-500);color:#fff;font-size:.75rem;font-weight:900;border-radius:50%;display:flex;align-items:center;justify-content:center}
.step-item__icon{width:28px;height:28px;color:#fff}
.step-item__title{font-weight:900;font-size:.9375rem;margin-bottom:4px;color:var(--c-corp)}
.step-item__text{font-size:.8125rem;color:var(--c-text-light);line-height:1.6}
.step-arrow{display:flex;align-items:center;justify-content:center;padding:0}
.step-arrow__icon{color:var(--c-primary-500)}
.step-arrow__icon--sp{width:24px;height:24px}
.step-arrow__icon--pc{display:none;width:28px;height:28px}
@media(min-width:768px){.step-arrow{padding:0 8px}.step-arrow__icon--sp{display:none}.step-arrow__icon--pc{display:block}}

/* ============================================================
   Machine Grid (機種一覧)
   ============================================================ */
.machine-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(min-width:640px){.machine-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.machine-grid{grid-template-columns:repeat(4,1fr)}}
.machine-card{display:flex;flex-direction:column;align-items:center;background:var(--c-white);padding:20px 16px;border:1px solid var(--c-border);transition:all .2s;text-align:center;font-weight:700;color:var(--c-corp)}
.machine-card:hover{border-color:var(--c-primary-500);box-shadow:var(--shadow-sm)}
.machine-card__icon{width:32px;height:32px;color:var(--c-primary-700);margin-bottom:8px}
.machine-card__img{width:100px;height:75px;object-fit:contain;margin-bottom:8px}
.machine-card__name{font-size:.9375rem}

/* ============================================================
   Maker Logo Grid
   ============================================================ */
.maker-logo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(min-width:768px){.maker-logo-grid{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1024px){.maker-logo-grid{grid-template-columns:repeat(5,1fr)}}
.maker-logo-tile{display:flex;align-items:center;justify-content:center;background:var(--c-white);border:1px solid var(--c-border);padding:16px 12px;height:80px;transition:all .2s}
.maker-logo-tile:hover{border-color:var(--c-primary-500);box-shadow:var(--shadow-sm)}
.maker-logo-tile__img{max-width:100%;max-height:48px;object-fit:contain}

/* ============================================================
   BtoB Section
   ============================================================ */
.btob-section{background:var(--c-primary-700);color:#fff;text-align:center;padding:72px 0}
@media(max-width:767px){.btob-section{padding:36px 0}}
.btob-grid{display:grid;gap:24px}@media(min-width:768px){.btob-grid{grid-template-columns:repeat(3,1fr)}}
.btob-card{padding:24px;border-top:1px solid rgba(255,255,255,.3);text-align:center}
.btob-card__icon{width:32px;height:32px;color:#fff;opacity:.8;margin:0 auto 12px}
.btob-card__title{font-weight:900;margin-bottom:8px;font-size:1rem}
.btob-card__text{font-size:.875rem;color:var(--c-primary-100);line-height:1.7}

/* ============================================================
   Area Cards
   ============================================================ */
.area-grid{display:grid;gap:24px}@media(min-width:768px){.area-grid{grid-template-columns:repeat(3,1fr)}}
.area-card{background:var(--c-white);padding:28px;border:1px solid var(--c-border);border-left:4px solid var(--c-primary-500)}
.area-card__name{font-weight:900;font-size:1.25rem;color:var(--c-corp);margin-bottom:8px}
.area-card__text{font-size:.875rem;color:#555;margin-bottom:16px;line-height:1.7}
.area-card__cities{font-size:.8125rem;color:var(--c-text-light)}

/* ============================================================
   FAQ Accordion
   ============================================================ */
.faq-category{margin-bottom:48px}.faq-category:last-child{margin-bottom:0}
.faq-category__title{font-size:1.25rem;font-weight:900;color:var(--c-corp);margin-bottom:20px;display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:3px solid var(--c-corp)}
.faq-category__icon{width:24px;height:24px;color:var(--c-primary-500);flex-shrink:0}
.faq-acc-item{border:1px solid var(--c-border);margin-bottom:8px;background:var(--c-white)}
.faq-acc-item__q{width:100%;display:flex;align-items:center;gap:10px;padding:16px 20px;background:var(--c-bg-alt);border:none;cursor:pointer;text-align:left;font-family:inherit;font-size:1rem;font-weight:700;color:var(--c-corp);transition:background .2s}
.faq-acc-item__q:hover{background:var(--c-primary-50)}
.faq-acc-item__q-mark{color:var(--c-corp);background:var(--c-corp);color:#fff;padding:2px 8px;font-weight:900;font-size:.75rem;flex-shrink:0}
.faq-acc-item__q-text{flex:1}
.faq-acc-item__chevron{width:20px;height:20px;color:var(--c-primary-500);flex-shrink:0;transition:transform .3s}
.faq-acc-item.is-open .faq-acc-item__chevron{transform:rotate(180deg)}
.faq-acc-item__a{display:none;padding:16px 20px;border-top:1px solid var(--c-border);line-height:1.8;font-size:.9375rem;color:#333}
.faq-acc-item.is-open .faq-acc-item__a{display:flex}
.faq-acc-item__a-mark{color:var(--c-primary-500);font-weight:900;font-size:1.125rem;flex-shrink:0;margin-right:10px}
.faq-acc-item__a-text{flex:1}

/* ============================================================
   Buttons
   ============================================================ */
.btn{display:flex;align-items:center;justify-content:center;padding:16px 24px;font-weight:900;color:#fff;transition:all .2s;box-shadow:var(--shadow-sm);border:none;cursor:pointer;text-align:left}
.btn--phone{background:var(--c-corp);border-bottom:4px solid #000}.btn--phone:hover{background:var(--c-corp-light)}
.btn--line{background:var(--c-primary-500);border-bottom:4px solid var(--c-primary-700)}.btn--line:hover{background:var(--c-primary-700)}
.btn__icon{width:24px;height:24px;margin-right:12px;flex-shrink:0}
.btn__label{font-size:.6875rem;font-weight:700;opacity:.9}.btn__number{font-size:1.375rem;letter-spacing:.05em}
.btn__text{font-size:1.125rem}
.btn--outline{display:inline-flex;align-items:center;gap:6px;padding:12px 28px;font-weight:900;color:var(--c-corp);border:2px solid var(--c-corp);background:transparent;font-size:.875rem;transition:all .2s}
.btn--outline:hover{background:var(--c-corp);color:#fff}

/* ============================================================
   Sticky CTA
   ============================================================ */
.sticky-cta{position:fixed;bottom:0;left:0;width:100%;z-index:50;background:var(--c-white);border-top:1px solid var(--c-border);padding:6px}
.sticky-cta__inner{max-width:var(--max-w-md);margin:0 auto;display:flex;gap:6px}
.sticky-cta__btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 8px;color:#fff;font-weight:900;transition:background .2s}
.sticky-cta__btn--phone{background:var(--c-corp)}.sticky-cta__btn--phone:hover{background:var(--c-corp-light)}
.sticky-cta__btn--web{background:var(--c-primary-500)}.sticky-cta__btn--web:hover{background:var(--c-primary-700)}
.sticky-cta__label{font-size:1.125rem;font-weight:700;margin-bottom:2px;white-space:nowrap}
.sticky-cta__main{display:flex;align-items:center;font-size:1rem;letter-spacing:.02em;white-space:nowrap}
.sticky-cta__icon{width:16px;height:16px;margin-right:6px;flex-shrink:0}
@media(min-width:768px){.sticky-cta{padding:8px}.sticky-cta__inner{gap:8px}.sticky-cta__btn{padding:8px 16px}.sticky-cta__label{font-size:1rem;margin-bottom:2px}.sticky-cta__main{font-size:1.5rem;letter-spacing:.05em}.sticky-cta__icon{width:20px;height:20px;margin-right:8px}}

/* ============================================================
   Footer — ダークスレート
   ============================================================ */
.site-footer{background:var(--c-corp);color:#94a3b8;border-top:4px solid var(--c-primary-500)}
.footer-nav{background:var(--c-corp-light);padding:12px 0;margin-bottom:0}
.footer-nav__inner{max-width:var(--max-w);margin:0 auto;padding:0 20px;display:flex;flex-wrap:wrap;justify-content:center;gap:20px}
.footer-nav a{color:#94a3b8;font-weight:700;font-size:.8125rem;transition:color .2s}
.footer-nav a:hover{color:var(--c-primary-500)}
.footer-info{padding:32px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.footer-info__inner{max-width:var(--max-w);margin:0 auto;padding:0 20px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
@media(min-width:768px){.footer-info__inner{flex-direction:row;text-align:left;gap:32px}}
.footer-info__logo-text{font-size:1.25rem;font-weight:900;color:#fff}
.footer-info__name{font-weight:700;color:#fff;margin-bottom:4px}
.footer-info__meta{font-size:.75rem;line-height:1.8}
.footer-info__meta p{margin:0}
.footer-legal{padding:20px 0;text-align:center;font-size:.6875rem;color:#64748b}
.footer-legal p{margin:2px 0}

/* ============================================================
   Archive / Taxonomy
   ============================================================ */
.archive-header{background:linear-gradient(135deg,var(--c-corp),var(--c-corp-light));color:#fff;padding:40px 20px;text-align:center}
.archive-header__title{font-size:1.75rem;font-weight:900;margin-bottom:8px}
@media(min-width:768px){.archive-header__title{font-size:2.25rem}}
.archive-header__desc{font-size:.9375rem;opacity:.85}

/* Reason hero (shared with flow/faq) */
.reason-hero{background:linear-gradient(135deg,var(--c-corp),var(--c-corp-light));color:#fff;text-align:center;padding:56px 20px}
@media(min-width:768px){.reason-hero{padding:72px 20px}}
.reason-hero__inner{max-width:800px;margin:0 auto}
.reason-hero__title{font-size:1.75rem;font-weight:900;line-height:1.4;margin-bottom:16px}
@media(min-width:768px){.reason-hero__title{font-size:2.5rem}}
.reason-hero__accent{color:var(--c-primary-500)}
.reason-hero__desc{font-size:1rem;font-weight:700;opacity:.9;line-height:1.8}

/* Results Filter */
.results-filter{background:var(--c-white);border-bottom:1px solid var(--c-border);padding:16px 0}
.results-filter__inner{display:flex;flex-direction:column;gap:12px}
@media(min-width:768px){.results-filter__inner{flex-direction:row;align-items:center;gap:16px}}
.results-search{display:flex;flex:1;max-width:400px}
.results-search__input{flex:1;padding:10px 14px;border:1.5px solid var(--c-border);font-size:.875rem;font-family:inherit;background:var(--c-white);color:var(--c-text)}
.results-search__input:focus{border-color:var(--c-primary-500);outline:none}
.results-search__btn{padding:10px 14px;background:var(--c-corp);border:none;color:#fff;cursor:pointer}
.results-search__btn:hover{background:var(--c-primary-500)}
.results-filter__tags{display:flex;flex-direction:column;gap:8px}
@media(min-width:768px){.results-filter__tags{flex-direction:row;align-items:center;gap:8px}}
.filter-row{display:flex;flex-wrap:wrap;gap:6px}
@media(max-width:767px){.filter-row{gap:6px}.filter-row .filter-tag{flex:1;min-width:0;text-align:center;padding:8px 8px}}
.filter-tag{display:inline-block;padding:6px 20px;font-size:.8125rem;font-weight:700;border:1.5px solid var(--c-border);color:var(--c-text);background:var(--c-white);transition:all .2s;white-space:nowrap}
.filter-tag:hover{border-color:var(--c-primary-500);background:var(--c-primary-50)}
.filter-tag--active{background:var(--c-corp);color:#fff;border-color:var(--c-corp)}
.filter-tag--sub{background:var(--c-primary-50);border-color:var(--c-primary-200);font-size:.75rem;padding:6px 18px}

/* Term cards */
.term-grid{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:768px){.term-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.term-grid{grid-template-columns:repeat(3,1fr)}}
.term-card{display:flex;align-items:center;padding:16px 20px;background:var(--c-white);border:1px solid var(--c-border);transition:all .2s}
.term-card:hover{border-color:var(--c-primary-500);box-shadow:var(--shadow-sm)}
.term-card__icon-wrap{width:56px;height:56px;background:var(--c-bg-alt);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:16px;overflow:hidden}
.term-card__icon-wrap--img{background:var(--c-white);border:1px solid var(--c-border)}
.term-card__icon{width:24px;height:24px;color:var(--c-primary-700)}
.term-card__img{width:100%;height:100%;object-fit:contain;padding:4px}
.term-card__body{flex:1;min-width:0}
.term-card__name{font-size:1rem;font-weight:700;color:var(--c-corp);margin-bottom:2px}
.term-card__count{font-size:.8125rem;color:var(--c-text-light)}
.term-card__arrow{width:20px;height:20px;color:#d1d5db;flex-shrink:0;margin-left:8px;transition:color .2s}
.term-card:hover .term-card__arrow{color:var(--c-primary-700)}

/* Maker logo cards */
.maker-logo-card{display:flex;align-items:center;background:var(--c-white);border:1px solid var(--c-border);padding:16px 20px;transition:all .2s;color:var(--c-text);gap:16px}
.maker-logo-card:hover{border-color:var(--c-primary-500);box-shadow:var(--shadow-sm)}
.maker-logo-card__img{width:80px;height:40px;object-fit:contain;flex-shrink:0}
.maker-logo-card__body{flex:1;min-width:0}
.maker-logo-card__name{font-size:1rem;font-weight:700;color:var(--c-corp)}
.maker-logo-card__count{font-size:.8125rem;color:var(--c-text-light)}
.maker-logo-card__arrow{width:20px;height:20px;color:#d1d5db;flex-shrink:0;transition:color .2s}
.maker-logo-card:hover .maker-logo-card__arrow{color:var(--c-primary-700)}

/* Pagination */
.pagination{display:flex;justify-content:center;gap:8px;margin-top:40px}
.pagination a,.pagination span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;font-weight:700;font-size:.875rem;border:1px solid var(--c-border);color:var(--c-text);transition:all .2s}
.pagination .current{background:var(--c-corp);color:#fff;border-color:var(--c-corp)}
.pagination a:hover{border-color:var(--c-primary-500);color:var(--c-primary-700)}

/* Single result */
.single-result{max-width:var(--max-w-md);margin:0 auto}
.result-detail{background:var(--c-white);border:1px solid var(--c-border);padding:28px}
.result-detail__table{width:100%;border-collapse:collapse;margin-bottom:20px}
.result-detail__table th{text-align:left;padding:10px 12px;background:var(--c-bg-alt);font-weight:700;font-size:.875rem;width:30%;border-bottom:1px solid var(--c-border);color:var(--c-corp)}
.result-detail__table td{padding:10px 12px;border-bottom:1px solid var(--c-border);font-size:.9375rem}
.result-comment{background:var(--c-bg-alt);padding:24px;border-left:4px solid var(--c-primary-500);margin-top:24px}
.result-comment__title{font-weight:900;color:var(--c-corp);margin-bottom:8px}
.result-comment__text{font-size:.9375rem;line-height:1.8;color:#333}

/* ============================================================
   Flow Page
   ============================================================ */
.flow-card{background:var(--c-white);border:1px solid var(--c-border);padding:32px 28px;margin-bottom:0}
@media(min-width:768px){.flow-card{padding:40px 36px}}
.flow-card__badge{display:inline-block;background:var(--c-corp);color:#fff;font-weight:900;font-size:.9375rem;padding:8px 24px;margin-bottom:24px;letter-spacing:.05em}
.flow-card__head{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.flow-card__icon-wrap{width:48px;height:48px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.flow-card__icon-wrap--green{background:var(--c-primary-50);color:var(--c-primary-700)}
.flow-card__icon{width:28px;height:28px}
.flow-card__title{font-size:1.375rem;font-weight:900;color:var(--c-corp)}
@media(min-width:768px){.flow-card__title{font-size:1.5rem}}
.flow-card__hr{border:none;border-top:2px dashed var(--c-border);margin:0 0 20px}
.flow-card__body{font-size:.9375rem;line-height:1.9;color:#333}
.flow-card__body p{margin-bottom:16px}.flow-card__body p:last-child{margin-bottom:0}
.flow-card__link{font-weight:900;text-decoration:underline;text-underline-offset:3px}
.flow-card__link--green{color:var(--c-primary-700)}
.flow-card__em{font-weight:900;background:linear-gradient(transparent 60%,var(--c-primary-100) 60%)}
.flow-card__em--green{color:var(--c-primary-700)}
.flow-card__em--orange{color:#c2410c;background:linear-gradient(transparent 60%,#fed7aa 60%)}
.flow-callout{border-left:4px solid;padding:20px 24px;margin-top:20px}
.flow-callout--green{border-color:var(--c-primary-500);background:var(--c-primary-50)}
.flow-callout--orange{border-color:#f97316;background:#fff7ed}
.flow-callout__title{font-size:1rem;font-weight:900;margin-bottom:12px;display:flex;align-items:center;gap:8px}
.flow-callout--green .flow-callout__title{color:var(--c-primary-700)}
.flow-callout--orange .flow-callout__title{color:#c2410c}
.flow-callout__title-icon{width:20px;height:20px}
.flow-callout__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.flow-callout__list li{display:flex;align-items:center;gap:8px;font-size:.9375rem;color:#333}
.flow-callout__check{width:18px;height:18px;color:var(--c-primary-500);flex-shrink:0}
.flow-callout__text{font-size:.9375rem;color:#333;line-height:1.8;margin:0}
.flow-arrow-anim{display:flex;justify-content:center;padding:12px 0}
.flow-arrow-anim__icon{width:32px;height:32px;color:var(--c-primary-500);animation:bounceDown 2s infinite}
@keyframes bounceDown{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
.prep-grid{display:grid;gap:20px;grid-template-columns:1fr}@media(min-width:768px){.prep-grid{grid-template-columns:1fr 1fr}}
.prep-card{display:flex;align-items:flex-start;gap:16px;background:var(--c-white);border:1px solid var(--c-border);padding:24px}
.prep-card__icon-wrap{width:48px;height:48px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.prep-card__icon-wrap--orange{background:#fff7ed;color:#f97316}
.prep-card__icon{width:24px;height:24px}
.prep-card__body{flex:1;min-width:0}
.prep-card__title{font-size:1rem;font-weight:900;color:var(--c-corp);margin-bottom:6px}
.prep-card__text{font-size:.875rem;color:#555;line-height:1.7;margin:0}

/* ============================================================
   Reason Page
   ============================================================ */
.rsn-list{display:flex;flex-direction:column;gap:40px}@media(min-width:768px){.rsn-list{gap:56px}}
.rsn-card{display:flex;flex-direction:column;background:var(--c-white);overflow:hidden;border:1px solid var(--c-border)}
@media(min-width:768px){.rsn-card{flex-direction:row}}
@media(min-width:768px){.rsn-card--rev{flex-direction:row-reverse}}
.rsn-card__img-wrap{position:relative;height:220px;flex-shrink:0}
@media(min-width:768px){.rsn-card__img-wrap{width:45%;height:auto;min-height:320px}}
.rsn-card__img{width:100%;height:100%;object-fit:cover;display:block}
.rsn-card__num{position:absolute;top:12px;left:12px;background:var(--c-primary-500);color:#fff;font-weight:900;font-size:1.5rem;padding:6px 16px}
.rsn-card--rev .rsn-card__num{left:auto;right:12px}
.rsn-card__body{padding:28px 24px;flex:1;display:flex;flex-direction:column;justify-content:center}
@media(min-width:768px){.rsn-card__body{padding:32px 36px}}
.rsn-card__title{font-size:1.25rem;font-weight:900;line-height:1.4;margin-bottom:16px;color:var(--c-corp)}
@media(min-width:768px){.rsn-card__title{font-size:1.5rem}}
.rsn-card__em--red{color:#dc2626;font-size:1.375rem}@media(min-width:768px){.rsn-card__em--red{font-size:1.75rem}}
.rsn-card__em--marker{font-size:1.375rem;font-weight:900;background:linear-gradient(transparent 60%,#fff59d 60%)}@media(min-width:768px){.rsn-card__em--marker{font-size:1.75rem}}
.rsn-card__desc{font-size:.9375rem;color:#555;line-height:1.9;margin-bottom:20px}
.rsn-card__checks{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.rsn-check{display:flex;align-items:flex-start;gap:10px;font-size:.9375rem;font-weight:700;color:#333}
.rsn-check--em{color:#dc2626}
.rsn-check__icon{width:22px;height:22px;color:var(--c-primary-500);flex-shrink:0;margin-top:2px}
.rsn-check--em .rsn-check__icon{color:#dc2626}

/* ============================================================
   CF7 Form
   ============================================================ */
.wpcf7{max-width:640px;margin:0 auto}
.form-group{margin-bottom:20px}
.form-group__label{display:block;font-size:.9375rem;font-weight:700;color:var(--c-corp);margin-bottom:6px}
.form-group__required{color:var(--c-cta);font-size:.75rem;margin-left:4px}
.form-group__note{font-size:.75rem;color:var(--c-text-light);margin-top:4px}
.wpcf7-form input[type="text"],.wpcf7-form input[type="email"],.wpcf7-form input[type="tel"],.wpcf7-form select,.wpcf7-form textarea{width:100%;padding:12px 16px;border:1.5px solid var(--c-border);font-size:1rem;font-family:inherit;background:var(--c-white);transition:border-color .2s;color:var(--c-text)}
.wpcf7-form input:focus,.wpcf7-form select:focus,.wpcf7-form textarea:focus{border-color:var(--c-primary-500);outline:none}
.wpcf7-form textarea{min-height:120px;resize:vertical}
.wpcf7-form input[type="file"]{padding:10px;border:2px dashed var(--c-border);background:var(--c-bg-alt);cursor:pointer;font-size:.875rem}
.wpcf7-form input[type="submit"]{display:block;width:100%;padding:18px;border:none;background:var(--c-corp);color:#fff;font-size:1.25rem;font-weight:900;cursor:pointer;transition:all .2s;border-bottom:4px solid #000;margin-top:8px}
.wpcf7-form input[type="submit"]:hover{background:var(--c-primary-500)}
.wpcf7-not-valid{border-color:var(--c-cta) !important}
.wpcf7-not-valid-tip{font-size:.75rem;color:var(--c-cta);margin-top:4px}
.wpcf7-response-output{padding:16px !important;font-weight:700;text-align:center;margin:20px 0 0 !important}
.contact-fallback{text-align:center;padding:40px 20px;background:var(--c-white);border:2px dashed var(--c-border)}
.contact-fallback__text{font-size:1.125rem;font-weight:700;color:#555;margin-bottom:8px}
.form-row{display:grid;grid-template-columns:1fr;gap:16px}@media(min-width:640px){.form-row{grid-template-columns:1fr 1fr}}
