@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@200;300;400;500&display=swap');
:root{color-scheme:dark;font-family:'DM Sans',sans-serif;background:#191c1b;color:#fff;font-synthesis:none}*{box-sizing:border-box}html,body{margin:0}body{overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}button:focus-visible,a:focus-visible{outline:2px solid white;outline-offset:8px}.header{position:fixed;z-index:10;top:0;left:0;width:100%;padding:36px 4.5%;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.brand{pointer-events:auto;font-family:'Manrope',sans-serif;font-weight:500;font-size:42px;line-height:.95;letter-spacing:-3px}.brand span{display:block;font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:3px;margin-top:12px;line-height:1}.edition{font-size:12px;letter-spacing:2px}.journey{height:300svh}.stage{position:sticky;top:0;height:100svh;overflow:hidden;background:#191c1b}.photograph{position:absolute;inset:0;transform-origin:43% 53%;will-change:transform}.frame{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 54%;display:block}.second,.third{opacity:0;will-change:opacity}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,15,15,.62),transparent 65%),linear-gradient(0deg,rgba(5,12,12,.48),transparent 27%,transparent 75%,rgba(5,12,12,.3));pointer-events:none}.intro{position:absolute;left:8%;top:34%;will-change:opacity,transform}.eyebrow{font-size:12px;letter-spacing:3px}h1{font-family:'Manrope',sans-serif;font-size:clamp(64px,7.8vw,132px);font-weight:200;line-height:1.02;letter-spacing:-.065em;margin:27px 0} .intro p{font-size:16px;font-weight:400;opacity:.8;margin-top:30px}.bottom{position:absolute;bottom:38px;left:4.5%;right:4.5%;display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:1.4px}.scroll-hint{display:flex;align-items:center;gap:15px}.scroll-line{width:1px;height:34px;background:rgba(255,255,255,.35);position:relative;overflow:hidden}.scroll-line:after{content:'';position:absolute;top:0;width:1px;height:14px;background:white;animation:scroll 2s infinite}@keyframes scroll{from{transform:translateY(-16px)}to{transform:translateY(38px)}}.location{position:absolute;left:50%;transform:translateX(-50%)}.location span{opacity:.5;margin:0 15px}#percent{font-variant-numeric:tabular-nums}.progress{position:absolute;bottom:0;left:0;width:100%;height:2px;background:#ffffff20}.progress div{height:100%;background:#d5b68b;transform:scaleX(0);transform-origin:left}.ending{position:absolute;left:8%;top:40%;opacity:0;visibility:hidden}.ending p{font-family:Manrope,sans-serif;font-weight:200;letter-spacing:-.05em;font-size:clamp(44px,6vw,100px);margin:20px 0 32px}.ending button{background:transparent;color:white;border:0;border-bottom:1px solid #ffffff70;padding:14px 0;cursor:pointer;font-size:14px;min-width:140px;text-align:left}.ending button span{float:right}.no-js{position:fixed;bottom:100px;left:8%;z-index:20}@media(min-aspect-ratio:16/10){.frame{object-position:50% 53%}}@media(max-width:600px){.header{padding:26px 24px}.brand{font-size:34px}.brand span{font-size:9px;letter-spacing:2.1px}.edition{display:none}.intro,.ending{left:26px;right:22px;top:37%}h1{font-size:clamp(56px,15vw,88px)}.intro p{max-width:230px;line-height:1.6}.frame{object-position:43% 50%}.photograph{transform-origin:43% 52%}.bottom{left:24px;right:24px;bottom:28px;font-size:12px;letter-spacing:.5px}.location{display:none}.shade{background:linear-gradient(90deg,#08100f70,transparent),linear-gradient(0deg,#08100f90,transparent 30%,transparent 78%,#08100f50)}}@media(prefers-reduced-motion:reduce){.scroll-line:after{animation:none}.photograph,.frame,.intro{will-change:auto}}
.journey{height:650svh}.photograph{transform:none;overflow:hidden}.frame{object-position:var(--focal,50% 50%);transform-origin:var(--focal,50% 50%);visibility:hidden;opacity:0}.frame:first-child{visibility:visible;opacity:1}.location b{font-weight:400}@media(max-width:600px){.journey{height:580svh}.bottom{flex-wrap:wrap;gap:16px}.location{display:block;position:static;transform:none;order:3;flex-basis:100%;font-size:12px}.location span{margin:0 8px}}
.intro{top:31%;right:6%;max-width:1000px;pointer-events:none}.intro h1{white-space:pre-line;font-size:clamp(48px,6.4vw,100px);line-height:1.07;letter-spacing:-.055em;margin:24px 0}.intro p{max-width:480px;line-height:1.65;margin-top:24px;text-wrap:pretty}.ending{top:auto;bottom:115px}.shade{background:linear-gradient(90deg,rgba(8,15,15,.68),rgba(8,15,15,.18) 70%),linear-gradient(0deg,rgba(5,12,12,.48),transparent 27%,transparent 75%,rgba(5,12,12,.3))}@media(max-width:600px){.intro{top:29%;left:26px;right:24px}.intro h1{font-size:clamp(36px,9.3vw,56px);line-height:1.12}.intro p{max-width:310px;font-size:16px;line-height:1.55;margin-top:20px}.ending{bottom:135px;left:26px}}@media(max-height:520px) and (min-width:601px){.intro{top:25%}.intro h1{font-size:42px;margin:12px 0}.intro p{margin-top:12px}.ending{left:auto;right:5%;bottom:105px}}
/* Portfolio */
html{scroll-behavior:smooth;scroll-padding-top:120px}.portfolio-nav{pointer-events:auto;font-size:14px;letter-spacing:.04em;border-bottom:1px solid #ffffff80;padding:10px 0}.portfolio-nav span{margin-left:18px}.header .edition{margin-left:auto;margin-right:55px}.header{transition:background .3s,color .3s,padding .3s}.header.over-portfolio{background:#f4f3efed;color:#242923;padding-top:22px;padding-bottom:22px;backdrop-filter:blur(16px)}.header.over-portfolio .portfolio-nav{border-color:#24292360}.discover{display:inline-block;font-size:14px;border-bottom:1px solid #ffffff80;padding:14px 0;margin-right:28px}.discover span{margin-left:18px}.portfolio{position:relative;background:#f4f3ef;color:#242923;padding:120px 6% 0;scroll-margin-top:0}.portfolio-heading{border-top:1px solid #24292340;padding-top:30px;margin-bottom:90px}.portfolio-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-top:35px}.portfolio h2{font-family:Manrope,sans-serif;font-size:clamp(44px,6.4vw,92px);font-weight:300;line-height:1.05;letter-spacing:-.055em;margin:0}.portfolio-intro p{max-width:350px;line-height:1.8;font-size:16px;margin:0 0 8px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px 5%}.project-card{display:block;text-align:left;border:0;background:none;padding:0;color:inherit;cursor:pointer;min-width:0;align-self:start}.project-card:nth-child(even){margin-top:120px}.project-visual{position:relative;overflow:hidden;aspect-ratio:4/3;background:#deded6}.project-card:nth-child(3n+2) .project-visual{aspect-ratio:4/4.6}.project-visual img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1);display:block}.project-card:hover .project-visual img,.project-card:focus-visible .project-visual img{transform:scale(1.045)}.project-open{position:absolute;bottom:24px;right:24px;padding:12px 18px;background:#f4f3efed;color:#242923;font-size:13px;backdrop-filter:blur(8px)}.project-meta{position:relative;padding-top:24px;border-bottom:1px solid #24292330;padding-bottom:25px}.project-year{font-size:12px;letter-spacing:2px}.project-meta h3{font-family:Manrope,sans-serif;font-size:clamp(26px,3vw,42px);font-weight:400;letter-spacing:-.04em;margin:10px 0}.project-meta p{font-size:14px;line-height:1.6;margin:0;padding-right:60px;color:#53594f}.project-count{position:absolute;right:0;top:26px;font-size:12px;letter-spacing:1px}.portfolio-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:130px;padding:50px 0;border-top:1px solid #24292340}.portfolio-footer p{font-family:Manrope,sans-serif;font-weight:300;font-size:24px;letter-spacing:-.03em}.portfolio-footer>a:last-child{font-size:14px}.portfolio button:focus-visible,.portfolio a:focus-visible{outline-color:#242923}.gallery-open{overflow:hidden}.project-gallery{width:100vw;max-width:none;height:100dvh;max-height:none;border:0;background:#171b18;color:#f4f3ef;padding:24px 4%;margin:0;overflow:hidden}.project-gallery[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto 72px;gap:16px}.project-gallery::backdrop{background:#171b18}.gallery-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.gallery-top h2{font-family:Manrope,sans-serif;font-size:28px;font-weight:300;letter-spacing:-.03em;margin:5px 0 0}.gallery-close{border:1px solid #ffffff50;background:none;color:inherit;padding:12px 18px;cursor:pointer;font-size:14px}.gallery-close span{margin-left:20px;font-size:24px;vertical-align:middle}.gallery-stage{min-height:0;position:relative;display:flex;justify-content:center;align-items:center;padding:0 60px}.gallery-stage>img{width:100%;height:100%;object-fit:contain;transition:opacity .2s;touch-action:pan-y}.gallery-arrow{position:absolute;top:calc(50% - 24px);z-index:1;width:48px;height:48px;border:1px solid #ffffff60;background:#171b18d9;color:#fff;cursor:pointer;font-size:24px}.gallery-arrow.previous{left:0}.gallery-arrow.next{right:0}.gallery-arrow:disabled{opacity:.2;cursor:default}.gallery-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:14px}.gallery-bottom p{margin:0;line-height:1.5}.gallery-bottom span{white-space:nowrap;font-variant-numeric:tabular-nums}.gallery-thumbnails{display:flex;justify-content:flex-start;gap:10px;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}.gallery-thumbnails button{flex:0 0 90px;padding:0;border:2px solid transparent;background:none;opacity:.5;cursor:pointer}.gallery-thumbnails button[aria-current=true]{border-color:#d5b68b;opacity:1}.gallery-thumbnails img{width:100%;height:100%;object-fit:cover;display:block}#gallery-error{position:absolute;text-align:center;max-width:360px;padding:20px}button:focus-visible{outline-offset:4px}@media(max-width:700px){.header .edition{display:none}.portfolio{padding:75px 24px 0}.portfolio-intro{display:block;margin-top:24px}.portfolio-intro p{margin-top:26px}.portfolio-heading{margin-bottom:45px}.project-grid{grid-template-columns:1fr;gap:44px}.project-card:nth-child(even){margin-top:0}.project-card:nth-child(3n+2) .project-visual{aspect-ratio:4/3}.project-meta{padding-top:18px}.project-meta p{padding-right:0}.project-open{bottom:14px;right:14px}.portfolio-footer{margin-top:65px;padding:32px 0;flex-wrap:wrap}.portfolio-footer p{order:3;flex-basis:100%;margin:0;font-size:22px}.project-gallery{padding:20px 14px}.project-gallery[open]{gap:12px;grid-template-rows:auto minmax(0,1fr) auto 60px}.gallery-top h2{font-size:23px}.gallery-top .eyebrow{font-size:12px}.gallery-close{padding:6px 10px}.gallery-close span{margin-left:8px}.gallery-stage{padding:0}.gallery-arrow{width:40px;height:40px;top:calc(50% - 20px)}.gallery-bottom{font-size:12px}.gallery-bottom p{max-width:240px}.gallery-thumbnails button{flex-basis:75px}.ending .discover{display:block;width:max-content;margin-bottom:6px}.ending button{padding:8px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-visual img,.header,.gallery-stage>img{transition:none}}
.header.over-portfolio .brand{font-size:34px}@media(max-width:600px){.ending{bottom:140px}.ending .discover{font-size:13px}.ending button{font-size:12px}}

/* GMC brand and direct contact */
.brand{display:block;letter-spacing:normal;line-height:1}.brand-logo{display:block;width:150px;height:auto;max-height:82px;object-fit:contain;background:transparent}.contact-block{margin-top:110px;padding:50px 0;border-top:1px solid #24292340;display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-block h2{font-size:clamp(32px,4vw,58px);margin-top:22px}.whatsapp-button{display:block;background:#286044;color:#fff;padding:22px 26px;font-size:16px;line-height:1.5;flex-shrink:0}.whatsapp-button span{margin-left:18px}.whatsapp-button small{display:block;margin-top:8px;font-size:14px}.whatsapp-floating{position:fixed;z-index:20;right:24px;bottom:24px;display:flex;align-items:center;gap:10px;min-height:52px;padding:14px 20px;border-radius:30px;background:#286044;color:white;box-shadow:0 4px 20px #0003;font-size:14px;border:1px solid #ffffff50}.whatsapp-button:hover,.whatsapp-floating:hover{background:#1e4c35}.portfolio-footer{margin-top:20px;padding-bottom:100px}.bottom{padding-right:170px}.gallery-open .whatsapp-floating{visibility:hidden}@media(max-width:700px){.brand-logo{width:112px;max-height:62px}.contact-block{margin-top:65px;padding:35px 0;display:block}.whatsapp-button{margin-top:30px;width:fit-content;max-width:100%;padding:18px 20px}.whatsapp-floating{right:18px;bottom:18px;padding:13px 17px}.bottom{padding-right:0}#percent{margin-right:150px}.portfolio-footer{padding-bottom:100px}}@media(max-width:380px){.whatsapp-floating span{display:none}.whatsapp-floating{padding:14px}#percent{margin-right:70px}}
.brand{position:relative;width:166px;height:98px;overflow:hidden;background:transparent;flex-shrink:0}.brand-logo{position:absolute;left:50%;top:50%;width:324px;height:405px;max-width:none;max-height:none;object-fit:contain;clip-path:none;transform:translate(-50%,-50%);background:transparent}@media(max-width:700px){.brand{width:128px;height:77px}.brand-logo{width:242px;height:302.5px;max-height:none}}
