@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#142620;--paper:#f6f5ef;--muted:#5e6a63;--line:#d8ddd5;--lime:#ddebaf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #899e42;outline-offset:5px}.skip{position:fixed;top:-80px;background:white;padding:10px;z-index:100}.skip:focus{top:0}header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px 5%;border-bottom:1px solid var(--line);background:var(--paper)}.wordmark{display:flex;align-items:center;gap:10px;font:800 22px/1 'Manrope',sans-serif;letter-spacing:1px}.wordmark small{display:block;letter-spacing:3.7px;font:600 8px/1.8 'Manrope',sans-serif;margin-top:5px}nav{display:flex;gap:30px;font-size:14px}.head-end{display:flex;align-items:center;gap:24px}#language{border:0;background:none;cursor:pointer;font-size:13px;padding:10px}.contact-top{font-size:14px;border-bottom:1px solid;padding:8px 0}.hero{display:grid;grid-template-columns:1.12fr 1fr;min-height:640px;background:var(--ink);color:var(--paper)}.hero-copy{padding:70px 9% 25px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.6px;display:flex;align-items:center;gap:9px}.dot{height:6px;width:6px;border-radius:50%;background:var(--lime)}h1,h2,h3{font-family:'Manrope',sans-serif;font-weight:500;letter-spacing:-2px;line-height:1.12;margin:0}h1{font-size:clamp(48px,5.2vw,82px);margin:40px 0 25px}h2{font-size:clamp(34px,3.5vw,52px);margin:25px 0}h3{font-size:25px;letter-spacing:-.8px}.lead{max-width:440px;color:#becbc0;font-size:18px;margin-bottom:32px}.button{display:inline-flex;padding:14px 23px;gap:30px;font-size:14px;font-weight:600}.pale{background:var(--lime);color:var(--ink)}.dark{background:var(--ink);color:white}.button:hover{filter:brightness(.93)}.hero-foot{display:flex;justify-content:space-between;gap:18px;margin-top:65px;font-size:9px;letter-spacing:1px;color:#afbab1}.hero-art{position:relative;overflow:hidden;background:#bacba7;min-height:570px;color:var(--ink)}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#1426200b 1px,transparent 1px),linear-gradient(90deg,#1426200b 1px,transparent 1px);background-size:64px 64px}.orbit{position:absolute;width:650px;height:650px;border:1px solid #14262027;border-radius:50%;left:25%;top:0}.two{width:850px;height:850px;left:10%;top:-100px}.three{width:1050px;height:1050px;left:-5%;top:-200px}.monolith{position:absolute;bottom:115px;width:25%;border-radius:160px 160px 0 0;box-shadow:25px 25px 45px #17282030;transform:skewY(-8deg)}.m1{height:200px;left:14%;background:linear-gradient(90deg,#354d3d,#617b58)}.m2{height:310px;left:38%;background:linear-gradient(90deg,#a7bc86,#e6ebc1)}.m3{height:410px;left:62%;background:linear-gradient(90deg,#6b8059,#b9c99b)}.art-tag{position:absolute;left:8%;top:35px;font-size:9px;letter-spacing:1.6px}.art-caption{position:absolute;bottom:35px;left:8%;font:500 22px/1.3 'Manrope',sans-serif}.art-index{position:absolute;bottom:40px;right:6%;font-size:9px;letter-spacing:1px}.section{padding:90px 6%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;border-bottom:1px solid var(--line)}.intro-copy p{margin:0 0 24px;color:var(--muted)}.intro-copy p:first-child{font-size:21px;color:var(--ink)}.facts{display:flex;gap:65px;padding-top:24px}.facts strong{display:block;font:500 26px 'Manrope',sans-serif}.facts span{display:block;font-size:12px;color:var(--muted);margin-top:8px}.section-top{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:30px}.section-top>p{max-width:300px;color:var(--muted);font-size:14px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.project{border:1px solid var(--line);background:#fbfbf7;display:flex;flex-direction:column}.brand-panel{height:265px;position:relative;overflow:hidden;display:grid;place-items:center}.panel-number{position:absolute;top:18px;left:22px;font-size:10px;letter-spacing:1px}.brand-name{z-index:1;text-align:center;font:34px Georgia,serif;position:relative}.brand-name small{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:2px;margin-top:18px}.bloom{background:#f0e5e5;color:#432b43}.bloom em{color:#b4476a}.bloom-ring{position:absolute;width:290px;height:290px;border:1px solid #b4476a35;border-radius:50%;left:24%;top:14%}.bloom-ring:after{content:'';position:absolute;inset:18px;border:1px solid #b4476a25;border-radius:50%}.nusa{background:#c8d2bd;color:#fff}.nusa .panel-number{color:var(--ink)}.nusa svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.nusa .brand-name{margin-top:74px;text-shadow:0 1px 5px #142620}.vows{background:#e9dfcf;color:#5b4639}.vow-arch{position:absolute;border:1px solid #8e715835;width:170px;height:260px;border-radius:100px 100px 0 0;transform:rotate(23deg);left:8%;top:65px}.vow-arch.b{left:50%;top:-45px;transform:rotate(-23deg)}.project-body{padding:26px;flex:1;display:flex;flex-direction:column}.status{font-size:9px;text-transform:uppercase;letter-spacing:1px;align-self:start;padding:5px 9px;background:#e9ece5;color:#54624f;margin-bottom:18px}.active{background:#e4edce;color:#3b4a23}.project-body p{color:var(--muted);font-size:14px;margin-bottom:25px}.project-body a{margin-top:auto;font-size:13px;font-weight:700}.project-note{font-size:11px;color:var(--muted);margin-top:auto}.approach{background:#e9ece3}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:38px}.principles span{font-size:12px;color:#778570}.principles h3{margin:20px 0;font-size:23px}.principles p{font-size:14px;color:var(--muted)}.careers{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.career-title p{color:var(--muted);max-width:430px}.role{padding:36px;border:1px solid var(--line);background:white}.role h3{font-size:37px;margin-top:15px}.role p{font-size:14px;color:var(--muted)}.role .role-meta{font-size:12px;margin:20px 0}.role small{display:block;font-size:11px;color:var(--muted);margin-top:20px}.contact{background:var(--ink);color:var(--paper)}.contact .eyebrow{color:#b4c5a5}.contact h2{font-size:clamp(40px,5vw,70px)}.email{display:flex;justify-content:space-between;gap:20px;align-items:center;font:400 clamp(18px,3vw,42px) 'Manrope',sans-serif;border-bottom:1px solid #576358;padding:24px 0;color:var(--lime);overflow-wrap:anywhere}.email span{font-size:40px}.contact-bottom{display:flex;justify-content:space-between;gap:30px;font-size:13px;color:#bdc8bd;margin-top:25px}footer{display:flex;gap:25px;align-items:center;justify-content:space-between;padding:30px 6%;font-size:11px;color:var(--muted)}footer .wordmark{font-size:17px}.footer-small{font-size:7px}.legal{max-width:850px;margin:50px auto;padding:24px}.legal h1{font-size:45px}.legal h2{font-size:23px;letter-spacing:-.5px}.legal p{color:var(--muted)}@media(max-width:950px){header{padding:20px 4%}nav{gap:15px}.contact-top{display:none}.hero{grid-template-columns:1fr 1fr}.hero-copy{padding:50px 8% 25px}.hero-foot{flex-direction:column}.hero-art{min-height:590px}.brand-name{font-size:26px}.project-grid{gap:14px}.project-body{padding:20px}.section{padding:65px 5%}.principles{gap:25px}}@media(max-width:680px){header{flex-wrap:wrap;gap:15px}.wordmark{font-size:19px}nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;font-size:13px}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 6% 24px}h1{font-size:51px;margin-top:30px}.hero-foot{flex-direction:row;margin-top:38px;font-size:8px}.hero-art{min-height:360px}.monolith{bottom:85px}.m1{height:120px}.m2{height:185px}.m3{height:240px}.art-caption{font-size:18px}.art-tag{top:22px}.intro,.careers{grid-template-columns:1fr;gap:25px}.section-top{display:block}.section-top>p{max-width:none}.project-grid,.principles{grid-template-columns:1fr;gap:25px}.brand-panel{height:260px}.brand-name{font-size:35px}.principles>div+div{border-top:1px solid #cdd4c7;padding-top:22px}.role{padding:28px}.contact-bottom{flex-direction:column;gap:0}footer{flex-wrap:wrap;gap:20px}footer .wordmark{width:100%}.email{font-size:17px}.email span{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.vision{grid-column:1/-1;border-top:1px solid var(--line);padding-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:20px 9%}.vision .eyebrow{grid-column:1/-1}.vision h3{font-size:32px}.vision p{color:var(--muted);margin:0}.bloom{background:#173c31;color:#f5f0df}.bloom em{color:#d2b576}.bloom-ring,.bloom-ring:after{border-color:#d2b57655}.frame{background:#222c40;color:#edf0f7}.frame .brand-name{font-family:Manrope,sans-serif;font-weight:600;letter-spacing:-1px}.frame-lines{position:absolute;inset:40px 18%;border:1px solid #b1bbd155;transform:rotate(-10deg)}.frame-lines:after{content:'';position:absolute;inset:15px;border:1px solid #b1bbd144}.gallery{border-bottom:1px solid var(--line)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.photo-placeholder{min-height:245px;border:1px dashed #b7c1b3;background:#ecefe7;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#5e6a63}.photo-icon{font-size:32px;font-weight:400;color:#809276;margin-bottom:16px}.photo-placeholder small{font-size:11px;margin-top:5px}.whatsapp{display:inline-block;margin-top:25px;font-size:14px;color:var(--lime)}@media(max-width:680px){.vision{grid-template-columns:1fr}.vision h3{font-size:28px}.gallery-grid{grid-template-columns:1fr}.photo-placeholder{min-height:200px}}

