/* October 2026: recruitment, project enquiries and process. */
.application-section .application-contact>a{display:flex;flex-direction:column;align-items:flex-start;line-height:1.4;gap:4px;max-width:100%;overflow-wrap:anywhere}.application-contact>a strong{font-size:1rem}.application-contact>a.inline-link{font-size:1rem;margin-top:8px}
.header #navigation{gap:30px}.nav-jobs{color:var(--blue)}.nav-jobs::after{content:"";display:block;width:20px;height:3px;background:var(--orange);position:absolute;bottom:0}.nav-jobs[aria-current=page]::after{width:100%}
.hero-jobs-link{display:inline-flex;align-items:center;min-height:44px;margin-top:20px;color:var(--blue);font-size:.9375rem;font-weight:700;border-bottom:1px solid #b6c1c8}.hero-note{margin-top:24px}
.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.process-grid li{padding:26px 24px 0 0}.process-grid li+li{border-left:1px solid var(--line);padding-left:24px}.process-grid span{display:block;color:var(--blue);font-size:.875rem;font-weight:700;margin-bottom:24px}.process-grid h3{font-size:1.3rem;letter-spacing:-.025em;line-height:1.2}.process-grid p{color:var(--muted);margin-top:14px}
.process-faq{display:grid;gap:0;margin-top:44px;border-top:1px solid var(--line);max-width:850px}.process-faq details{border-bottom:1px solid var(--line);padding:16px 0}.process-faq summary{cursor:pointer;font-weight:700;min-height:44px;align-content:center}.process-faq p{padding:4px 0 12px;color:var(--muted);max-width:760px}
.jobs-band{display:grid;grid-template-columns:1.4fr .7fr;align-items:center;gap:60px;background:var(--ink);color:white;padding:68px max(36px,calc((100vw - 1248px)/2))}.jobs-band .eyebrow{color:#c5d9e7;margin-bottom:18px}.jobs-band h2{font-size:clamp(2.2rem,3.8vw,3.5rem)}.jobs-band>div:first-child>p:last-child{color:#dce6ed;max-width:620px;margin-top:22px}.jobs-band>div:last-child{justify-self:end;max-width:280px}.jobs-band>div:last-child p{font-size:.9375rem;color:#dce6ed;margin-top:16px}.button.light{background:white;color:var(--ink);min-width:190px}.button.light:hover{background:#e8f3fb;transform:translateY(-2px)}
.primary-contact{border-top:3px solid var(--blue)}.primary-contact strong{color:var(--blue)}
.form-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;border-top:1px solid var(--line);align-items:start}.form-intro .eyebrow{margin-bottom:18px}.form-intro h2{font-size:clamp(2rem,3.5vw,3.3rem);line-height:1.13}.form-intro p:not(.eyebrow){color:var(--muted);margin-top:22px;max-width:390px}.inline-link,.form-privacy a{text-decoration:underline;text-underline-offset:4px;color:var(--blue)}.form-panel{background:var(--pale);padding:34px;min-width:0}.inquiry-form{position:relative;display:grid;gap:22px;min-width:0}.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);pointer-events:none;opacity:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:grid;gap:8px;min-width:0}.field label{font-weight:700;font-size:.9375rem;line-height:1.5}.field label>span:not(.optional){color:var(--blue)}.optional{display:inline-block;margin-left:5px;font-size:.875rem;color:var(--muted);font-weight:400}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:50px;border:1px solid #95a5b1;border-radius:0;background:white;color:var(--ink);font:inherit;font-size:16px;line-height:1.5;padding:12px}.field textarea{resize:vertical;min-height:140px}.field input::placeholder,.field textarea::placeholder{color:#5a6873;opacity:1}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.field small{color:var(--muted);font-size:.875rem;line-height:1.6}.file-field input{padding:11px;overflow:hidden;font-size:.9375rem}.file-field input::file-selector-button{border:0;background:var(--pale);color:var(--ink);font:inherit;padding:9px 12px;margin-right:12px;cursor:pointer}.form-privacy{font-size:.875rem;color:var(--muted);line-height:1.65}.form-submit{justify-self:start;min-width:230px}.form-submit:disabled{background:#52616c;cursor:wait;transform:none}.form-status{padding:17px 18px;border-left:4px solid var(--blue);font-size:1rem;overflow-wrap:anywhere}.form-status.error{background:#fff2ec;color:#702800;border-color:#a03a07}.form-status.success{background:#edf7ef;color:#1e5b31;border-color:#287e43}.form-status[hidden]{display:none}
.jobs-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center;padding-top:62px;padding-bottom:68px}.jobs-hero .eyebrow{margin-bottom:24px}.jobs-hero h1{font-size:clamp(3.3rem,6vw,5.5rem)}.jobs-hero .hero-lead{max-width:560px}.jobs-hero-note{margin-top:24px;max-width:480px;color:var(--muted);font-size:.9375rem}.jobs-hero-image{margin:0;position:relative}.jobs-hero-image img{width:100%;height:540px;object-fit:cover;object-position:50% 43%}.jobs-hero-image figcaption{padding:13px 16px;background:var(--ink);color:white;font-size:.875rem;line-height:1.5;border-left:3px solid var(--orange)}
.roles{background:var(--pale);max-width:none;padding-left:max(36px,calc((100vw - 1248px)/2));padding-right:max(36px,calc((100vw - 1248px)/2))}.roles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.role-card{display:flex;flex-direction:column;align-items:flex-start;background:white;padding:30px;min-width:0;border-top:3px solid var(--blue)}.role-number{color:var(--blue);font-weight:700;font-size:.875rem;margin-bottom:20px}.role-card h3{font-size:1.6rem;line-height:1.2;letter-spacing:-.03em}.role-card h3 span{white-space:nowrap;display:inline-block;font-size:.875rem;font-weight:400;letter-spacing:0;color:var(--muted)}.role-card>p{margin-top:16px;color:var(--muted)}.role-requirement{margin-top:24px;margin-bottom:24px;font-size:.9375rem}.role-requirement strong{font-size:.875rem}.role-requirement p{color:var(--muted);margin-top:7px}.role-card .text-link{margin-top:auto;font-size:.9375rem;min-height:44px;line-height:1.5}
.application-steps{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.application-steps .eyebrow{margin-bottom:18px}.application-steps h2{font-size:clamp(2.2rem,3.5vw,3.3rem);line-height:1.15}.application-steps ol{list-style:none;counter-reset:step;padding:0;margin:0}.application-steps li{position:relative;counter-increment:step;padding:0 0 26px 45px}.application-steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:0;color:var(--blue);font-size:.875rem;font-weight:700}.application-steps p{margin-top:6px;color:var(--muted)}.application-contact{margin-top:28px!important;border-left:3px solid var(--orange);padding-left:18px}.application-contact strong{color:var(--ink)}.application-contact a{color:var(--blue);display:inline-flex;align-items:center;min-height:44px;font-size:1.3rem;font-weight:700}
.legal-nav{display:flex;position:static;align-items:center;box-shadow:none;border:0;padding:0;background:none}.legal-nav a{font-weight:400}.legal .skip{font-size:1rem}
@media(max-width:1100px){.header #navigation{gap:22px}.form-section{gap:36px}.jobs-hero{gap:40px;padding-top:48px}.jobs-hero-image img{height:490px}.roles-grid{gap:18px}.role-card{padding:24px}.role-card h3{font-size:1.4rem}.application-steps{gap:40px}.process-grid li{padding-right:18px}.process-grid li+li{padding-left:18px}}
@media(max-width:800px){.menu-toggle{width:48px;height:48px;border:1px solid var(--line);background:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.menu-toggle span{height:2px;width:20px;background:var(--ink)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.header #navigation{display:none;position:absolute;top:100%;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:18px 22px;align-items:stretch;gap:0;box-shadow:0 15px 20px #14222d0b}.header #navigation.open{display:flex;flex-direction:column}.header #navigation a{font-size:1rem;padding:12px;min-height:48px}.header #navigation .nav-jobs::after{position:static;margin-top:3px}.header #navigation .nav-jobs[aria-current=page]::after{width:24px}.nav-contact{margin-top:8px}.process-grid{grid-template-columns:1fr 1fr;gap:30px 0}.process-grid li:nth-child(3){border-left:0;padding-left:0}.jobs-band{padding:54px 28px;gap:32px}.jobs-band h2{font-size:2.6rem}.form-section{grid-template-columns:1fr;gap:32px}.form-intro p:not(.eyebrow){max-width:600px}.form-panel{padding:30px}.jobs-hero{gap:28px;grid-template-columns:1fr 1fr}.jobs-hero h1{font-size:3.3rem}.jobs-hero .hero-lead{font-size:1.03rem}.jobs-hero .hero-actions{flex-direction:column;align-items:flex-start}.jobs-hero-image img{height:470px}.roles{padding-left:28px;padding-right:28px}.roles-grid{grid-template-columns:1fr 1fr}.role-card h3{font-size:1.5rem}.application-steps{grid-template-columns:1fr;gap:32px}.application-steps ol{max-width:650px}.legal-nav{display:flex;position:static;box-shadow:none;border:0;padding:0;background:none}}
@media(max-width:600px){.hero-jobs-link{font-size:.9375rem;margin-top:12px;line-height:1.5}.process-grid{grid-template-columns:1fr;gap:0}.process-grid li,.process-grid li+li,.process-grid li:nth-child(3){position:relative;padding:22px 0 22px 43px;border-left:0;border-bottom:1px solid var(--line)}.process-grid span{position:absolute;left:0;top:23px;margin:0}.process-grid h3{font-size:1.25rem}.process-grid p{margin-top:8px}.process-faq{margin-top:28px}.jobs-band{grid-template-columns:1fr;gap:28px;padding:48px 22px}.jobs-band h2{font-size:clamp(2rem,8.7vw,2.7rem)}.jobs-band>div:last-child{justify-self:stretch;max-width:none}.jobs-band .button{width:100%}.jobs-band>div:last-child p{margin-top:12px}.form-panel{padding:24px 18px}.form-grid{grid-template-columns:1fr;gap:22px}.form-intro h2{font-size:clamp(2rem,8.7vw,2.7rem)}.form-submit{width:100%;min-width:0}.jobs-hero{grid-template-columns:1fr;gap:30px;padding-top:36px;padding-bottom:42px}.jobs-hero h1{font-size:clamp(2.75rem,11.5vw,4rem);line-height:1.08}.jobs-hero .eyebrow{font-size:.75rem;margin-bottom:18px;letter-spacing:.08em}.jobs-hero .hero-lead{font-size:1.0625rem;margin-top:20px}.jobs-hero .hero-actions{display:grid;gap:12px}.jobs-hero .hero-actions .button{width:100%}.jobs-hero-note{margin-top:18px}.jobs-hero-image img{height:400px;object-position:50% 45%}.roles{padding:52px 22px}.roles-grid{grid-template-columns:1fr;gap:20px}.role-card{padding:26px 24px}.role-card h3{font-size:1.6rem}.role-card>p{font-size:1rem}.application-steps{gap:30px}.application-steps h2{font-size:clamp(2rem,8.7vw,2.7rem)}.application-contact a{font-size:1.25rem}.legal-nav{display:flex;position:static;align-items:flex-start;gap:8px 20px;padding:0;margin:24px 0 36px}}

/* Project photo refinements */
.reference-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;transition:transform .35s}.project:hover .reference-photo img{transform:scale(1.025)}
.gallery .reference-photo{height:auto;background:var(--pale)}.gallery .reference-photo img{height:auto;object-fit:contain;max-height:680px}
.project[data-open="terrasse"] .reference-photo img{object-position:50% 35%}
@media(max-width:800px){.project:last-child{grid-column:auto;max-width:none}}
@media(max-width:600px){.gallery .reference-photo{height:auto}.gallery .reference-photo img{max-height:none}}
@media(prefers-reduced-motion:reduce){.reference-photo img{transition:none}}
