.detail-page { background:#f4f5f3; }
.detail-topbar { position:sticky;top:0;z-index:15;background:#edf0ee;border-bottom:1px solid #c3cccf; }
.detail-topbar > .wrap { display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:12px; }
.back-link { display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:#fff;border:1px solid #99a7af;padding:8px 20px;font-size:15px;white-space:nowrap; }
.back-link:hover { border-color:#a4512e;background:#f5ebe4; }
.detail-topbar nav { display:flex;align-items:center;gap:12px;font-size:14px;color:#52616a; }
.detail-topbar nav strong { font-weight:500; }
.detail-heading { padding-block:35px 32px; }
.detail-heading h1 { font-size:clamp(30px,3.4vw,46px);margin-block:12px 16px;line-height:1.35; }
.detail-heading h1 > span { display:inline-block; }
.home-opening-teasers article { padding:0;border:0;background:transparent; }
.detail-heading > p:last-child { font-size:17px;color:#56646a;max-width:900px;line-height:1.8; }
.detail-section { padding-block:35px;background:#fff;border-block:1px solid #cbd4d6; }
.detail-section-heading { margin-bottom:22px; }
.detail-section-heading h2 { margin-top:10px;font-size:32px; }
.detail-section > p { font-size:16px;line-height:1.9;max-width:950px;color:#526168; }
.detail-notice { padding:15px 18px!important;border-left:3px solid #b57851;background:#eeebe3;color:#53473e!important;font-size:15px!important;line-height:1.8;margin-block:22px!important; }
.detail-photo { border:1px solid #9aadb6;padding:9px;background:#e7eceb; }
.detail-photo img { width:100%;height:auto;object-fit:contain; }
.detail-photo figcaption { font-size:12px;color:#586970;line-height:1.7;padding-top:8px; }
.camp-detail-inner { display:grid;grid-template-columns:1fr 1.1fr;gap:38px;align-items:center; }
.camp-detail-inner h2 { font-size:34px;line-height:1.4;margin-top:13px; }
.camp-detail-list { list-style:none;padding:0;margin:24px 0; }
.camp-detail-list li { border-bottom:1px solid #c9d4d8;padding:12px 0;font-size:16px; }
.camp-detail-list li:before { content:'／';color:#a7653b;margin-right:10px; }
.related-directions { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
.related-directions a { padding:16px;border:1px solid #bac8ce;background:#eaf0f0;font-size:15px;line-height:1.6; }
.related-directions a:hover { border-color:#b27148;background:#f2e8de; }
.detail-riders { display:grid;grid-template-columns:1fr 1fr;gap:22px; }
.detail-riders article { display:grid;grid-template-columns:40% 1fr;gap:20px;align-items:start;background:#edf1ef;border:1px solid #c6cfd2;padding:18px; }
.detail-riders img { width:100%;height:310px;object-fit:contain;background:#d7dddc; }
.detail-riders h3 { font-size:27px;margin-top:9px; }
.detail-riders strong { display:block;font-size:15px;margin:14px 0;line-height:1.7; }
.detail-riders div > p:last-child { font-size:16px;line-height:1.85;color:#53636b; }
.detail-english { font-size:12px;color:#66767c;letter-spacing:.06em; }
.detail-day-grid { display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:25px 0; }
.detail-day-grid article { padding:23px;border:1px solid #bac8d0;background:#e8eeee; }
.detail-day-grid span { font-size:14px;letter-spacing:.06em;color:#7d5338; }
.detail-day-grid h3 { font-size:23px;margin:11px 0; }
.detail-day-grid p { color:#51636b;font-size:16px;line-height:1.85; }
.detail-page .opening-lectures { padding-top:0; }
.detail-page .lecture-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.detail-page .lecture-grid article { scroll-margin-top:110px;padding:25px; }
.detail-page .lecture-grid h4 { font-size:23px; }
.detail-page .rider-row { display:none; }
.detail-bottom { display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:30px; }
.card-detail-link { display:inline-block;font-size:15px;text-decoration:underline;text-underline-offset:6px;margin-top:20px; }
.card-detail-link:hover { text-decoration-color:#b26744; }
.home-opening-teasers { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:25px; }
.home-opening-teasers a { display:block;background:#30434d;border:1px solid #657b86;border-top:3px solid #bd9977;padding:17px;color:#eef3f3; }
.home-opening-teasers .eyebrow { font-size:12px;color:#dbc1a9; }
.home-opening-teasers strong { display:block;font-size:18px;line-height:1.55;margin-top:9px; }
.home-opening-teasers small { display:block;font-size:14px;color:#c3d0d7;margin-top:10px; }
.home-opening-teasers a:hover { background:#3a525e; }
.camp-link-grid { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px; }
.camp-link-card { display:flex;flex-direction:column;min-width:0;padding:20px 18px;background:#eff3f1;border:1px solid #bdced5;color:#172b35; }
.camp-link-card > span { color:#9b6746;font-size:12px;letter-spacing:.07em; }
.camp-link-card h3 { font-size:23px;margin-top:12px; }
.camp-link-card > p { font-size:16px;line-height:1.75;color:#52676f;margin-top:11px; }
.camp-link-card > small { font-size:14px;border-top:1px solid #bac8ce;padding-top:12px;margin-top:18px; }
.camp-link-card:hover { background:#f6e9dd;border-color:#c58b65; }
.home-section-link { display:inline-flex;align-items:center;min-height:44px;padding:9px 18px;margin-top:18px;font-size:15px;border:1px solid #889ca7; }
.home-section-link:hover { border-color:#b7774d; }
.home-opening-summary .event-copy a + a { margin-left:15px; }
.home-visit-summary { display:flex;align-items:center;justify-content:space-between;gap:28px; }
.home-visit-summary h2 { font-size:30px;margin:10px 0; }
.home-visit-summary p { color:#5b6c74;font-size:16px; }
.home-visit-summary .button { flex-shrink:0; }
.home-visit-summary .visit-summary-copy { max-width:850px; }
@media(max-width:1150px){.camp-link-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.camp-link-card{padding:18px}.detail-riders article{grid-template-columns:1fr}.detail-riders img{height:330px}.home-opening-teasers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.detail-heading{padding-block:28px}.detail-topbar nav{font-size:13px;gap:8px}.camp-detail-inner{grid-template-columns:1fr;gap:25px}.detail-section{padding-block:30px}.detail-riders{gap:18px}.related-directions{grid-template-columns:repeat(2,minmax(0,1fr))}.home-visit-summary{display:block}.home-visit-summary .button{margin-top:20px}}
@media(max-width:600px){.detail-topbar>.wrap{gap:12px;padding-block:9px}.back-link{padding-inline:14px;font-size:14px}.detail-topbar nav{font-size:12px;gap:5px;flex-wrap:wrap;justify-content:flex-end;line-height:1.6}.detail-heading{padding-block:25px}.detail-heading h1{font-size:30px}.detail-heading>p:last-child{font-size:16px}.detail-section-heading h2{font-size:27px}.camp-detail-inner h2{font-size:28px}.detail-riders{grid-template-columns:1fr}.detail-riders article{padding:18px}.detail-riders img{height:300px}.detail-riders h3{font-size:28px}.detail-day-grid{grid-template-columns:1fr;gap:15px}.detail-page .lecture-grid{grid-template-columns:1fr}.detail-page .lecture-grid article{padding:22px}.detail-page .lecture-grid h4{font-size:22px}.detail-bottom{flex-wrap:wrap}.related-directions a{padding:14px;font-size:14px}.camp-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.camp-link-card{padding:16px 13px}.camp-link-card:last-child{grid-column:1/-1}.camp-link-card h3{font-size:20px}.camp-link-card p{font-size:15px;margin-top:9px}.camp-link-card>small{font-size:14px;margin-top:13px;padding-top:9px}.home-opening-teasers{gap:10px}.home-opening-teasers a{padding:15px 13px}.home-opening-teasers strong{font-size:17px}.home-opening-summary .event-copy a + a{margin-left:0;display:inline-block;margin-top:16px}.home-visit-summary h2{font-size:27px}.home-section-link{font-size:15px}.detail-photo{padding:8px}}
@media(max-width:360px){.detail-heading h1{font-size:27px}.detail-topbar nav strong{max-width:140px}.related-directions{grid-template-columns:1fr}.home-opening-teasers{grid-template-columns:1fr}.camp-link-card h3{font-size:18px}}