/* Corporate visual refresh */
:root{--lime:#dbcba4}header{padding-top:22px;padding-bottom:22px}.contact-top{background:var(--ink);color:#fff;border:0;padding:12px 20px}.hero{min-height:680px;grid-template-columns:1.05fr 1fr}.hero h1{font-size:clamp(44px,4.6vw,76px);letter-spacing:-3px}.hero-copy{padding-top:85px}.hero-art.visual-hero{background:#1b3027}.hero-photo{width:100%;height:100%;position:absolute;object-fit:cover;object-position:65% center;filter:brightness(.8)}.visual-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#10251c70,transparent 60%);pointer-events:none}.hero-inset{position:absolute;z-index:1;bottom:55px;left:35px;width:54%;background:#f5f1e7;padding:7px;box-shadow:0 20px 55px #0005}.hero-inset img{width:100%;display:block}.hero-inset span{color:#25382e;font-size:8px;letter-spacing:1px;display:block;padding:10px 5px}.hero-image-label{position:absolute;right:25px;top:30px;z-index:1;color:#fff;font-size:9px;letter-spacing:1.8px}.photographic{height:360px;align-items:end;padding-bottom:30px;color:#fff}.project-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}.photographic:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#051710bc,transparent 65%)}.photographic .brand-name{z-index:2;font-size:36px;text-shadow:0 2px 15px #0008;margin:0}.photographic .brand-name em{color:#e6d3a5}.photographic .panel-number{z-index:2;color:white;background:#10271b80;padding:3px 8px}.photographic svg,.photographic .vow-arch,.photographic .bloom-ring,.photographic .frame-lines{display:none}.project:hover .project-photo{transform:scale(1.025)}.project-body{padding:30px}.gallery-photo{margin:0;background:#e8e8df}.gallery-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-photo figcaption{display:flex;justify-content:space-between;padding:16px;font-size:13px}.gallery-photo figcaption span{font-size:10px;color:#687167}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-grid>div>p{max-width:410px;color:#bac8bd}.contact-email{display:block;font-size:clamp(16px,2vw,24px);overflow-wrap:anywhere;color:var(--lime);margin-top:30px}.contact .whatsapp{display:block;margin-top:10px}.office{margin:35px 0;font-size:14px}.office strong{font-weight:500;color:var(--lime)}address{font-style:normal;color:#c2cdc4;margin:10px 0}.office small{font-size:11px;color:#b5c0b8}.linkedin-button{display:inline-flex;align-items:center;gap:12px;border:1px solid #69796b;padding:13px 20px;font-weight:bold}.linkedin-button span{font-size:13px;font-weight:400}.contact-form{padding:35px;background:#f6f5ef;color:var(--ink)}.contact-form h3{font-size:28px;margin-bottom:25px}.contact-form label{display:block;font-size:12px;margin:14px 0}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;font:14px/1.5 inherit;padding:12px;border:1px solid #bdc6bb;background:#fff;margin-top:7px;border-radius:0;color:var(--ink)}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{outline:2px solid #426852;outline-offset:1px}.contact-form .button{border:0;cursor:pointer;width:100%;justify-content:center;margin-top:20px}.form-privacy{font-size:11px;color:#57665c}.form-privacy-link{font-size:11px;text-decoration:underline}.ai-note{font-size:9px}footer{flex-wrap:wrap}.gallery-grid{grid-template-columns:repeat(3,1fr)}@media(max-width:680px){.hero{grid-template-columns:1fr}.hero h1{font-size:46px;letter-spacing:-2px}.hero-copy{padding-top:45px}.visual-hero{height:400px}.hero-inset{bottom:25px;left:20px;width:52%}.photographic{height:280px}.gallery-grid,.contact-grid{grid-template-columns:1fr}.contact-form{margin-top:35px;padding:25px}.contact-top{display:inline-flex;font-size:11px;padding:9px}.head-end{gap:7px}.hero-image-label{font-size:8px}.project-body{padding:24px}}
.contact-form input,.contact-form select,.contact-form textarea{font-family:inherit;font-size:14px;line-height:1.5}

/* 26 Sep fixes */
.ai-chip{position:absolute;left:20px;bottom:20px;z-index:2;background:rgba(16,37,28,.72);color:#fff;font-size:11px;letter-spacing:.6px;padding:6px 10px;border-radius:999px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.thanks{min-height:70vh;display:flex;flex-direction:column;justify-content:center;gap:14px}
/* careers: more roles */
.more-roles{grid-column:1/-1;display:grid;gap:22px;margin-top:10px;border-top:1px solid var(--line);padding-top:40px}
.role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.role-sm{display:flex;flex-direction:column}
.role-sm h3{font-size:28px;line-height:1.1}
.role-sm small{margin-top:auto;padding-top:18px}
.role-link{font-size:14px;font-weight:600;color:var(--ink);margin-top:6px;align-self:start}
.role-link:hover{text-decoration:underline}
.role-lines{display:grid;border-top:1px solid var(--line)}
.role-line{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:22px 0;border-bottom:1px solid var(--line)}
.role-line h4{font-size:18px;margin:0 0 6px}
.role-line p{margin:0;font-size:14px;color:var(--muted);max-width:620px}
.role-line .role-link{margin:0;white-space:nowrap;align-self:center}
.roles-foot{font-size:12px;color:var(--muted);margin:0}
@media(max-width:680px){.role-grid{grid-template-columns:1fr}.role-line{flex-direction:column;align-items:flex-start;gap:12px}.role-line .role-link{align-self:start}.role-sm h3{font-size:24px}}
.careers{row-gap:56px}@media(max-width:950px){.careers{row-gap:25px}}
/* 26 Sep: pop-up, contact note, careers page */
.link-button{background:none;border:0;padding:0;font:inherit;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;text-align:left;align-self:start}
.link-button:hover{text-decoration:underline}
.link-button:focus-visible,.role-link:focus-visible,.modal-close:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.contact-note{font-size:13px;color:#b5c0b8;margin-top:8px;max-width:420px}
body.modal-open{overflow:hidden}
.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px}
.modal[hidden]{display:none}
.modal-backdrop{position:absolute;inset:0;background:rgba(10,24,18,.62)}
.modal-panel{position:relative;background:var(--paper);color:var(--ink);max-width:620px;width:100%;max-height:calc(100vh - 32px);overflow:auto;padding:40px 36px 32px}
.modal-panel h3{font-size:clamp(30px,5vw,44px);margin:10px 0 14px;line-height:1.05}
.modal-panel h3 em{font-style:normal;color:#b08d4c}
.modal-panel>p{color:var(--muted);font-size:15px;max-width:60ch}
.modal-close{position:absolute;top:12px;right:14px;width:40px;height:40px;border:0;background:none;font-size:28px;line-height:1;color:var(--ink);cursor:pointer}
.modal-facts{display:grid;gap:14px;margin:24px 0;padding:20px 0;border-block:1px solid var(--line)}
.modal-facts dt{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.modal-facts dd{margin:0;font-size:14px;line-height:1.5}
.modal-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px}
.modal-actions small{font-size:12px;color:var(--muted)}
.careers-page .section{padding-block:70px}
.careers-hero h1{font-size:clamp(44px,8vw,96px);line-height:.95;margin:18px 0}
.careers-hero .lead{max-width:560px;color:var(--muted);font-size:17px}
.open-roles .role-grid{margin-top:22px}
.apply{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:8%;align-items:start;border-top:1px solid var(--line)}
.apply-intro h2{font-size:clamp(32px,4.5vw,52px);line-height:1;margin:14px 0}
.apply-intro p{color:var(--muted);max-width:420px}
.apply-alt{font-size:13px;margin-top:26px}
.apply-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;background:white;border:1px solid var(--line);padding:32px}
.apply-form .full{grid-column:1/-1}
.apply-form label{display:grid;gap:7px;font-size:12px;font-weight:600;color:var(--ink)}
.apply-form input,.apply-form select,.apply-form textarea{font:inherit;font-size:15px;font-weight:400;color:var(--ink);background:var(--paper);border:1px solid var(--line);padding:12px 13px;width:100%;box-sizing:border-box}
.apply-form input[type=file]{padding:10px;background:white}
.apply-form input:focus,.apply-form select:focus,.apply-form textarea:focus{outline:2px solid var(--ink);outline-offset:1px}
.apply-form .form-privacy{font-size:12px;color:var(--muted);margin:0}
.apply-form .button{border:0;cursor:pointer;justify-content:center}
.field-msg{color:#b3261e;font-weight:500}
nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}
@media(max-width:950px){.apply{grid-template-columns:1fr;gap:30px}}
@media(max-width:680px){.apply-form{grid-template-columns:1fr;padding:22px}.modal-panel{padding:34px 22px 24px}.careers-page .section{padding-block:48px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.button.soon{background:#e4e7df;color:#54624f;cursor:default;pointer-events:none}
