/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://www.andrecoelho.pt/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://www.andrecoelho.pt/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://www.andrecoelho.pt/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://www.andrecoelho.pt/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://www.andrecoelho.pt/assets/geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer theme{:root,:host{--font-sans:"Geist Variable", "Geist", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.grid{display:grid}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{color:#0a0a0a;font-synthesis:none;scroll-behavior:smooth;background:#fff;font-family:Geist Variable,Geist,Arial,sans-serif}*{box-sizing:border-box}body{background:#fff;min-width:320px;margin:0}html[data-theme=dark],html[data-theme=dark] body{color:#f2f2ef;background:#0a0a0a}body,button,input,textarea{font-family:inherit}a{color:inherit;text-decoration:none}p,h1,h2,figure{margin:0}img{width:100%;display:block}button,a{-webkit-tap-highlight-color:transparent}.site-header{z-index:10;-webkit-backdrop-filter:blur(14px);background:#ffffffe0;border-bottom:1px solid #0a0a0a0f;grid-template-columns:1fr auto auto;align-items:center;column-gap:clamp(24px,3vw,44px);width:100%;height:64px;padding:0 18px;font-size:14px;display:grid;position:fixed;top:0;left:0}.monogram{align-items:center;width:76px;height:46px;display:flex;overflow:hidden}.brand-logo{object-fit:contain;width:76px;height:auto}.logo-white,html[data-theme=dark] .logo-black{display:none}html[data-theme=dark] .logo-white{display:block}.site-header nav{gap:clamp(30px,4vw,64px);display:flex}.mobile-menu-links{display:contents}.mobile-menu-info{display:none}.header-controls{justify-self:end;align-items:center;gap:18px;display:flex}.language-switcher{align-items:center;gap:4px;font-size:11px;display:flex}.language-switcher button,.theme-toggle{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.language-switcher button{opacity:.42;transition:opacity .18s,font-weight .16s}.language-switcher button:hover,.language-switcher button.active{opacity:1;font-weight:600}.theme-toggle{justify-content:flex-end;align-items:center;gap:8px;min-width:68px;font-size:11px;display:flex}.theme-toggle:hover{font-weight:600}.mobile-menu-toggle{width:34px;height:34px;color:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0;display:none}.mobile-menu-toggle span{background:currentColor;width:18px;height:1px;transition:transform .22s,width .22s;display:block}.mobile-menu-toggle.active span:first-child{transform:translateY(3px)rotate(45deg)}.mobile-menu-toggle.active span:last-child{transform:translateY(-3px)rotate(-45deg)}.theme-icon{border:1px solid;border-radius:50%;width:13px;height:13px;position:relative;overflow:hidden}.theme-icon:after{content:"";background:currentColor;border-radius:0 10px 10px 0;width:7px;height:13px;transition:transform .3s;position:absolute;top:-1px;right:-1px}html[data-theme=dark] .theme-icon:after{transform:translate(7px)}.site-header nav a,.hero-meta a,.footer-links a,.footer-end a{text-decoration:none;transition:font-weight .16s}.hero-meta a:hover,.footer-links a:hover,.footer-end a:hover{font-weight:600}.site-header nav a{transition:color .18s}.site-header nav a:hover{color:#8a8a86}html[data-theme=dark] .site-header nav a:hover{color:#a5a5a0}.hero{padding-top:64px}.hero-statement{text-align:center;text-transform:uppercase;letter-spacing:-.04em;flex-direction:column;justify-content:flex-end;align-items:center;min-height:188px;padding:50px 18px 22px;font-size:clamp(15px,1.65vw,24px);font-weight:500;line-height:.98;display:flex}.hero-statement strong{font-weight:300}.hero-statement span{letter-spacing:-.02em;margin-top:6px;font-size:clamp(9px,.9vw,13px);font-weight:400}.hero-meta,.project-meta{grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 16px;font-size:13px;display:grid}.hero-meta{height:62px;font-size:14px}.hero-meta a{justify-self:center;font-weight:500}.hero-meta p:last-child{justify-self:end}.hero-image{background:#ededeb;height:clamp(520px,65vw,850px);position:relative;overflow:hidden}.hero-image img{object-fit:cover;object-position:center 42%;filter:saturate(.82);height:100%;transition:transform 1.2s cubic-bezier(.2,.65,.3,1)}.hero-image:hover img{transform:scale(1.015)}.hero-image figcaption{color:#fff;background:#0a0a0a;padding:5px 7px;font-size:10px;position:absolute;bottom:14px;left:16px}.projects{padding:104px 16px 140px}.section-title-row{justify-content:space-between;align-items:baseline;margin-bottom:58px;display:flex}.section-title-row h1{letter-spacing:-10px;font-size:150px;font-weight:300;line-height:.9}.section-title-row p{font-size:12px}.project-list{flex-direction:column;gap:100px;display:flex}.project-image{background:#f0f0ee;height:min(70vw,860px);display:block;position:relative;overflow:hidden}.project-image img{object-fit:cover;height:100%;transition:transform .7s cubic-bezier(.2,.65,.3,1)}.project:nth-child(2) .project-image img{object-position:center 52%}.project-image:hover img{transform:scale(1.02)}.view-project{color:#fff;-webkit-backdrop-filter:blur(6px);text-transform:uppercase;opacity:0;background:#0a0a0a80;align-items:center;gap:28px;padding:12px 15px;font-size:11px;transition:opacity .22s,transform .22s;display:flex;position:absolute;bottom:16px;right:18px;transform:translateY(8px)}.project-image:hover .view-project{opacity:1;transform:translateY(0)}.view-project svg{width:16px}.project-meta{min-height:78px;padding:0;font-size:12px}.project-meta h2{font-size:14px;font-weight:400}.project-meta p:nth-child(2){justify-self:center}.project-meta p:last-child{justify-self:end}.about{border-top:1px solid #0a0a0a;padding:28px 16px 128px}.eyebrow{text-transform:uppercase;gap:60px;font-size:12px;display:flex}.about-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);align-items:end;gap:10vw;margin-top:112px;display:grid}.about-grid>h2{letter-spacing:-.06em;max-width:950px;font-size:90px;font-weight:300;line-height:.98}.about-copy{max-width:440px;font-size:14px;line-height:1.55}.services{border-top:1px solid #0a0a0a;margin-top:52px}.services p{border-bottom:1px solid #0a0a0a;padding:9px 0;font-size:12px}.contact{color:#fff;background:#0a0a0a;padding:26px 16px 72px}.contact-heading>p{text-transform:uppercase;font-size:12px;font-weight:300}.contact-heading h2{letter-spacing:-.07em;margin-top:96px;font-size:150px;font-weight:300;line-height:.87}.contact-grid{grid-template-columns:1fr 1fr;gap:9vw;margin-top:108px;display:grid}.contact-details{flex-direction:column;align-items:flex-start;font-size:13px;display:flex}.contact-details p{font-size:12px}.contact-details a{border-bottom:1px solid #fff;align-items:center;gap:20px;padding-bottom:7px;display:flex}.contact-details svg{width:17px}.contact-details p:nth-child(2){margin-top:auto}.contact-details p:last-child{color:#8d8d8d;margin-top:5px}form{flex-direction:column;display:flex}label{border-bottom:1px solid #4e4e4e;flex-direction:column;gap:11px;padding:17px 0 15px;display:flex}label>span{color:#898989;text-transform:uppercase;font-size:10px}input,textarea{color:#fff;resize:none;background:0 0;border:0;outline:0;padding:0;font-size:15px}input::placeholder,textarea::placeholder{color:#6f6f6f}form button{color:#fff;cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #fff;justify-content:space-between;align-items:center;margin-top:28px;padding:0 0 11px;display:flex}form button svg{width:20px;transition:transform .22s}form button:hover svg{transform:translate(3px,-3px)}.success{color:#a6a6a6;margin-top:13px;font-size:12px}footer{color:#fff;background:#0a0a0a;border-top:1px solid #343434;grid-template-columns:1fr 1fr 1fr;align-items:end;padding:50px 16px 18px;font-size:11px;display:grid}main,.site-header,.projects,.about,.contact,footer{transition:color .3s,background-color .3s,border-color .3s}html[data-theme=dark] main,html[data-theme=dark] .site-header,html[data-theme=dark] .projects,html[data-theme=dark] .about{color:#f2f2ef;background:#0a0a0a}html[data-theme=dark] .site-header{background:#0a0a0ae0;border-bottom-color:#f2f2ef1a}html[data-theme=dark] .project-meta,html[data-theme=dark] .about,html[data-theme=dark] .services,html[data-theme=dark] .services p{border-color:#494949}html[data-theme=dark] .hero-image,html[data-theme=dark] .project-image{background:#181818}footer>div:first-child p:last-child,.footer-end p{color:#777;margin-top:4px}.footer-links{justify-self:center;gap:30px;display:flex}.footer-end{text-align:right;justify-self:end}.project-detail{padding-top:64px}.project-detail-heading{flex-direction:column;padding:150px 16px 40px;display:flex}.project-detail-meta{text-transform:uppercase;grid-template-columns:1fr 1fr 1fr;align-items:center;margin-top:72px;font-size:11px;display:grid}.project-detail-heading h1{letter-spacing:-.08em;font-size:clamp(84px,15vw,220px);font-weight:400;line-height:.75}.project-detail-meta p:nth-child(2){justify-self:center}.project-detail-meta p:last-child{justify-self:end}.project-detail-cover{background:#eeeeeb}.project-detail-cover img{height:auto}.behance-gallery{background:#fff;flex-direction:column;display:flex}.behance-gallery figure{margin:0}.behance-gallery img{height:auto}.project-pagination{border-top:1px solid;grid-template-columns:1fr 2fr;gap:8vw;padding:30px 16px 90px;display:grid}.project-pagination>a:first-child{align-self:end;width:fit-content;font-size:12px}.project-pagination>a:hover{font-weight:600}.project-pagination>a:last-child{grid-template-columns:1fr auto;align-items:end;display:grid}.project-pagination>a:last-child span{text-transform:uppercase;grid-column:1/-1;margin-bottom:36px;font-size:11px}.project-pagination>a:last-child strong{letter-spacing:-.065em;font-size:clamp(54px,8vw,118px);font-weight:400;line-height:.82}.project-pagination svg{width:34px;margin-bottom:5px}html[data-theme=dark] .project-detail-cover{background:#181818}@media (width<=800px){.site-header{-webkit-backdrop-filter:none;background:#fff;grid-template-columns:1fr auto;column-gap:20px}.site-header nav{display:none}.site-header nav.menu-open{color:#0a0a0a;-webkit-backdrop-filter:none;background:#fff;flex-direction:column;justify-content:center;align-items:flex-start;width:100%;height:calc(100dvh - 64px);padding:32px 18px 64px;display:flex;position:fixed;top:64px;left:0}.site-header nav.menu-open .mobile-menu-links{flex-direction:column;gap:28px;display:flex}.site-header nav.menu-open a{letter-spacing:-.06em;font-size:clamp(31px,7.8vw,49px);font-weight:400;line-height:.95}.site-header nav.menu-open .mobile-menu-info{flex-direction:column;align-items:flex-start;gap:0;font-size:10px;line-height:1.4;display:flex;position:absolute;bottom:28px;left:18px;right:18px}.mobile-menu-info>div{flex-direction:column;display:flex}.mobile-menu-info>div:last-child{text-align:left;align-items:flex-start}.mobile-menu-info strong{font-weight:500}.mobile-menu-info span{color:#777772}html[data-theme=dark] .site-header nav.menu-open{color:#f2f2ef;background:#0a0a0a}html[data-theme=dark] .site-header{background:#0a0a0a}html[data-theme=dark] .mobile-menu-info span{color:#a5a5a0}.mobile-menu-toggle{display:flex}.hero-statement{min-height:210px}.hero-image{height:72vw;min-height:460px}.about-grid{grid-template-columns:1fr;gap:64px}.about-copy{margin-left:auto}.contact-grid{grid-template-columns:1fr;gap:74px}.contact-details{min-height:150px}}@media (width<=560px){.site-header{height:58px}.site-header nav.menu-open{height:calc(100dvh - 58px);top:58px}.header-controls{gap:12px}.theme-toggle{min-width:62px}.monogram,.brand-logo{width:68px}.hero,.project-detail{padding-top:58px}.hero-statement{min-height:180px;font-size:16px}.hero-statement p:nth-child(2){margin-bottom:4px}.hero-meta{grid-template-columns:1fr auto;height:78px;font-size:10px}.hero-meta p:last-child{display:none}.hero-image{height:128vw;min-height:480px}.hero-image img{object-position:48% center}.projects{padding-top:74px;padding-bottom:96px}.section-title-row{margin-bottom:36px}.section-title-row h1{max-width:290px;font-size:48px}.project-list{gap:70px}.project-image{height:116vw;max-height:600px}.project-meta{min-height:66px;font-size:10px}.project-meta h2{font-size:14px}.view-project{opacity:1;transform:none}.about{padding-bottom:86px}.eyebrow{gap:28px}.about-grid{margin-top:72px}.about-grid>h2{font-size:43px}.about-copy{margin-left:0}.contact-heading h2{margin-top:72px;font-size:60px}.contact-grid{margin-top:76px}footer{grid-template-columns:1fr auto;gap:48px 20px}.footer-links{grid-area:2/1/auto/-1;justify-content:space-between;justify-self:stretch}.project-detail-heading{padding-top:150px;padding-bottom:40px}.project-detail-meta{margin-top:52px}.project-detail-heading h1{font-size:clamp(72px,24vw,112px);line-height:.8}.project-detail-meta{grid-template-columns:1fr auto;font-size:10px}.project-detail-meta p:nth-child(2){display:none}.project-pagination{grid-template-columns:1fr;gap:72px}.project-pagination>a:first-child{order:2}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
