/* S28 치과마케팅 · T03 — site layer over the copied template CSS.
   Palette (palette.json): navy #0b1b3f · blue #1053c6 · sky #3b9efb · yellow #fef95a · paper #eef3fc. */
:root{--navy:#0b1b3f;--blue:#1053c6;--sky:#3b9efb;--yellow:#fef95a;--tint:#eef3fc;--band:max(5%,calc((100% - 1440px)/2))}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid var(--sky);outline-offset:4px}

/* 1440 rule: colour bands stay full-bleed, their content is held to 1440px in the middle. */
.theme-typographic .site-header,.theme-typographic .hero,.theme-typographic .service-gallery,.theme-typographic .insights,
.theme-typographic .company,.theme-typographic .contact,.theme-typographic .site-footer,.additional-topics{padding-left:var(--band);padding-right:var(--band)}
.theme-typographic .hero-type{right:max(1%,calc((100% - 1440px)/2 - 60px));color:#3b9efb14}
.theme-typographic .hero .button{background:var(--yellow);color:var(--navy)}
.theme-typographic .hero p{color:#b9c8e6}
.theme-typographic .insights{background:var(--tint)}
.theme-typographic .article-topic{color:var(--blue)}
.theme-typographic .topic-nav a[aria-current]{background:var(--navy);border-color:var(--navy)}
.theme-typographic .search-form button{background:var(--navy)}
.service-poster:hover .poster-label{color:var(--blue)}
.theme-typographic .company{background:var(--navy)}
.theme-typographic .company .text-link{color:var(--yellow)}
.theme-typographic .capabilities>div{border-top-color:var(--yellow)}
.theme-typographic .contact .button{background:var(--navy)}
.theme-typographic .contact-form-panel{border-color:var(--navy)}

/* Image-less services still reachable from home: one small line under the gallery. */
.additional-topics{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin:-6px 0 44px;font-size:13px;color:#5f666a}
.additional-topics a{color:var(--navy);font-weight:700;border-bottom:1px solid var(--yellow);padding-bottom:1px}
.additional-topics a:hover{color:var(--blue)}

/* Detail pages: header/footer bands full-bleed, page body 1440 centred (reading column keeps T03's 950). */
.detail-page main.wrap{max-width:1440px;margin-left:auto;margin-right:auto;padding-left:0;padding-right:0;--accent:var(--blue)}
.detail-page main.reading{max-width:950px}
.detail-page .topic-button.selected{background:var(--yellow);color:var(--navy);border-color:var(--yellow)}
.detail-page .solid{background:var(--navy);color:#fff}
.detail-page .service-contact{background:var(--tint)}
.detail-page .cover-card[aria-current] .cover-caption{color:var(--blue)}
.not-found{padding:110px 0 130px}
.not-found h1{font-family:Display,sans-serif;font-weight:400;font-size:clamp(40px,5vw,72px);line-height:1.2;margin:10px 0 24px}
.not-found>p{max-width:620px}
.not-found-links{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:34px}

@media(max-width:1500px){.detail-page main.wrap{padding-left:5%;padding-right:5%}.detail-page main.reading{max-width:calc(950px + 10%)}}
@media(max-width:760px){
.theme-typographic .site-header,.theme-typographic .hero,.theme-typographic .service-gallery,.additional-topics{padding-left:20px;padding-right:20px}
.theme-typographic .insights,.theme-typographic .company,.theme-typographic .contact,.theme-typographic .site-footer{padding-left:20px;padding-right:20px}
.additional-topics{margin:-4px 0 30px;font-size:12px}
.detail-page main.wrap{padding-left:20px;padding-right:20px}
.detail-page main.reading{max-width:none}
.not-found{padding:60px 20px 80px}}
