.home{display:grid;gap:12px;padding:12px 0 0;background:white}.tile{position:relative;overflow:hidden;text-align:center;padding:56px 24px 0;background:var(--gray);min-height:580px;display:flex;flex-direction:column;align-items:center}.tile .eyebrow{font-size:var(--type-note);font-weight:650;color:#b64400;margin-bottom:6px;line-height:var(--leading-body)}.tile h2{font-size:var(--type-section);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);font-family:var(--font-display);font-weight:700}.tile .tile-copy{font-size:var(--type-lead);line-height:var(--leading-body);letter-spacing:normal;margin-top:var(--heading-gap)}.tile .actions{margin-top:20px;gap:14px}.button.outline{background:transparent;color:var(--color-text-primary);box-shadow:inset 0 0 0 1px var(--color-border-strong)}.button.outline:hover{background:var(--color-action);color:var(--color-on-action)}.tile-covers{display:flex;justify-content:center;align-items:flex-end;gap:28px;margin-top:auto;padding-top:44px}.tile-covers img{width:210px;height:auto;box-shadow:10px 18px 30px #0000002b}.tile-covers.single img{width:260px}.tile-dark{background:#111;color:#f5f5f7}.tile-dark .eyebrow{color:#7fd3cf}.tile-dark .button.outline{color:var(--color-text-primary);box-shadow:inset 0 0 0 1px var(--color-border-strong);background:transparent}.tile-dark .button.outline:hover{background:var(--color-action);color:var(--color-on-action)}.tile-pass{background:#f3eef9}.tile-pass .eyebrow{color:#714d9c}.release-dates{display:flex;justify-content:center;gap:34px;margin-top:26px;font-size:var(--type-body);color:#a1a1a6;line-height:var(--leading-body)}.release-dates strong{display:block;color:#f5f5f7;font-size:var(--type-card);line-height:var(--leading-heading);font-weight:600}.tile-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tile-grid .tile{min-height:500px;padding-top:48px}.tile-grid h2{font-size:var(--type-section);line-height:var(--leading-heading);font-family:var(--font-display);font-weight:700}.tile-grid .tile-copy{font-size:var(--type-lead);line-height:var(--leading-body)}.tile-grid .tile-covers img{width:170px}.hansisu-tile{background:#fff0dd}.hanwansu-tile{background:#e9f1ff}.hanwangi-tile{background:#eee9fb}.n-tile{background:#eef4e4}.home-note{text-align:center;color:var(--muted);font-size:var(--type-note);padding:22px 24px 36px;line-height:var(--leading-body)}
.pass-page{--pass:#714d9c;--pass-bg:#f3eef9}.pass-hero{text-align:center;padding:72px 0 64px}.pass-hero .eyebrow{color:var(--pass);font-size:var(--type-note);font-weight:650;margin-bottom:14px;line-height:var(--leading-body)}.pass-hero h1{font-size:var(--type-title);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading);font-family:var(--font-display);font-weight:800}.pass-hero p{font-size:var(--type-lead);color:var(--muted);margin:22px auto 0;max-width:640px;line-height:var(--leading-body)}.pass-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--card-gap)}.pass-card{display:flex;flex-direction:column;background:var(--gray);border-radius:var(--ui-radius-comparison);padding:var(--card-padding)}.pass-card.featured{background:var(--pass-bg);box-shadow:inset 0 0 0 2px var(--pass)}.pass-card .rate{align-self:flex-start;font-size:var(--type-note);font-weight:650;color:white;background:var(--pass);border-radius:var(--ui-radius-status);padding:5px 12px;line-height:var(--leading-body)}.pass-card h2{font-size:var(--type-section);letter-spacing:var(--tracking-heading);margin:22px 0 10px;line-height:var(--leading-heading);font-family:var(--font-display);font-weight:700}.pass-card .for{font-size:var(--type-body);color:#4c4c52;min-height:52px;line-height:var(--leading-body)}.pass-card ul{list-style:none;padding:0;margin:26px 0 0;border-top:1px solid var(--line)}.pass-card li{padding:13px 0;border-bottom:1px solid var(--line);font-size:var(--type-body);display:flex;justify-content:space-between;gap:12px;line-height:var(--leading-body)}.pass-card li span{color:var(--muted);font-size:var(--type-note);text-align:right;line-height:var(--leading-body)}.pass-card .count{font-size:var(--type-note);color:var(--muted);margin:22px 0 26px;line-height:var(--leading-body)}.pass-card .actions{margin-top:auto;justify-content:flex-start}.pass-card .rate-note{font-size:var(--type-note);color:var(--muted);margin-top:10px;line-height:var(--leading-body)}.pass-section{padding:var(--section-space) 0 0}.pass-section>h2{font-size:var(--type-section);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading);margin-bottom:40px;font-family:var(--font-display);font-weight:700}.pass-table{border-collapse:collapse;width:100%;font-size:var(--type-body);text-align:center;line-height:var(--leading-body)}.pass-table th,.pass-table td{padding:22px 16px;border-bottom:1px solid var(--line)}.pass-table thead th{font-size:var(--type-card);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading);font-weight:600}.pass-table tbody th{text-align:left;font-weight:600;padding-left:0}.pass-table tbody th small{display:block;font-weight:400;color:var(--muted);font-size:var(--type-note);margin-top:4px;line-height:var(--leading-body)}.pass-table .yes{color:var(--pass);font-size:var(--type-card);font-weight:600;line-height:var(--leading-heading);font-weight:600}.pass-table .no{color:#c7c7cc}.pass-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.pass-guide div{border-top:2px solid var(--pass);padding-top:24px}.pass-guide strong{display:block;font-size:var(--type-card);letter-spacing:var(--tracking-heading);margin-bottom:12px;line-height:var(--leading-heading);font-weight:600}.pass-guide p{font-size:var(--type-body);color:#4c4c52;line-height:var(--leading-body)}.pass-guide a{display:inline-block;margin-top:14px}.pass-notes{background:var(--gray);border-radius:0;padding:44px 48px;display:grid;grid-template-columns:repeat(2,1fr);gap:28px 48px;box-shadow:none}.pass-notes h3{font-size:var(--type-card);margin-bottom:8px;line-height:var(--leading-heading);font-weight:600}.pass-notes p{font-size:var(--type-note);color:#4c4c52;line-height:var(--leading-body)}.pass-cta{text-align:center;padding:var(--section-space) 0}.pass-cta h2{font-size:var(--type-section);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading);font-family:var(--font-display);font-weight:700}.pass-cta .actions{margin-top:30px}.pass-cta p{font-size:var(--type-note);color:var(--muted);margin-top:30px;line-height:var(--leading-body)}.pass-cta p a{text-decoration:underline}
@media(max-width:1100px){.tile h2{font-size:var(--type-section);line-height:var(--leading-heading);font-family:var(--font-display);font-weight:700}.tile .tile-copy{font-size:var(--type-lead);line-height:var(--leading-body)}.tile-covers img{width:170px}.tile-grid h2{font-size:var(--type-section);line-height:var(--leading-heading);font-family:var(--font-display);font-weight:700}.tile-grid .tile-copy{font-size:var(--type-lead);line-height:var(--leading-body)}.tile-grid .tile-covers img{width:140px}.pass-cards{gap:var(--card-gap)}.pass-card{padding:var(--card-padding);border-radius:var(--ui-radius-comparison)}.pass-card h2{font-size:var(--type-section);line-height:var(--leading-heading);font-family:var(--font-display);font-weight:700}}
@media(max-width:800px){.tile{min-height:0;padding:44px 20px 0}.tile h2,.tile-grid h2{font-size:var(--type-section);line-height:var(--leading-heading);font-family:var(--font-display);font-weight:700}.tile .tile-copy,.tile-grid .tile-copy{font-size:var(--type-lead);line-height:var(--leading-body)}.tile-covers{gap:12px;padding-top:34px}.tile-covers img,.tile-grid .tile-covers img{width:28vw;max-width:150px}.tile-covers.single img{width:52vw;max-width:220px}.tile-grid{grid-template-columns:1fr}.tile-grid .tile{min-height:0}.release-dates{gap:18px;font-size:var(--type-note);line-height:var(--leading-body)}.release-dates strong{font-size:var(--type-body);line-height:var(--leading-body)}.pass-hero{padding:48px 0 40px}.pass-hero p{font-size:var(--type-lead);line-height:var(--leading-body)}.pass-cards,.pass-guide{grid-template-columns:1fr}.pass-card .for{min-height:0}.pass-section{padding-top:72px}.pass-section>h2,.pass-cta h2{font-size:var(--type-section);line-height:var(--leading-heading);font-family:var(--font-display);font-weight:700}.pass-table{font-size:var(--type-body);min-width:520px;line-height:var(--leading-body)}.pass-table thead th{font-size:var(--type-body);line-height:var(--leading-body)}.pass-table th,.pass-table td{padding:16px 10px}.pass-notes{grid-template-columns:1fr;padding:32px 26px;border-radius:0;box-shadow:none}.pass-cta{padding:var(--section-space) 0}}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pass-catalogue{background:var(--gray);padding:100px 0 110px}.pass-catalogue-head h2{font-size:var(--type-section);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading);font-family:var(--font-display);font-weight:700}.pass-catalogue-head p{font-size:var(--type-card);color:var(--muted);margin-top:14px;line-height:var(--leading-heading);font-weight:600}.catalogue-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.catalogue-jump a{padding:9px 18px;border-radius:0;background:white;font-size:var(--type-note);color:var(--ink);box-shadow:none;line-height:var(--leading-body);border-bottom:1px solid var(--color-border);min-height:var(--ui-control-height)}.catalogue-jump a:hover{text-decoration:none;box-shadow:none;border-bottom-color:var(--color-link)}.catalogue-series{margin-top:80px;padding-top:32px;border-top:1px solid var(--line)}.catalogue-series-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.catalogue-series-head span{font-size:var(--type-note);color:var(--series-accent,#b64400);font-weight:650;line-height:var(--leading-body)}.catalogue-series-head h3{font-size:var(--type-card);letter-spacing:var(--tracking-heading);margin:6px 0 4px;line-height:var(--leading-heading);font-weight:600}.catalogue-series-head p{font-size:var(--type-body);color:var(--muted);line-height:var(--leading-body)}.catalogue-series-head .text-link{font-size:var(--type-button);white-space:nowrap;line-height:1.4;font-weight:600}.catalogue-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:40px 22px;margin-top:32px}.catalogue-item{display:flex;flex-direction:column;color:var(--ink)}.catalogue-item:hover{text-decoration:none}.catalogue-item img{width:100%;height:auto;aspect-ratio:248/351;object-fit:contain;box-shadow:5px 9px 16px #0000001f;transition:transform .25s}.catalogue-item:hover img{transform:translateY(-4px)}.catalogue-item .badge{font-size:var(--type-note);color:var(--series-accent,#b64400);margin-top:16px;line-height:var(--leading-body)}.catalogue-item strong{font-size:var(--type-card);line-height:var(--leading-heading);margin-top:16px;font-weight:600}.catalogue-item .badge+strong{margin-top:4px}.catalogue-item small{font-size:var(--type-note);color:var(--muted);margin-top:6px;line-height:var(--leading-body)}
@media(max-width:800px){.pass-catalogue{padding:64px 0 72px}.pass-catalogue-head h2{font-size:var(--type-section);line-height:var(--leading-heading);font-family:var(--font-display);font-weight:700}.pass-catalogue-head p{font-size:var(--type-body);line-height:var(--leading-body)}.catalogue-series{margin-top:56px}.catalogue-series-head{display:block}.catalogue-series-head h3{font-size:var(--type-card);line-height:var(--leading-heading);font-weight:600}.catalogue-series-head .text-link{display:inline-block;margin-top:10px;font-size:var(--type-button);line-height:1.4;font-weight:600}.catalogue-items{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 14px}.catalogue-item strong{font-size:var(--type-card);line-height:var(--leading-heading);font-weight:600}.catalogue-item small{font-size:var(--type-note);line-height:var(--leading-body)}}
@media(prefers-reduced-motion:reduce){.catalogue-item img{transition:none}}
.tile-csat{background:#df807c;color:#262626}.tile-csat .eyebrow{color:#262626;font-weight:800}.tile-csat .tile-note{font-size:var(--type-note);color:#3a2a2a;margin-top:14px;line-height:var(--leading-body)}.tile-csat .button{background:var(--color-action);color:var(--color-on-action)}.tile-csat .button:hover{background:var(--color-action-hover);color:var(--color-on-action)}.tile-csat .button.outline{background:transparent;color:var(--color-text-primary);box-shadow:inset 0 0 0 1px var(--color-border-strong)}.tile-csat .button.outline:hover{background:var(--color-action);color:var(--color-on-action)}.tile-csat .tile-covers img{width:300px;box-shadow:0 30px 50px -24px #4a3a3473}
@media(max-width:800px){.tile-csat .tile-covers.single img{width:58vw;max-width:240px}}
.pass-card.is-upcoming{background:transparent;border:1px dashed var(--line)}.pass-card .rate.is-soon{background:#6e6e73}.pass-disclaimer{font-size:var(--type-note);line-height:var(--leading-body);color:var(--muted);margin-top:22px}.pass-card li span{white-space:nowrap}.pass-table th a{color:inherit;text-decoration:underline;text-decoration-color:var(--line)}
/* 360~400px 폰: 세 칸 목록에서 「공통수학1(상)」 같은 교재명이 칸(약 100px)을 넘지 않게 본문 크기로 줄인다. */
@media(max-width:400px){.catalogue-item strong{font-size:var(--type-body)}}
/* 홈 「전체 교재」 텍스트 링크(2026-10-28): 북웨이브·타일과 별개로 시리즈와 전체 목록을 보이는 글 링크로 둔다. */
.home-catalogue{padding:var(--section-space) 0;background:white}
.home-catalogue h2{font-family:var(--font-display);font-weight:700;font-size:var(--type-section);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);text-align:center}
.home-catalogue-list{list-style:none;margin:var(--content-gap) auto 0;padding:0;max-width:960px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-10);border-top:1px solid var(--line)}
.home-catalogue-list li{display:grid;gap:2px;padding:var(--space-4) 0;border-bottom:1px solid var(--line)}
.home-catalogue-list a{font-size:var(--type-card);font-weight:600;line-height:var(--leading-heading);color:var(--color-text-primary)}
.home-catalogue-list span{font-size:var(--type-note);line-height:var(--leading-body);color:var(--color-text-secondary)}
.home-catalogue-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2) var(--space-6);margin-top:var(--space-6)}
@media(max-width:700px){.home-catalogue-list{grid-template-columns:1fr}}
/* 수능직전 1회 배너 [신청하기]의 오픈 예정 확인창(2026-10-28): 동작은 csat-final.js의 공용 팝업 코드, 모양은 integrate.css의 사이트 공통 확인창. */
/* 홈 버튼 구성 통일(2026-10-28): 첫 화면 패스 배너 버튼도 타일 버튼과 같은 글자 크기·간격. /pass/ 배너는 그대로. */
.home #integrate-book-wave .iw-action{font-size:var(--type-button)}
.home #integrate-book-wave .iw-actions{gap:14px}
