
    :root{--ink:#11161e;--paper:#eef2f5;--white:#f3f6f8;--line:#c8d1da;--copper:#2479d8;--muted:#526270}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit}a:focus-visible{outline:2px solid var(--copper);outline-offset:5px}.wrap{width:min(100% - 64px,1280px);margin:auto}header{border-bottom:1px solid var(--line)}.top{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:32px}.wordmark{text-decoration:none;font-family:Arial,Helvetica,sans-serif;font-size:25px;letter-spacing:-.04em;white-space:nowrap}.wordmark span{color:var(--copper)}nav{display:flex;gap:30px;font-size:14px}nav a{text-decoration:none}nav a:hover,.textlink:hover{text-decoration:underline;text-underline-offset:5px}.hero{min-height:690px;display:grid;grid-template-columns:1fr 1.25fr;align-items:end;padding:100px 0 92px;gap:8vw}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--copper)}.hero .eyebrow{align-self:start;margin-top:12px}.hero h1{font:normal clamp(3.4rem,6.2vw,6.5rem)/1.04 Arial,Helvetica,sans-serif;letter-spacing:-.055em;margin:0;max-width:850px}.hero p{font-size:clamp(1.15rem,1.8vw,1.45rem);color:var(--muted);max-width:560px;margin:34px 0 0}.section{padding:105px 0;border-top:1px solid var(--line)}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:7vw;margin-bottom:65px}.section h2{font:normal clamp(2.2rem,3.5vw,3.7rem)/1.15 Arial,Helvetica,sans-serif;letter-spacing:-.04em;margin:0;max-width:750px}.section-intro{font-size:1.15rem;color:var(--muted);max-width:680px;margin:20px 0 0}.ethics{background:var(--ink);color:var(--white);padding:105px 0}.ethics .eyebrow{color:#c2a379}.ethics-grid{display:grid;grid-template-columns:1fr 2fr;gap:7vw}.ethics h2{font:normal clamp(2.4rem,4vw,4.3rem)/1.12 Arial,Helvetica,sans-serif;letter-spacing:-.04em;margin:0}.ethics p{font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.45;margin:0;max-width:750px}.values,.capabilities{display:grid;grid-template-columns:repeat(2,1fr);gap:0 48px}.item{border-top:1px solid var(--line);padding:26px 0 44px}.number{font-size:12px;color:var(--copper);letter-spacing:.12em}.item h3{font:normal 1.7rem/1.2 Arial,Helvetica,sans-serif;margin:16px 0}.item p{color:var(--muted);max-width:470px;margin:0}.statement{font:normal clamp(1.8rem,2.7vw,2.8rem)/1.28 Arial,Helvetica,sans-serif;letter-spacing:-.025em;max-width:920px;margin:0}.note{margin-top:35px;color:var(--muted);max-width:690px}.textlink{display:inline-block;margin-top:28px;font-size:14px;text-decoration:none;border-bottom:1px solid var(--copper);padding-bottom:5px}footer{border-top:1px solid var(--line);padding:45px 0 65px;font-size:13px;color:var(--muted)}.foot{display:flex;justify-content:space-between;gap:30px}.draft{color:var(--copper)}@media(max-width:800px){.wrap{width:min(100% - 36px,1280px)}.top{min-height:76px;align-items:flex-start;flex-direction:column;padding:18px 0;gap:12px}nav{gap:18px;flex-wrap:wrap}.hero{min-height:580px;grid-template-columns:1fr;gap:85px;padding:70px 0}.hero .eyebrow{margin:0}.section,.ethics{padding:72px 0}.section-head,.ethics-grid{grid-template-columns:1fr;gap:30px;margin-bottom:48px}.values,.capabilities{grid-template-columns:1fr}.foot{flex-direction:column}.hero h1{font-size:clamp(3.1rem,10vw,5rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.about-hero{padding:110px 0 115px;display:grid;grid-template-columns:1fr 2fr;gap:7vw}.about-hero h1{font:normal clamp(1.75rem,2.8vw,2.8rem)/1.28 Arial,Helvetica,sans-serif;letter-spacing:-.025em;margin:0 0 38px;max-width:900px}.about-lead{font:normal clamp(1.55rem,2.6vw,2.6rem)/1.34 Arial,Helvetica,sans-serif;letter-spacing:-.025em;max-width:860px;margin:0 0 35px}.about-body{max-width:730px;color:var(--muted);font-size:1.13rem}.about-body p{margin:0 0 25px}.about-section{padding:95px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:7vw}.about-section h2{font:normal clamp(2.2rem,3.4vw,3.5rem)/1.15 Arial,Helvetica,sans-serif;letter-spacing:-.04em;margin:0}.about-section p{max-width:770px;margin:0 0 25px;font-size:1.12rem;color:var(--muted)}.about-section p:last-child{margin-bottom:0}.bio-head{border-top:1px solid var(--line);padding:90px 0 45px}.bio-head h2{font:normal clamp(3rem,5vw,5rem)/1.08 Arial,Helvetica,sans-serif;letter-spacing:-.05em;margin:15px 0 0}.bio-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:55px;align-items:start;padding-bottom:105px}.portrait{display:block;width:210px;height:auto;aspect-ratio:751/905;object-fit:cover;background:#d1d6d8}.bio-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4vw}.bio-col p{font-size:1.06rem;line-height:1.7;color:var(--muted);margin:0 0 24px}@media(max-width:1000px){.bio-layout{grid-template-columns:170px minmax(0,1fr);gap:32px}.portrait{width:170px}.bio-copy{gap:28px}}@media(max-width:800px){.about-hero,.about-section{grid-template-columns:1fr;gap:30px;padding:70px 0}.about-hero{gap:50px}.bio-head{padding:70px 0 34px}.bio-layout{grid-template-columns:150px minmax(0,1fr);gap:28px}.portrait{width:150px}.bio-copy{grid-template-columns:1fr;gap:0}.bio-col p{font-size:1rem}}@media(max-width:520px){.bio-layout{grid-template-columns:1fr;gap:30px;padding-bottom:75px}.portrait{width:160px}.bio-copy{grid-template-columns:1fr}}

/* Selected Work: an editorial index with the mandate visible before expansion. */
/* The personal profile link belongs with the biography, not in the firm footer. */
.bio-media{width:210px}.bio-media .linkedin-icon{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;margin-top:18px;border:1px solid var(--copper);border-radius:3px;color:var(--ink);text-decoration:none;font:bold 19px/1 Arial,Helvetica,sans-serif;letter-spacing:-.055em}.linkedin-icon:hover{background:var(--ink);border-color:var(--ink);color:var(--white)}.linkedin-icon:focus-visible{outline:2px solid var(--copper);outline-offset:4px}
.work-hero{padding:105px 0 100px;display:grid;grid-template-columns:1fr 2fr;gap:7vw}.work-hero h1{font:normal clamp(3rem,5.4vw,5.7rem)/1.08 Arial,Helvetica,sans-serif;letter-spacing:-.052em;margin:0;max-width:870px}.work-hero p{font-size:1.18rem;color:var(--muted);max-width:680px;margin:34px 0 0}.work-list{border-top:1px solid var(--ink)}.work-entry{border-bottom:1px solid var(--line)}.work-entry summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) 34px;gap:5vw;align-items:start;padding:35px 0 38px}.work-entry summary::-webkit-details-marker{display:none}.work-entry summary:focus-visible{outline:2px solid var(--copper);outline-offset:4px}.work-entry summary:hover .work-title{text-decoration:underline;text-decoration-color:var(--copper);text-underline-offset:6px}.work-heading{display:flex;flex-direction:column;gap:13px}.work-setting{font-size:.82rem;color:var(--copper);letter-spacing:.07em;text-transform:uppercase;font-weight:700}.work-setting span{padding:0 6px;color:var(--line)}.work-title{font:normal clamp(1.7rem,2.4vw,2.45rem)/1.18 Arial,Helvetica,sans-serif;letter-spacing:-.035em}.work-mandate{color:var(--muted);font-size:1.05rem;line-height:1.55;max-width:520px;padding-top:26px}.work-toggle{width:28px;height:28px;border:1px solid var(--copper);border-radius:50%;position:relative;margin-top:24px}.work-toggle:before,.work-toggle:after{content:"";position:absolute;background:var(--copper);left:8px;right:8px;top:13px;height:1px}.work-toggle:after{transform:rotate(90deg)}.work-entry[open] .work-toggle:after{transform:none}.work-detail{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) 34px;gap:5vw;padding:0 0 51px}.work-detail .eyebrow{padding-top:6px}.work-detail p{margin:0 0 19px;color:var(--ink);font-size:1.06rem;line-height:1.68;max-width:620px}.work-detail p:last-child{margin-bottom:0}.work-end{padding:55px 0 105px}nav a[aria-current="page"]{border-bottom:1px solid var(--copper);padding-bottom:4px}@media(max-width:800px){.work-hero{grid-template-columns:1fr;gap:32px;padding:72px 0}.work-hero h1{font-size:clamp(2.7rem,9vw,4.7rem)}.work-hero p{margin-top:24px}.work-entry summary{grid-template-columns:1fr 30px;gap:10px 16px;padding:28px 0}.work-heading{grid-column:1}.work-mandate{grid-column:1;grid-row:2;padding:0}.work-toggle{grid-column:2;grid-row:1;margin-top:22px}.work-detail{grid-template-columns:1fr;gap:15px;padding-bottom:36px}.work-end{padding:40px 0 75px}}

