:root{--ink:#182133;--muted:#4c5666;--blue:#002bff;--deep:#10245b;--paper:#f1f3f5;--rule:#d4dbe4;--white:#fff;--frame:min(1264px,calc(100% - 80px));color-scheme:light}
*,*::before,*::after{box-sizing:border-box}html{scroll-padding-top:1.5rem}body{margin:0;color:var(--ink);background:white;font:1rem/1.55 Arial,Helvetica,sans-serif}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #2252ff;outline-offset:4px}.frame{width:var(--frame);margin-inline:auto}.skip{position:absolute;left:1rem;top:-5rem;z-index:10;background:white;padding:.7rem}.skip:focus{top:1rem}.utility{background:var(--paper);border-bottom:1px solid var(--rule);font-size:.83rem}.utility .frame{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-block:8px}.utility a{text-decoration:none}.utility a:hover{text-decoration:underline}.live{font-weight:700;display:inline-flex;gap:.55em;align-items:center}.live::before{content:"";width:.52em;height:.52em;border-radius:100%;background:#a94832;flex:none}.live[data-open="true"]::before{background:#167145}.mast{display:flex;align-items:center;justify-content:space-between;min-height:90px;gap:18px}.logo{width:141px;flex:none}.main-nav{display:flex;align-items:center;gap:clamp(12px,2vw,28px)}.main-nav a{font-size:.91rem;font-weight:700;text-decoration:none;padding:12px 0;white-space:nowrap}.main-nav a:hover,.main-nav a[aria-current="page"]{color:var(--blue);text-decoration:underline;text-underline-offset:7px}.call{border:1px solid var(--ink);padding:9px 13px;text-decoration:none;font-size:.83rem;font-weight:700;white-space:nowrap}.call:hover{background:var(--ink);color:white}.nav-toggle{display:none}.nav-toggle[hidden], [hidden]{display:none!important}
.hero{display:grid;grid-template-columns: minmax(0,1fr) minmax(0,1.13fr);background:var(--deep);color:white;position:relative}.hero-copy{padding:clamp(28px,4.4vw,64px);align-self:center;min-width:0}.hero figure,.department figure{margin:0;min-width:0;position:relative}.hero figure img,.department figure img{width:100%;height:100%;object-fit:cover}.hero figure{min-height:460px}.hero figure img{object-position:54% center}.hero figcaption,.department figcaption{position:absolute;inset:auto auto 0 0;padding:7px 12px;background:var(--white);color:var(--ink);font-size:.74rem;font-weight:700}.hero h1,.department h1{font-size:clamp(2.9rem,5.2vw,5.6rem);line-height:.94;letter-spacing:-.075em;margin:0 0 .34em;text-wrap:balance}.hero p,.department p{max-width:37ch;margin:0 0 1.3rem}.hero .address-line,.department .address-line{font-size:.84rem;font-weight:700;margin-bottom:1rem;letter-spacing:.015em}.hero .address-line{color:#d3deff}.hero .hero-copy>p:not(.address-line),.department.deneigement .hero-copy>p:not(.address-line){color:#e2e9fa}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;gap:.8em;text-decoration:none;background:var(--blue);color:white;padding:.7rem 1rem;font-weight:700;border:1px solid transparent;cursor:pointer}.button:hover{background:#1026b7}.button.light{background:white;color:var(--deep)}.button.light:hover{background:#e4ebff}.button.outline{background:transparent;color:var(--ink);border-color:var(--ink)}.button.outline:hover{background:var(--paper)}.hero-links{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.hero-links>a:not(.button){font-weight:700;text-underline-offset:4px}.arrow{font-size:1.14em;line-height:1}
.quick{display:grid;grid-template-columns:1fr 1fr 1fr;border:1px solid var(--rule);border-top:4px solid var(--blue)}.quick>a{display:flex;gap:13px;align-items:center;min-width:0;text-decoration:none;padding:15px 20px}.quick>a+a{border-left:1px solid var(--rule)}.quick>a:hover{background:var(--paper)}.quick strong,.quick small{display:block}.quick small{color:var(--muted)}.icon{width:24px;height:24px;flex:none;color:var(--blue)}
.section{padding-block:clamp(44px,6.6vw,90px)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px}.section-head p{max-width:42ch;margin:0;color:var(--muted)}h2{font-size:clamp(2rem,4.1vw,3.8rem);line-height:1.02;letter-spacing:-.06em;margin:0 0 .25em}h3{font-size:1.35rem;line-height:1.18;letter-spacing:-.03em;margin:0 0 .35em}.departments{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.department-card{text-decoration:none;display:flex;flex-direction:column;border-bottom:1px solid var(--rule);min-width:0}.card-photo{aspect-ratio:1.45;overflow:hidden;background:var(--paper)}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.department-card:hover img{transform:scale(1.035)}.department-card:hover h3{color:var(--blue)}.card-copy{display:grid;grid-template-columns:1fr auto;gap:0 8px;padding:15px 0 18px}.card-copy p{grid-column:1/-1;margin:0;color:var(--muted);font-size:.94rem}.card-copy .arrow{color:var(--blue)}
.story{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(30px,7vw,98px);align-items:center}.story img{width:100%;aspect-ratio:1.43;object-fit:cover}.story p{max-width:58ch}.story a{color:var(--blue);font-weight:700;text-underline-offset:4px}.visit{background:var(--paper);border-top:1px solid var(--rule)}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,6vw,80px);align-items:start}.visit address{font-style:normal;margin:1em 0}.visit a:not(.button){text-underline-offset:4px}.hours-table{width:100%;border-collapse:collapse;text-align:left;font-size:.94rem;table-layout:auto}.hours-table th,.hours-table td{border-bottom:1px solid var(--rule);padding:10px 4px}.hours-table th{padding-right:16px}.foot{background:#182133;color:#edf0f6}.foot .frame{display:grid;grid-template-columns:1fr auto;gap:12px 30px;padding-block:34px}.foot p{margin:0}.foot nav{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.86rem}.foot a{text-underline-offset:4px}.foot .note{font-size:.8rem;color:#c4cddb}
.department{display:grid;grid-template-columns:.98fr 1fr;background:var(--paper);min-height:355px}.department .hero-copy{padding:clamp(24px,4vw,52px)}.department h1{font-size:clamp(2.7rem,5.2vw,5.35rem)}.department figure img{position:absolute;inset:0}.department figure{min-height:260px}.department.bois{background:#f1ece1}.department.bois figure img{object-fit:contain;background:#e3ded4}.department.deneigement{background:var(--deep);color:white}.department.deneigement .address-line{color:#d3deff}.department.location{background:#edf1f7}.department .address-line{color:var(--blue)}.subnav{display:flex;gap:8px 24px;flex-wrap:wrap;padding:13px 0;border-block:1px solid var(--rule);margin-top:18px}.subnav a{display:inline-block;font-size:.94rem;font-weight:700;text-decoration:none;padding:.3rem 0}.subnav a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:4px}.flow{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);gap:clamp(26px,6vw,82px)}.flow p{color:var(--muted);max-width:58ch}.plain-list{padding:0;margin:0;list-style:none}.plain-list li{padding:12px 0;border-bottom:1px solid var(--rule)}.plain-list strong{display:block}.plain-list span{color:var(--muted);font-size:.95rem}.form-section{margin-bottom:clamp(42px,6vw,72px)}.form-section .lb-widget{max-width:none;margin:0;background:var(--paper);border-radius:0;border-color:var(--rule);border-top:4px solid var(--blue)}.form-section .lb-widget :is(input,select,textarea,button){border-radius:3px}.form-section .lb-products label{border-radius:3px}.form-section .lb-widget button:hover{background:#1026b7}
.admin-area{max-width:800px}.admin-area .lb-widget{margin:20px 0;max-width:none;border-radius:0}.admin-area .button{font-size:.92rem}.admin-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-area .admin-image{width:min(100%,420px);height:180px;object-fit:cover}.notice{border-left:3px solid var(--blue);padding-left:12px;color:var(--muted)}.muted{color:var(--muted)}
@media(max-width:1050px){:root{--frame:calc(100% - 48px)}.main-nav{gap:15px}.mast>.call{display:none}.hero figure{min-height:400px}.quick>a{padding-inline:14px}}
@media(max-width:760px){:root{--frame:calc(100% - 32px)}.mast{min-height:69px;flex-wrap:wrap;gap:0 12px;padding-block:8px}.logo{width:112px}.nav-toggle:not([hidden]){display:inline-flex;align-items:center;gap:.5em;min-height:42px;padding:6px 10px;background:white;border:1px solid var(--ink);color:var(--ink)}.main-nav{order:3;width:100%;display:flex;flex-wrap:wrap;gap:0 14px}.main-nav a{padding:8px 0}.main-nav[data-collapsed="true"]{display:none}.utility .frame{gap:5px 12px;flex-wrap:wrap}.hero,.department{grid-template-columns:1fr}.hero figure{min-height:0;height:clamp(215px,54vw,355px)}.hero h1{font-size:clamp(3.15rem,12vw,5.2rem)}.hero-copy{padding:28px 21px 31px}.quick{grid-template-columns:1fr}.quick>a+a{border-left:0;border-top:1px solid var(--rule)}.quick>a{padding:10px 14px}.section-head{align-items:start;flex-direction:column;gap:8px}.departments{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.story,.visit-grid,.flow{grid-template-columns:1fr}.story{gap:20px}.foot .frame{grid-template-columns:1fr}.department figure{min-height:0;height:clamp(170px,47vw,270px)}.hours-table th,.hours-table td{font-size:.86rem}}
@media(max-width:380px){.departments{gap:10px}.card-copy p{font-size:.85rem}.card-copy h3{font-size:1.1rem}.hero-links{gap:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
