.ca-sede-page{--sede-pad:clamp(22px,4.8vw,74px);color:var(--ink);background:var(--paper)}
.ca-sede-wrap{width:min(1180px,calc(100% - 2 * var(--sede-pad)));margin-inline:auto}
.ca-sede-hero{background:var(--soft);border-bottom:1px solid var(--line)}
.ca-sede-crumb{padding:22px 0 15px;color:var(--muted);font-size:.89rem}
.ca-sede-crumb a,.ca-sede-foot a,.ca-sede-editorial a,.sede-open{font-weight:600;text-decoration:underline;text-underline-offset:.22em;text-decoration-color:var(--rust)}
.ca-sede-hero-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(24px,5vw,78px);padding:15px 0 clamp(32px,5vw,70px)}
.ca-sede-page .ca-overline{font-size:.86rem;line-height:1.4;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--rust);margin:0 0 14px}
.ca-sede-page h1{font:550 clamp(47px,5.5vw,79px)/1.02 Ubuntu,Arial,sans-serif;letter-spacing:-.05em;margin:0 0 17px}
.ca-sede-page address{font-style:normal;font-weight:500;font-size:clamp(18px,2vw,23px);line-height:1.45}
.ca-sede-page .ca-sede-lead{max-width:43ch;font-size:1.09rem;margin:16px 0 22px;line-height:1.52}
.ca-sede-page .ca-sede-buttons{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.ca-sede-page .button{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 17px;min-height:46px;font:600 1rem/1.3 Ubuntu,Arial,sans-serif;border-radius:5px;text-decoration:none}
.ca-sede-page .ca-primary{background:var(--orange);color:var(--ink)}
.ca-sede-page .ca-secondary{background:var(--ink);color:white}
.ca-mapbox{background:white;margin:0;border:1px solid var(--line);border-radius:7px;overflow:hidden}
.ca-mapbox img{width:100%;height:auto;aspect-ratio:1060/680;object-fit:cover}
.ca-mapbox figcaption{font-size:.78rem;padding:6px 12px;display:flex;justify-content:space-between;gap:8px;color:var(--muted);flex-wrap:wrap}
.ca-mapbox figcaption a{text-decoration:underline;text-underline-offset:.15em}
.ca-sede-content{padding:clamp(38px,5vw,70px) 0}
.ca-sede-page h2{font-size:clamp(29px,3vw,41px);line-height:1.16;margin:0 0 13px}
.ca-sede-main-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,6vw,90px);align-items:start}
.ca-sede-page ul.ca-course-list{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:25px}
.ca-course-list li{margin:0;border-top:1px solid var(--line)}
.ca-course-list a{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:54px;font-weight:500;line-height:1.35;padding:7px 0}
.ca-course-list a:hover,.ca-course-list a:focus-visible{color:var(--rust);text-decoration:underline}
.ca-sede-editorial{border-top:3px solid var(--rust);padding:22px 24px;background:var(--soft)}
.ca-sede-editorial h2{font-size:clamp(23px,2.5vw,32px)}
.ca-sede-editorial p{margin:0 0 10px}
.ca-sede-travel{margin-top:clamp(36px,6vw,70px);padding-top:30px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(20px,5vw,74px);align-items:start}
.ca-sede-travel address{font-size:1.05rem}
.ca-sede-travel p{margin:12px 0}
.ca-ingresso-foto{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ca-ingresso-foto figure{margin:0}
.ca-ingresso-foto img{display:block;width:100%;height:auto;border-radius:5px}
.ca-ingresso-foto figcaption{margin-top:8px;font-size:.97rem;line-height:1.35;font-weight:500}
@media(max-width:540px){.ca-ingresso-foto{grid-template-columns:1fr;gap:22px}}
.ca-sede-foot{margin-top:30px;border-top:1px solid var(--line);padding-top:20px}
.ca-foto-vetrine{margin:0;min-width:0;scroll-margin-top:90px}
.ca-foto-vetrine iframe{display:block;width:100%;height:auto;aspect-ratio:4/3;min-height:250px;border:0;border-radius:5px}
.ca-foto-vetrine figcaption{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:.97rem;line-height:1.4;font-weight:500}
.ca-foto-vetrine figcaption a{font-size:.86rem}
.ca-sede-travel a:not(.button){text-decoration:underline;text-underline-offset:.2em}
.ca-site-link{display:inline-flex;align-items:center;gap:.5ch;min-height:44px;font-weight:600;text-underline-offset:.25em;text-decoration:underline}
.locations .ca-site-link{color:inherit}.sede-card .ca-site-link{color:var(--rust)}
.ca-hub-card{position:relative}
.ca-hub-card .ca-site-link:after{content:"";position:absolute;inset:0}
.ca-hub-card .sede-directions{position:relative;z-index:1}
.ca-hub-card:focus-within{outline:2px solid var(--rust);outline-offset:3px}
@media(max-width:780px){.ca-sede-hero-grid,.ca-sede-main-grid,.ca-sede-travel{grid-template-columns:1fr}.ca-sede-page .ca-sede-hero-grid{gap:23px}.ca-sede-page h1{font-size:clamp(43px,9vw,59px)}.ca-sede-maprow{max-width:620px}}
@media(max-width:470px){.ca-sede-wrap{width:calc(100% - 36px)}.ca-sede-page ul.ca-course-list{grid-template-columns:1fr}.ca-sede-page .ca-sede-buttons{gap:9px}.ca-sede-page .button{padding:12px 13px}.ca-sede-travel{gap:16px}.ca-sede-editorial,.ca-sede-page .ca-street{padding:16px 18px}}