/* What We Do: a quiet editorial sequence, with room for the full working copy. */
.capabilities-hero{padding:105px 0 115px;display:grid;grid-template-columns:1fr 2fr;gap:7vw}.capabilities-hero h1{font:normal clamp(3rem,5.3vw,5.7rem)/1.08 Arial,Helvetica,sans-serif;letter-spacing:-.052em;max-width:860px;margin:0}.capabilities-hero p{font-size:1.2rem;color:var(--muted);max-width:730px;margin:34px 0 0}.capability-list{border-top:1px solid var(--ink)}.capability-row{display:grid;grid-template-columns:1fr 1fr;gap:8vw;border-bottom:1px solid var(--line);padding:65px 0 75px}.capability-name h2{font:normal clamp(2rem,3vw,3.1rem)/1.16 Arial,Helvetica,sans-serif;letter-spacing:-.04em;max-width:530px;margin:20px 0 0}.capability-row p{font-size:1.16rem;line-height:1.7;max-width:600px;margin:28px 0 0;color:var(--muted)}.capability-outro{background:var(--ink);color:var(--white);padding:80px 0 95px}.outro-grid{display:grid;grid-template-columns:1fr 2fr;gap:7vw}.capability-outro .eyebrow{color:#c2a379}.capability-outro h2{font:normal clamp(2rem,3.4vw,3.5rem)/1.16 Arial,Helvetica,sans-serif;letter-spacing:-.04em;margin:0}.capability-outro p{font-size:1.17rem;max-width:580px;color:#ccd2d5;margin:20px 0 0}.capability-outro .textlink{color:var(--white)}@media(max-width:800px){.capabilities-hero{grid-template-columns:1fr;gap:35px;padding:72px 0 78px}.capabilities-hero h1{font-size:clamp(2.7rem,9vw,4.7rem)}.capabilities-hero p{margin-top:23px}.capability-row{grid-template-columns:1fr;gap:12px;padding:43px 0 53px}.capability-row p{margin:0}.capability-outro{padding:65px 0 75px}.outro-grid{grid-template-columns:1fr;gap:28px}}

/* Contact: one point of contact, without a form or third-party widget. */
.contact-layout{padding:120px 0 155px;display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:start;min-height:670px}.contact-layout h1{font:normal clamp(3.8rem,6vw,6.5rem)/1.05 Arial,Helvetica,sans-serif;letter-spacing:-.055em;margin:28px 0 0}.contact-direct{padding-top:53px}.contact-direct>p:first-child{font:normal clamp(1.5rem,2.4vw,2.35rem)/1.38 Arial,Helvetica,sans-serif;letter-spacing:-.025em;max-width:610px;margin:0}.contact-address{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);margin-top:75px;padding:26px 0 32px;display:flex;flex-direction:column;gap:14px}.address-placeholder{font-size:1.2rem;color:var(--muted)}.contact-preview-note{font-size:.88rem;color:var(--muted);margin:19px 0 0;max-width:530px}@media(max-width:800px){.contact-layout{grid-template-columns:1fr;gap:25px;padding:75px 0 105px;min-height:0}.contact-layout h1{font-size:clamp(3.5rem,12vw,5.5rem)}.contact-direct{padding-top:24px}.contact-address{margin-top:58px}}

