.saxo-page{background:#f6f8fb;color:#172632}
.saxo-wrap{width:min(calc(100% - 40px),1080px);margin:0 auto}
.saxo-back{display:inline-flex;margin-bottom:18px;padding:9px 14px;border:1px solid #d9e2ea;border-radius:8px;background:#fff;color:#344956;font-weight:500;text-decoration:none}
.saxo-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(200px,.65fr);gap:40px;align-items:center;background:#fff;border:1px solid #e1e7eb;border-radius:12px;padding:30px;box-shadow:none}
.saxo-eyebrow{margin:0 0 10px;font-size:.75rem;letter-spacing:.09em;text-transform:uppercase;color:#537286;font-weight:600}
.saxo-hero h1{margin:0 0 12px;font-size:clamp(2rem,3.4vw,3rem);line-height:1.1;letter-spacing:-.025em;font-weight:600}
.saxo-lead{margin:0;color:#5d6b79;font-size:1rem;line-height:1.65;max-width:65ch}
.saxo-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.saxo-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;border-radius:7px;background:#006a9f;color:#fff;text-decoration:none;font-size:.9rem;font-weight:500}
.saxo-btn.secondary{background:#f1f5f8;color:#38576b}
.saxo-logo-card{display:grid;place-items:center;border-radius:8px;background:#111622;overflow:hidden}
.saxo-logo-card img{display:block;width:100%;height:auto;object-fit:contain}
.saxo-section{margin-top:32px;padding:0;scroll-margin-top:100px}
.saxo-section h2{margin:0 0 16px;font-size:clamp(1.4rem,2.3vw,1.8rem);line-height:1.25;letter-spacing:-.02em;font-weight:550}
.saxo-about-grid,.saxo-tips-grid,.saxo-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.saxo-card,.saxo-related{background:#fff;border:1px solid #e1e7eb;border-radius:10px;padding:18px;box-shadow:none}
.saxo-card h3,.saxo-related strong{margin:0 0 8px;color:#263e4c;font-size:1rem;font-weight:550}
.saxo-card p,.saxo-related span{margin:0;color:#5d6b79;font-size:.94rem;line-height:1.6}
.saxo-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.saxo-gallery figure{margin:0;overflow:hidden;background:transparent;border:0;border-radius:0;box-shadow:none}
.saxo-gallery img{display:block;width:100%;height:auto;object-fit:contain;object-position:center top;border-radius:9px}
.saxo-gallery figcaption{padding:10px 0;color:#617481;font-size:.82rem;line-height:1.5}
.saxo-schedule-head{display:block;margin-bottom:20px}
.saxo-schedule-head h2{margin-bottom:8px}
.saxo-schedule-head p{margin:0;color:#657682;font-size:.9rem;line-height:1.5;max-width:80ch}
.saxo-program{overflow:hidden;border:1px solid #dce5eb;border-radius:10px;background:#fff}
.saxo-program-month{padding:0;margin:0}
.saxo-program-month+.saxo-program-month{border-top:1px solid #dce5eb}
.saxo-program-month summary{display:flex;align-items:center;gap:16px;padding:17px 20px;min-height:58px;list-style:none;cursor:pointer;color:#233d4d;background:#f8fafb}
.saxo-program-month summary::-webkit-details-marker{display:none}
.saxo-program-month summary:hover{background:#f0f5f8}
.saxo-program-month summary:focus-visible,.saxo-btn:focus-visible{outline:2px solid #006a9f;outline-offset:-3px}
.saxo-program-month summary h3{margin:0;font-size:1.05rem;font-weight:550;line-height:1.3}
.saxo-month-count{margin-left:auto;white-space:nowrap;font-size:.8rem;font-weight:400;color:#687d8b}
.saxo-chevron{width:7px;height:7px;margin-left:3px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);flex:none}
.saxo-program-month[open] .saxo-chevron{transform:rotate(225deg);margin-top:5px}
.saxo-program-table{border-collapse:collapse;table-layout:fixed;width:100%;margin:0;font-size:.94rem;line-height:1.45;text-align:left}
.saxo-program-table thead th{padding:9px 20px;color:#73828c;font-size:.73rem;letter-spacing:.04em;font-weight:500;background:#fff;border-bottom:1px solid #e9eef2}
.saxo-program-table thead th:first-child{width:112px}
.saxo-program-table thead th:nth-child(2){width:96px}
.saxo-program-table tbody+tbody{border-top:1px solid #e9eef2}
.saxo-program-table td,.saxo-program-table .saxo-day{padding:10px 20px;vertical-align:top}
.saxo-program-table .saxo-day{font-size:.86rem;font-weight:500;color:#415766;white-space:nowrap}
.saxo-day span{display:inline-block;min-width:2.5em;color:#758590;font-weight:400}
.saxo-program-table .saxo-time{font-variant-numeric:tabular-nums;font-size:.87rem;font-weight:400;color:#5b707d;white-space:nowrap}
.saxo-program-table .saxo-act{font-weight:400;color:#263e4c;overflow-wrap:anywhere}
.saxo-program-table tbody tr+tr td{padding-top:0}
.saxo-empty{padding:20px;color:#617481}
.saxo-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.saxo-tips-grid ul{margin:0;padding-left:18px;color:#5d6b79;font-size:.94rem;line-height:1.65}
.saxo-related{text-decoration:none;color:inherit}
.saxo-related:hover{border-color:#9ebdce;text-decoration:none}
@media(max-width:760px){.saxo-wrap{width:calc(100% - 32px)}.saxo-hero{grid-template-columns:1fr;gap:22px;padding:24px}.saxo-logo-card{max-width:270px}.saxo-about-grid,.saxo-tips-grid,.saxo-related-grid{grid-template-columns:1fr}.saxo-gallery{gap:14px}.saxo-section{margin-top:28px}}
@media(max-width:480px){.saxo-wrap{width:calc(100% - 24px)}.saxo-hero{padding:20px}.saxo-logo-card{max-width:220px}.saxo-gallery{grid-template-columns:1fr}.saxo-program-month summary{gap:10px;padding:15px 12px}.saxo-program-month summary h3{font-size:1rem}.saxo-program-table thead th{padding:8px 10px}.saxo-program-table thead th:first-child{width:80px}.saxo-program-table thead th:nth-child(2){width:66px}.saxo-program-table td,.saxo-program-table .saxo-day{padding:9px 10px}.saxo-day span{min-width:2.2em}.saxo-program-table{font-size:.87rem}.saxo-program-table .saxo-day,.saxo-program-table .saxo-time{font-size:.8rem}}
