@import url('/styles-photo.css?v=20261001-alberta');

/* A more connected, editorial direction for the staging-only design. */
.hero{position:relative;display:flex;align-items:end;width:100%;min-height:min(790px,calc(100svh - 100px));padding:110px 0 88px;isolation:isolate;overflow:hidden;background:var(--ink);color:var(--white)}
.hero-backdrop{position:absolute;z-index:-2;inset:0;overflow:hidden}
.hero-backdrop img{width:100%;height:100%;object-fit:cover;object-position:center 52%}
.hero::after{content:"";position:absolute;z-index:-1;inset:0;background:rgba(12,13,14,.63)}
.hero-copy{width:min(calc(100% - 64px),var(--max));margin-inline:auto}
.hero .eyebrow{color:#8ce8e1}
.hero h1{max-width:780px;margin-bottom:28px;font-size:clamp(4rem,6vw,6.3rem);line-height:.99;letter-spacing:-.065em;text-wrap:balance}
.hero h1 em{color:var(--white);font-style:normal;text-decoration:underline;text-decoration-color:var(--teal);text-decoration-thickness:.07em;text-underline-offset:.13em}
.hero-lede{max-width:640px;color:var(--white);font-size:clamp(1.1rem,1.5vw,1.4rem);line-height:1.5}
.hero-location{margin-top:42px;color:#e0e5e4;font-size:13px}
.hero .text-link{border-color:#8ce8e1}
.hero-scroll{position:absolute;right:max(32px,calc((100vw - var(--max))/2));bottom:40px;display:flex;gap:22px;align-items:center;color:var(--white);font-size:13px;font-weight:700}
.hero-scroll span{font-size:23px}
.signal-band{background:var(--white);border:0}
.signal-inner{min-height:190px;justify-content:center;gap:25px;font-size:clamp(1rem,1.65vw,1.5rem);letter-spacing:-.02em}
.signal-mark{font-size:32px;line-height:1}
#services{padding-top:65px;padding-bottom:105px}
#services .section-heading{max-width:960px;margin-bottom:70px}
#services .section-heading h2{max-width:900px}
.service-grid{display:block;position:relative}
.service-card{position:sticky;top:88px;z-index:1;display:grid;grid-template-columns:1fr .9fr;align-items:stretch;gap:0;min-height:580px;margin:0 0 62px;padding:0;overflow:hidden;border:0;border-radius:22px;background:var(--mist);box-shadow:0 18px 42px #0c0d0e14;transform:none;transition:none}
.service-card:hover{transform:none;border:0;box-shadow:none}
.service-card:nth-child(2){z-index:2;background:var(--ink);color:var(--white)}
.service-card:nth-child(3){z-index:3;background:var(--white);border:0}
.service-card:nth-child(4){z-index:4;background:#ecefef}
.service-story{display:flex;flex-direction:column;align-items:start;justify-content:center;max-width:650px;padding:65px 65px 65px 75px}
.service-index{margin-bottom:30px;color:var(--teal);font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.service-card h3{min-height:0;max-width:600px;margin:0 0 25px;font-size:clamp(3.2rem,4.7vw,5.7rem);line-height:.98;letter-spacing:-.055em;text-wrap:balance}
.service-card p{max-width:530px;margin:0;color:#354146;font-size:clamp(1rem,1.4vw,1.25rem);line-height:1.52}
.service-card a{margin-top:38px;padding:0 0 5px;border:0;border-bottom:2px solid var(--teal);color:var(--ink);font-size:16px}
.service-card:nth-child(2) p{color:#d2dddd}
.service-card:nth-child(2) a{color:var(--white)}
.service-card>img{width:100%;height:100%;min-height:450px;object-fit:cover;border-radius:0}
.service-card:nth-child(3)>img{object-position:35% center}
.service-type{align-self:center;padding:30px;color:var(--teal);font-size:clamp(3.7rem,6vw,7.4rem);font-weight:700;line-height:.95;letter-spacing:-.065em}
.service-type span{color:inherit}
.service-type .training-action{color:var(--wine)}
.capabilities-section{padding-top:110px;padding-bottom:120px}
.capabilities-section .section-heading{max-width:760px;margin-bottom:42px}
.capabilities-card{display:grid;grid-template-columns:1fr .9fr;min-height:520px;overflow:hidden;border:1px solid var(--border);border-radius:22px;background:var(--white);box-shadow:0 18px 42px #0c0d0e0c}
.capability-list{align-self:center;padding:55px 60px}
.capability-list details{border-bottom:1px solid var(--border)}
.capability-list details:first-child{border-top:1px solid var(--border)}
.capability-list summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:76px;cursor:pointer;list-style:none;font-size:clamp(1.1rem,1.5vw,1.35rem);font-weight:700;letter-spacing:-.025em}
.capability-list summary::-webkit-details-marker{display:none}
.capability-list summary span{flex:none;color:var(--teal);font-size:18px;transition:transform .2s ease}
.capability-list details[open] summary span{transform:rotate(180deg)}
.capability-list details p{max-width:440px;margin:-5px 0 24px;color:#435057;line-height:1.55}
.capabilities-visual{position:relative;min-height:460px;overflow:hidden;background:var(--ink);color:var(--white)}
.capabilities-visual img{width:100%;height:100%;object-fit:cover;object-position:center}
.capabilities-visual p{position:absolute;z-index:1;left:25px;right:25px;bottom:20px;width:max-content;max-width:calc(100% - 50px);margin:0;padding:17px 20px;border-radius:12px;background:rgba(12,13,14,.9);font-size:clamp(1.9rem,3vw,3.1rem);font-weight:700;line-height:1.05;letter-spacing:-.05em}
.capabilities-visual strong{color:#7ae1da}
.approach-section{background:var(--white);border-top:1px solid var(--border)}
.approach-grid{gap:9%}
.approach-steps{margin-top:22px}
.step{padding:32px 0}
.training-section{padding-block:95px 135px}
.training-panel{grid-template-columns:1fr .7fr;align-items:center;min-height:520px;padding:75px;gap:8%;border-radius:22px}
.training-note{max-width:490px}
.training-note span{display:block;color:var(--white);font-size:clamp(3.4rem,5.5vw,6.3rem);font-weight:700;line-height:.95;letter-spacing:-.06em}
.training-note p{max-width:330px;margin:25px 0 0!important;color:#c5d0cf!important;font-size:17px!important}
.about-section{grid-template-columns:1fr;gap:52px;padding-top:18px}
.about-copy{display:grid;grid-template-columns:.85fr 1.15fr;column-gap:8%;align-items:start}
.about-copy .eyebrow{grid-column:1;grid-row:1}
.about-copy h2{grid-column:1;grid-row:2 / 5;max-width:470px}
.about-copy p:not(.eyebrow){grid-column:2}
.about-copy p:not(.eyebrow):nth-of-type(2){grid-row:2}
.about-copy p:not(.eyebrow):nth-of-type(3){grid-row:3}
.about-copy .text-link{grid-column:2;grid-row:4}
.alberta-collage{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(5,115px);gap:0;margin:0;padding:0;isolation:isolate}
.alberta-collage .collage-photo{position:relative;min-width:0;min-height:0;overflow:hidden;background:#bdc9c7}
.alberta-collage img{width:100%;height:100%;object-fit:cover}
.alberta-collage .collage-photo:nth-child(1){grid-area:1 / 1 / 3 / 5}
.alberta-collage .collage-photo:nth-child(2){grid-area:1 / 5 / 3 / 8;z-index:4;transform:scale(1.07);transform-origin:45% 55%}
.alberta-collage .collage-photo:nth-child(3){grid-area:1 / 8 / 3 / 13}
.alberta-collage .collage-photo:nth-child(4){grid-area:3 / 1 / 4 / 4;z-index:2;transform:scale(1.065);transform-origin:55% 45%}
.alberta-collage .collage-photo:nth-child(5){grid-area:3 / 4 / 4 / 7}
.alberta-collage .collage-photo:nth-child(6){grid-area:3 / 7 / 4 / 10}
.alberta-collage .collage-photo:nth-child(7){grid-area:3 / 10 / 4 / 13}
.alberta-collage .collage-photo:nth-child(8){grid-area:4 / 1 / 6 / 3}
.alberta-collage .collage-photo:nth-child(9){grid-area:4 / 3 / 6 / 5;z-index:3;transform:scale(1.07);transform-origin:55% 40%}
.alberta-collage .collage-photo:nth-child(10){grid-area:4 / 5 / 6 / 7}
.alberta-collage .collage-photo:nth-child(11){grid-area:4 / 7 / 5 / 10;z-index:2;transform:scale(1.065);transform-origin:40% 55%}
.alberta-collage .collage-photo:nth-child(12){grid-area:4 / 10 / 5 / 13}
.alberta-collage .collage-photo:nth-child(13){grid-area:5 / 7 / 6 / 10}
.alberta-collage .collage-photo:nth-child(14){grid-area:5 / 10 / 6 / 13}
.alberta-collage .collage-photo:nth-child(2),.alberta-collage .collage-photo:nth-child(4),.alberta-collage .collage-photo:nth-child(9),.alberta-collage .collage-photo:nth-child(11){box-shadow:0 12px 24px #0c0d0e55}
.alberta-collage figcaption{grid-column:1 / -1;margin:13px 0 0;color:#394448;font-size:clamp(1rem,1.4vw,1.25rem);font-weight:700;letter-spacing:-.02em}

@media (max-width:900px){
  .service-card{grid-template-columns:1fr .82fr;min-height:500px}
  .service-story{padding:45px}
  .service-card h3{font-size:clamp(2.8rem,5vw,4.5rem)}
  .service-card>img{min-height:350px}
  .training-panel{padding:55px}
  .capability-list{padding:35px}
}
@media (max-width:760px){
  .hero{min-height:730px;padding:90px 0 82px}
  .hero-copy{width:min(calc(100% - 36px),var(--max))}
  .hero h1{font-size:clamp(3.4rem,10vw,5rem)}
  .hero-backdrop img{object-position:47% center}
  .hero::after{background:rgba(12,13,14,.68)}
  .hero-scroll{display:none}
  .signal-inner{min-height:0;justify-content:start;padding-block:45px;font-size:20px}
  #services{padding-block:50px 75px}
  #services .section-heading{margin-bottom:40px}
  .service-card{position:relative;top:auto;grid-template-columns:1fr;min-height:0;gap:0;margin-bottom:24px}
  .service-story{padding:38px 28px}
  .service-card h3{font-size:clamp(2.8rem,8vw,4rem)}
  .service-card p{font-size:17px}
  .service-card>img{height:310px;min-height:0}
  .service-type{font-size:clamp(4rem,12vw,6rem)}
  .capabilities-section{padding-block:35px 80px}
  .capabilities-card{grid-template-columns:1fr}
  .capabilities-visual{min-height:310px}
  .capabilities-visual img{height:310px}
  .training-panel{grid-template-columns:1fr;min-height:0;padding:45px 30px;gap:55px}
  .about-copy{display:block}
  .alberta-collage{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:none;grid-auto-flow:dense;grid-auto-rows:100px}
  .alberta-collage .collage-photo:nth-child(n){grid-area:auto;transform:none;box-shadow:none}
  .alberta-collage .collage-photo:nth-child(-n+3){grid-column:span 2;grid-row:span 2}
  .alberta-collage .collage-photo:nth-child(4),.alberta-collage .collage-photo:nth-child(6),.alberta-collage .collage-photo:nth-child(11){grid-column:span 2}
  .alberta-collage .collage-photo:nth-child(14){grid-column:span 4}
  .alberta-collage .collage-photo:nth-child(8),.alberta-collage .collage-photo:nth-child(9),.alberta-collage .collage-photo:nth-child(10){grid-row:span 2}
  .alberta-collage .collage-photo:nth-child(2){z-index:2;transform:scale(1.035)}
  .alberta-collage .collage-photo:nth-child(9){z-index:3;transform:scale(1.035)}
  .alberta-collage .collage-photo:nth-child(2),.alberta-collage .collage-photo:nth-child(9){box-shadow:0 7px 16px #0c0d0e55}
}
@media (max-width:520px){
  .hero{min-height:690px;padding:95px 0 65px}
  .hero h1{font-size:clamp(3.2rem,13vw,4.3rem)}
  .hero-lede{font-size:17px}
  .hero-actions{gap:18px}
  .hero-location{margin-top:30px}
  .service-story{padding:31px 23px}
  .service-card>img{height:240px}
  .capability-list{padding:24px}
  .capability-list summary{min-height:65px}
  .about-section{gap:35px}
  .alberta-collage{grid-auto-rows:80px}
}
@media (prefers-reduced-motion:reduce){.service-card{position:relative;top:auto}}