/* Legal drafts share the same editorial grid and remain visibly provisional. */
.legal-layout{display:grid;grid-template-columns:1fr 2fr;gap:7vw;padding:90px 0 135px;align-items:start}.legal-side h1{font:normal clamp(2.8rem,4.5vw,4.6rem)/1.1 Arial,Helvetica,sans-serif;letter-spacing:-.045em;margin:27px 0 0}.legal-copy{max-width:790px}.legal-draft{border-left:3px solid var(--copper);background:#ecece8;color:var(--ink);padding:19px 24px;margin:0 0 58px;font-size:.96rem}.legal-copy section{border-top:1px solid var(--line);padding:28px 0 38px}.legal-copy h2{font:normal 1.75rem/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.025em;margin:0 0 18px}.legal-copy p{color:var(--muted);font-size:1.05rem;line-height:1.68;margin:0 0 16px}.legal-copy p:last-child{margin-bottom:0}.legal-copy dl{display:grid;grid-template-columns:175px 1fr;gap:13px 25px;margin:23px 0 0;font-size:1rem}.legal-copy dt{color:var(--muted)}.legal-copy dd{margin:0}.legal-pending{color:#815928;font-weight:600}.legal-links{display:flex;gap:25px;flex-wrap:wrap}.legal-links a{text-decoration:none;border-bottom:1px solid var(--copper);padding-bottom:3px}.legal-links a:hover{text-decoration:underline;text-underline-offset:5px}@media(max-width:800px){.legal-layout{grid-template-columns:1fr;gap:45px;padding:72px 0 95px}.legal-copy dl{grid-template-columns:1fr;gap:3px}.legal-copy dd{margin-bottom:12px}}

/* Shared footer: site navigation above the legal and copyright line. */
footer{padding:0}.footer-main{display:flex;justify-content:space-between;align-items:start;gap:55px;padding-top:57px;padding-bottom:75px}.footer-main .wordmark{line-height:1.25}.footer-nav{display:grid;grid-template-columns:repeat(3,max-content);gap:15px 42px;line-height:1.4}.footer-nav a{text-decoration:none}.footer-nav a:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;padding-top:24px;padding-bottom:38px;color:var(--muted);font-size:.82rem}.footer-bottom .legal-links{gap:25px}@media(max-width:800px){.footer-main{flex-direction:column;gap:40px;padding-top:48px;padding-bottom:55px}.footer-nav{grid-template-columns:repeat(2,max-content);gap:17px 36px}.footer-bottom{flex-direction:column;gap:20px}}

