/* Motion is a visitor aid: bounded transitions, with a calm alternative. */
:root{--motion-ease:cubic-bezier(.22,.68,0,1);--motion-surface:#e1e8e2}
.motion-gallery{overflow:hidden;padding-top:22px}
.motion-gallery .showcase-stage{height:min(30vw,434px);width:100%;margin:0;perspective:1600px;perspective-origin:50% 40%;transform-style:preserve-3d}
.motion-gallery .showcase-window{width:min(52vw,740px);aspect-ratio:1.92;transition:transform 950ms var(--motion-ease),opacity 650ms ease,visibility 950ms;box-shadow:0 2px 3px #2230330d,0 16px 26px -12px #22303326,0 32px 42px -23px #22303338;backface-visibility:hidden;border-color:#cbd3ce}
.motion-gallery .window-center{transform:translateX(-50%) translateZ(0);opacity:1;z-index:4}
.motion-gallery .window-left{transform:translateX(-131%) translateY(34px) rotateY(18deg) scale(.83);opacity:.72;z-index:2}
.motion-gallery .window-right{transform:translateX(31%) translateY(34px) rotateY(-18deg) scale(.83);opacity:.72;z-index:2}
.motion-gallery .window-away-left,.motion-gallery .window-away{transform:translateX(-205%) translateY(60px) rotateY(25deg) scale(.7);opacity:0;visibility:hidden;pointer-events:none;z-index:0}
.motion-gallery .window-away-right{transform:translateX(105%) translateY(60px) rotateY(-25deg) scale(.7);opacity:0;visibility:hidden;pointer-events:none;z-index:0}
.motion-gallery .showcase-caption{padding-top:17px;padding-bottom:8px}
.motion-gallery .showcase-current{min-width:0;flex-direction:column;gap:2px;text-align:center}
.motion-gallery .showcase-current strong{font-size:15px}
.motion-gallery .showcase-current>span{font-size:11px;display:block}
.motion-gallery .showcase-controls{flex-shrink:0}
.motion-gallery .showcase-controls button:disabled{opacity:.45;cursor:default}
.gallery-pagination{display:flex;justify-content:center;gap:7px;padding-bottom:20px}
.gallery-pagination button{width:40px;min-height:36px;border:0;background:transparent;padding:16px 0}
.gallery-pagination button>span{display:block;height:2px;background:var(--line);position:relative;overflow:hidden}
.gallery-pagination button[aria-pressed=true]>span{background:var(--slate)}
.motion-gallery.gallery-continuous .showcase-window{transition:none;visibility:visible;pointer-events:none;z-index:auto}
.motion-gallery.gallery-continuous .showcase-window.gallery-current{pointer-events:auto}
@media(max-width:900px){.motion-gallery .showcase-stage{height:33vw}.motion-gallery .showcase-window{width:59vw}.motion-gallery .showcase-label{display:none}}
@media(max-width:550px){.motion-gallery .showcase-stage{height:51vw}.motion-gallery .showcase-window{width:86vw;aspect-ratio:1.92}.motion-gallery .window-left{transform:translateX(-148%) translateY(19px) scale(.8)}.motion-gallery .window-right{transform:translateX(48%) translateY(19px) scale(.8)}.motion-gallery .showcase-current{text-align:left;max-width:48%}.motion-gallery .showcase-current strong{font-size:12px;line-height:1.3}.motion-gallery .showcase-current>span{display:none}.motion-gallery .showcase-controls{gap:4px}.motion-gallery .showcase-controls button{width:36px;height:44px;border:0}.motion-gallery .showcase-caption{padding-top:10px;gap:6px}.gallery-pagination{gap:4px}.gallery-pagination button{width:30px;padding-block:15px}.motion-gallery{padding-top:8px}}
@media(prefers-reduced-motion:reduce){.motion-gallery .showcase-window{transition:none}.gallery-pagination span:after{animation:none!important}}

/* Expertise: the drawing changes with the discipline being explored. */
.atelier-expertise .expertise-layout{grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:start}
.atelier-expertise .expertise-intro{position:sticky;top:130px}
.atelier-expertise .expertise-intro h2{font-size:clamp(38px,4vw,58px)}
.atelier-expertise .expertise-intro>p:not(.eyebrow){margin:24px 0;max-width:430px;font-size:15px}
.expertise-number{display:block;font-size:11px;letter-spacing:.08em;color:var(--slate);margin-bottom:10px}
.atelier-expertise .expertise-detail summary{padding:24px 0}
.atelier-expertise .expertise-detail summary strong{font-size:clamp(23px,2.2vw,31px)}
.atelier-expertise .expertise-body{padding:0;overflow:hidden}
.expertise-body-inner{padding:0 25px 28px 0}
.atelier-expertise .expertise-detail[open] .detail-sign{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.expertise-sketch{position:relative;background:#dde5e0;border:1px solid #c8d4cc;min-height:260px;max-width:440px;margin:25px 0 13px;overflow:hidden}
.expertise-visual{height:260px;display:grid;place-items:center;padding:28px}
.sketch-index{position:absolute;bottom:13px;left:17px;font-size:10px;letter-spacing:.1em;color:var(--slate)}
.map-visual{display:flex;align-items:center;flex-direction:column;width:100%;font-size:11px;color:var(--ink)}
.map-visual span,.map-visual strong{background:var(--paper);border:1px solid #bdcbc2;padding:9px 12px;font-weight:400}
.map-visual>i{height:23px;width:1px;background:#97a99d}
.map-visual>div{display:flex;width:100%;justify-content:space-between;gap:6px;position:relative}
.map-visual>div:before{content:'';position:absolute;inset:50% 0 auto;height:1px;background:#97a99d}
.map-visual>div span{z-index:1}
.map-visual>strong{background:var(--slate);color:#fff;border-color:var(--slate)}
.type-visual{display:flex;align-items:center;gap:26px;position:relative;width:100%;justify-content:center;padding-bottom:20px}
.type-visual>span{font-family:var(--display);font-size:110px;letter-spacing:-.07em;line-height:1}
.type-visual>div{display:flex;flex-direction:column;gap:7px}
.type-visual i{display:block;width:48px;height:28px;background:var(--ink)}
.type-visual i:nth-child(2){background:var(--slate)}.type-visual i:nth-child(3){background:var(--paper)}
.type-visual small{position:absolute;bottom:-15px;font-size:11px;color:var(--slate)}
.device-visual{position:relative;width:100%;height:185px;display:flex;align-items:center}
.device-desktop{width:83%;border:5px solid var(--paper);box-shadow:0 8px 20px #222a2b18;overflow:hidden;transform:rotate(-3deg)}
.device-desktop img{width:100%;aspect-ratio:1.6;object-fit:cover;object-position:top}
.device-phone{width:21%;position:absolute;right:3%;bottom:15px;border:4px solid var(--ink);border-radius:10px;overflow:hidden;box-shadow:0 8px 20px #222a2b20}
.device-phone img{width:100%;aspect-ratio:.53;object-fit:cover;object-position:45%}
.visual-caption{position:absolute;bottom:-12px;left:0;right:0;text-align:center;font-size:10px;color:var(--slate)}
.expertise-visual[data-expertise-visual="3"]{padding:0}
.immersive-visual{width:100%;height:100%;position:relative;background:#dde5e0}
.immersive-visual img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.immersive-visual:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#e4e9e3e6)}
.immersive-visual .visual-caption{z-index:1;bottom:12px;left:85px;right:13px;text-align:right;color:#34473f}
.sketch-index{z-index:2}

/* Four offers: a directory and one illustrated project dossier. */
.offer-explorer.is-enhanced{display:grid;grid-template-columns:250px minmax(0,1fr);gap:32px;align-items:start}
.offer-directory{display:flex;flex-direction:column;gap:8px;position:sticky;top:120px}
.offer-choice{display:flex;flex-direction:column;align-items:flex-start;text-align:left;position:relative;padding:20px 24px;background:transparent;border:1px solid #c6d0ca;transition:background 250ms,color 250ms,border-color 250ms;scroll-margin-top:130px}
.offer-choice-top{display:flex;justify-content:space-between;width:100%;margin-bottom:9px;font-size:12px}
.offer-choice-top small{font-size:11px;color:var(--slate)}
.offer-choice-top>span{transition:transform 250ms;transform:rotate(45deg)}
.offer-choice>strong{font-family:var(--display);font-size:29px;font-weight:400;letter-spacing:-.035em;line-height:1.12}
.offer-choice-price{font-size:12px;color:var(--slate);margin-top:11px}
.offer-choice[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.offer-choice[aria-pressed=true] small,.offer-choice[aria-pressed=true] .offer-choice-price{color:#cbd8d1}
.offer-choice[aria-pressed=true] .offer-choice-top>span{transform:rotate(0)}
.offer-choice:hover:not([aria-pressed=true]){background:#dce5df;border-color:#9bad9f}
.offer-dossier{background:var(--paper);border:1px solid #c6d0ca;padding:28px 34px;scroll-margin-top:125px}
.offer-dossier+.offer-dossier{margin-top:25px}.is-enhanced .offer-dossier{margin-top:0}
.dossier-top{display:flex;justify-content:space-between;gap:15px;font-size:11px;color:var(--slate);padding-bottom:22px;border-bottom:1px solid var(--line)}
.dossier-hero{display:grid;grid-template-columns:1fr .9fr;gap:30px;padding:28px 0;align-items:center}
.dossier-name{font-size:12px;color:var(--slate);display:block;margin-bottom:12px}
.dossier-hero h3{font-size:clamp(28px,2.8vw,40px);letter-spacing:-.04em;line-height:1.07;margin-bottom:17px;max-width:370px}
.dossier-hero p{font-size:14px;line-height:1.7}
.dossier-price{margin-top:20px;display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.dossier-price>span{font-size:11px;color:var(--slate)}.dossier-price strong{font:400 28px var(--display);white-space:nowrap}
.dossier-example{display:block;transform:rotate(2deg);transition:transform 350ms var(--motion-ease);border:1px solid var(--line);background:var(--white);box-shadow:6px 10px 0 #dfe6e0}
.dossier-example:hover{transform:rotate(0) translateY(-4px)}
.dossier-example img{aspect-ratio:1.28;object-fit:cover;object-position:top;width:100%}
.dossier-example>span{display:flex;justify-content:space-between;gap:10px;padding:11px 13px;font-size:10px}
.dossier-details{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;border-top:1px solid var(--line);padding:25px 0}
.dossier-details ul{list-style:none;padding:0;margin:12px 0 0;font-size:13px;line-height:1.6}
.dossier-details li{position:relative;padding:0 0 9px 17px}
.dossier-details li:before{content:'↳';position:absolute;left:0;color:var(--slate)}
.dossier-details p{font-size:12px;line-height:1.8}
.dossier-actions{border-top:1px solid var(--line);padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.dossier-actions .button{font-size:13px;padding:16px 19px;min-height:50px}
.dossier-actions>a:not(.button){font-size:12px}
.offer-dossier .offer-explanation{padding:22px 0;margin:0 0 22px;gap:30px}

@media(max-width:1050px){.offer-explorer.is-enhanced{grid-template-columns:200px minmax(0,1fr);gap:20px}.offer-choice{padding:18px}.offer-choice>strong{font-size:26px}.offer-dossier{padding:24px}.dossier-hero{gap:24px;grid-template-columns:1.15fr .85fr}.dossier-actions{gap:10px}}
@media(max-width:800px){.atelier-expertise .expertise-layout{grid-template-columns:1fr;gap:32px}.atelier-expertise .expertise-intro{position:static;display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.atelier-expertise .expertise-intro>.eyebrow,.atelier-expertise .expertise-intro>h2,.atelier-expertise .expertise-intro>p,.atelier-expertise .expertise-intro>a{grid-column:1}.atelier-expertise .expertise-intro>p:not(.eyebrow){font-size:14px;margin:15px 0}.expertise-sketch{grid-column:2;grid-row:1 / 5;margin:0;align-self:center;width:100%}.expertise-visual{padding:18px}.map-visual{font-size:9px}.map-visual span{padding:8px}.offer-explorer.is-enhanced{grid-template-columns:1fr}.offer-directory{position:static;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.offer-choice{padding:16px 12px}.offer-choice>strong{font-size:21px}.offer-choice-price{font-size:11px}}
@media(max-width:550px){.atelier-expertise .expertise-intro{display:block}.atelier-expertise .expertise-intro h2{font-size:40px}.expertise-sketch{margin:24px 0 10px;max-width:none;min-height:215px}.expertise-visual{height:215px;padding:24px 40px}.expertise-number{font-size:10px}.atelier-expertise .expertise-detail summary{padding:23px 0}.atelier-expertise .expertise-detail summary strong{font-size:24px}.atelier-expertise .expertise-detail summary span span{font-size:12px}.expertise-body-inner{padding-right:0;font-size:14px}.type-visual>span{font-size:95px}.device-visual,.scene-visual{height:160px}.map-visual{font-size:10px}.map-visual>i{height:17px}.offer-directory{grid-template-columns:1fr 1fr;gap:8px}.offer-choice{padding:16px}.offer-choice>strong{font-size:24px}.offer-choice-top{margin-bottom:9px}.offer-choice-price{font-size:12px}.offer-dossier{padding:21px}.dossier-top{font-size:10px;padding-bottom:18px}.dossier-hero{grid-template-columns:1fr;gap:24px;padding:24px 0}.dossier-hero h3{font-size:34px}.dossier-hero p{font-size:14px}.dossier-example{max-width:100%;margin:0 5px 8px}.dossier-example img{aspect-ratio:1.65}.dossier-details{grid-template-columns:1fr;gap:20px;padding:22px 0}.dossier-details ul{margin-top:10px}.dossier-details p{font-size:12px}.dossier-actions{align-items:stretch;flex-direction:column;gap:13px}.dossier-actions>a:not(.button){padding:8px 0}.offer-dossier .offer-explanation{grid-template-columns:1fr;padding:20px 0}}
@media(prefers-reduced-motion:reduce){.atelier-expertise *,.offer-explorer *,}