@media(max-width:1000px){.bio-media{width:170px}}@media(max-width:800px){.bio-media{width:150px}}@media(max-width:520px){.bio-media{width:160px}}

/* Oreggi identity: flat OG, charcoal, pale reading field and restrained blue. */
body{background:var(--paper)}
header{background:var(--ink);color:var(--white);border-bottom:1px solid #36414d}
.top{min-height:94px}
.wordmark{display:inline-flex;align-items:center;gap:12px;font:400 16px/1.02 Arial,Helvetica,sans-serif;letter-spacing:0;color:inherit}
.brand-emblem{display:block;width:52px;height:37px;object-fit:contain;flex:none}
.brand-type{display:flex;flex-direction:column;gap:4px;white-space:nowrap}
.brand-type strong{font-weight:500;letter-spacing:.15em;font-size:16px}
.brand-type small{font-size:10px;letter-spacing:.28em;font-weight:400}
nav a{transition:color .2s ease}header nav a:hover{color:#91c4ff}
nav a[aria-current="page"]{border-color:#60a9f5}
.home-hero{background:var(--ink);color:var(--white);border-bottom:1px solid #405164}
.hero{min-height:650px;padding-top:95px;padding-bottom:104px;align-items:end}
.hero-brand{align-self:start;display:flex;flex-direction:column;gap:62px}
.hero-brand img{width:min(280px,70%);height:auto}
.hero h1{font-weight:400;letter-spacing:-.055em;max-width:780px}
.hero p{color:#bccad8}
.eyebrow,.number,.work-setting{color:var(--copper)}
.ethics{background:#1b2836;border-top:3px solid var(--copper)}
.ethics .eyebrow,.capability-outro .eyebrow{color:#80bdff}
.ethics p{color:#e3ebf3}
.item{border-color:var(--line)}
.item h3,.work-title,.capability-name h2{letter-spacing:-.035em}
.section h2,.about-section h2,.work-hero h1,.capabilities-hero h1,.contact-layout h1,.legal-side h1,.bio-head h2{font-weight:400}
.about-hero,.work-hero,.capabilities-hero,.contact-layout,.legal-layout{border-top:3px solid var(--copper)}
.textlink,.legal-links a{border-bottom-color:var(--copper)}
.bio-media .linkedin-icon,.work-toggle{border-color:var(--copper)}
.work-toggle:before,.work-toggle:after{background:var(--copper)}
.capability-outro{background:#1b2836}
footer{background:var(--ink);color:var(--white);border-top:3px solid var(--copper)}
footer .footer-main{padding-top:65px}
footer .footer-nav a{color:#d2dce5}
footer .footer-nav a:hover{color:#fff}
footer .footer-bottom{border-color:#374350;color:#aebbc8}
footer .draft{color:#80bdff}
footer .legal-links a{color:#d2dce5}
.legal-draft{border-left-color:var(--copper);background:#e1eaf2}
a:focus-visible,.linkedin-icon:focus-visible,.work-entry summary:focus-visible{outline-color:var(--copper)}
@media(max-width:800px){.top{min-height:80px}.hero{min-height:580px;padding:65px 0 75px;gap:70px}.hero-brand{gap:30px}.hero-brand img{width:160px}.brand-emblem{width:46px;height:31px}.brand-type strong{font-size:14px}.brand-type small{font-size:9px}}

/* Homepage opening: the mark belongs in the header; content leads the first screen. */
.hero{min-height:540px;grid-template-columns:.72fr 1.28fr;align-items:center;padding:95px 0}
.hero .eyebrow{align-self:center;margin:0;border-top:3px solid #5aa6f6;padding-top:18px;width:max-content;max-width:100%}
.hero h1{max-width:850px;font-size:clamp(3.2rem,6vw,6.3rem)}
.hero p{max-width:630px;margin-top:26px}
@media(max-width:800px){.hero{min-height:480px;grid-template-columns:1fr;gap:52px;padding:75px 0}.hero .eyebrow{align-self:start}.hero h1{font-size:clamp(3rem,9vw,5rem)}}

/* Responsive refinement across the public pages. */
.wordmark .brand-type{color:var(--white)}
.section-head>*,.ethics-grid>*,.about-hero>*,.about-section>*,.bio-layout>*,.bio-copy>*,.work-hero>*,.capabilities-hero>*,.capability-row>*,.contact-layout>*,.legal-layout>*{min-width:0}
.legal-copy p,.legal-copy dd,.contact-address{overflow-wrap:anywhere}
@media(max-width:1100px) and (min-width:801px){
  .wrap{width:min(100% - 48px,1280px)}
  .section,.ethics{padding-top:82px;padding-bottom:82px}
  .section-head{grid-template-columns:.72fr 1.28fr;gap:5vw}
  .about-hero,.about-section,.work-hero,.capabilities-hero,.legal-layout{gap:5vw}
  .footer-nav{gap:15px 26px}
}
@media(max-width:950px){
  .bio-copy{grid-template-columns:1fr;gap:0}
  .bio-col p{max-width:680px}
}
@media(max-width:600px){
  .top{gap:20px;padding:18px 0 0;align-items:stretch}
  .top .wordmark{align-self:flex-start;margin-bottom:2px}
  header .top nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:0;border-top:1px solid #35414d;font-size:.88rem}
  header .top nav a{display:flex;align-items:center;min-height:46px;padding:10px 8px 10px 0;border-bottom:1px solid #35414d}
  header .top nav a[aria-current="page"]{color:#a5d1ff;border-bottom-color:#60a9f5}
  .hero{gap:40px;padding:60px 0 68px;min-height:0}
  .hero h1{font-size:clamp(2.65rem,9.5vw,3.8rem);line-height:1.07}
  .hero p{font-size:1.08rem;line-height:1.55;margin-top:22px}
  .section,.ethics{padding:64px 0}
  .section-head,.ethics-grid{gap:25px;margin-bottom:40px}
  .section h2{font-size:clamp(2rem,7.5vw,3rem)}
  .about-hero,.about-section,.work-hero,.capabilities-hero{padding-top:63px;padding-bottom:68px}
  .bio-head{padding-top:63px}
  .bio-head h2{font-size:clamp(2.7rem,10vw,4rem)}
  .work-entry summary{gap:10px 12px}
  .work-title{font-size:clamp(1.55rem,6.8vw,2rem)}
  .contact-layout{padding:64px 0 90px}
  .contact-layout h1{font-size:clamp(3.1rem,11vw,4.5rem)}
  .legal-layout{padding-top:64px;padding-bottom:90px}
  .footer-main{padding-top:45px;padding-bottom:48px}
  .footer-nav{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
  .footer-nav a{display:flex;align-items:center;min-height:42px}
  .footer-bottom .legal-links{gap:16px 25px}
}
@media(max-width:380px){
  .wrap{width:calc(100% - 32px)}
  .hero h1{font-size:2.55rem}
  .work-setting{font-size:.73rem}
  .bio-layout{padding-bottom:68px}
  .legal-draft{padding:17px 18px}
}

/* Keep the opening composition together without stretching its content grid. */
.home-hero{display:block;min-height:0}
.home-hero .hero{min-height:calc(100vh - 95px);min-height:calc(100svh - 95px)}
@media(max-width:600px){
  .home-hero .hero{min-height:calc(100vh - 150px);min-height:calc(100svh - 150px)}
}

/* Direct contact address. */
.contact-email{font-size:clamp(1.2rem,2vw,1.8rem);font-weight:400;letter-spacing:-.02em;text-decoration:none;overflow-wrap:anywhere;width:max-content;max-width:100%;border-bottom:1px solid var(--copper);padding-bottom:4px}
.contact-email:hover{text-decoration:underline;text-underline-offset:5px}
