:root { --red:#df492c; --red-dark:#cf3d24; --ink:#20201e; --muted:#6e6b66; --cream:#f3f0e8; --paper:#fffdfa; --line:rgba(32,32,30,.16); --sans:"Helvetica Neue",Helvetica,Arial,sans-serif; --serif:Georgia,"Times New Roman",serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--cream); font-family:var(--sans); -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; } button,input { color:inherit; font:inherit; } img { display:block; max-width:100%; }
::selection { color:#fff; background:var(--red); } :focus-visible { outline:3px solid var(--red); outline-offset:3px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:fixed; z-index:100; left:1rem; top:-5rem; padding:.7rem 1rem; color:#fff; background:var(--ink); border-radius:.4rem; }.skip-link:focus{top:1rem;}
.portfolio-layout { display:grid; grid-template-columns:clamp(275px,18vw,340px) minmax(0,1fr); align-items:start; }
.profile { position:sticky; z-index:5; top:0; height:100svh; min-height:650px; display:flex; flex-direction:column; align-items:center; padding:clamp(30px,5vh,62px) clamp(30px,3vw,52px) clamp(26px,4vh,44px); overflow:hidden auto; scrollbar-width:none; color:#fff; background:linear-gradient(145deg,var(--red-dark),#ed4d32 55%,#e6402c); text-align:center; }
.profile::-webkit-scrollbar{display:none}.profile-main{display:flex;flex-direction:column;align-items:center}.portrait{width:clamp(128px,10vw,176px);aspect-ratio:1;object-fit:cover;object-position:center 13%;border-radius:50%;box-shadow:0 10px 28px rgba(118,27,14,.16)}
.signature{width:clamp(145px,12vw,220px);max-height:170px;margin:clamp(28px,5vh,58px) auto .4rem;object-fit:contain}.role{max-width:240px;margin:0;color:rgba(255,255,255,.92);font-size:.82rem}.profile-divider{width:100%;height:1px;margin:clamp(24px,4vh,42px) 0 clamp(22px,3vh,34px);background:rgba(255,255,255,.52)}
.profile-copy{max-width:260px;margin:0;font-size:clamp(.8rem,.9vw,.94rem);line-height:1.65}.contact-button{width:min(100%,220px);display:flex;justify-content:space-between;align-items:center;margin-top:clamp(26px,4vh,42px);padding:.86rem 1rem;border:1px solid rgba(255,255,255,.9);border-radius:.4rem;font-size:.8rem;font-weight:650;transition:color .2s,background .2s}.contact-button:hover{color:var(--red);background:#fff}
.profile-meta{width:min(100%,220px);margin-top:auto;text-align:left}.cv-link{display:grid;grid-template-columns:22px 1fr;align-items:start;gap:.6rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.35)}.cv-link svg,.profile-links svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cv-link span{display:grid;gap:.2rem}.cv-link b{font-size:.78rem}.cv-link small{color:rgba(255,255,255,.7);font-size:.64rem}.profile-links{display:flex;align-items:center;gap:1.2rem;padding:1rem 0}.profile-links button{padding:0;color:#fff;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.5);cursor:pointer;font-size:.72rem;font-weight:700}.copyright{margin:clamp(22px,3vh,36px) 0 0;color:rgba(255,255,255,.72);font-size:.64rem}
.content{min-width:0;background-color:var(--cream);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150' viewBox='0 0 150 150'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.55' numOctaves='5' seed='8' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='150' height='150' filter='url(%23paper)' opacity='.16'/%3E%3C/svg%3E");background-size:225px 225px}
.topbar{height:68px;display:flex;justify-content:flex-end;align-items:center;padding:0 clamp(30px,4.5vw,76px);background-color:var(--cream);background-image:inherit;background-size:225px 225px}.topbar nav{display:flex;align-items:center;gap:clamp(1.6rem,3vw,3rem)}.topbar nav a,.topbar nav button{position:relative;padding:.5rem 0;background:transparent;border:0;cursor:pointer;font-size:.84rem}.topbar nav .active{color:var(--red)}.topbar nav .active::after{content:"";position:absolute;left:0;right:0;bottom:.15rem;height:2px;background:var(--red)}
.portfolio-section{min-height:calc(100svh - 68px);padding:0 clamp(30px,4.5vw,76px) 70px}.portfolio-intro{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(500px,1.28fr);align-items:end;gap:clamp(2rem,5vw,6rem);padding:0 0 2.2rem}.intro-copy h1{margin:0 0 .7rem;font-family:var(--serif);font-size:clamp(2.35rem,3.35vw,4.1rem);font-weight:400;line-height:1}.intro-copy p{max-width:540px;margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.project-tools{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:clamp(1rem,3vw,3rem)}.search-field{height:48px;display:flex;align-items:center;gap:.7rem;padding:0 1rem;background:rgba(255,255,255,.62);border:1px solid var(--line);border-radius:.45rem}.search-field svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.search-field input{width:100%;padding:0;background:transparent;border:0;outline:0;font-size:.82rem}.search-field input::placeholder{color:#85817b}.filters{display:flex;gap:.7rem}.filters button{min-width:76px;padding:.78rem 1rem;background:rgba(255,255,255,.55);border:1px solid var(--line);border-radius:.45rem;cursor:pointer;font-size:.76rem;transition:color .2s,background .2s,border-color .2s}.filters button.active{color:#fff;background:var(--red);border-color:var(--red)}
.case-grid{display:grid;grid-template-columns:1.15fr .9fr .9fr;grid-auto-flow:row dense;grid-auto-rows:430px;gap:clamp(16px,1.5vw,24px)}.case-card{min-width:0;overflow:hidden;background:#22221f;border:1px solid rgba(255,255,255,.08);border-radius:0;box-shadow:0 7px 20px rgba(32,32,30,.05);transition:transform .25s,box-shadow .25s}.case-card:hover{transform:translateY(-3px);box-shadow:0 13px 30px rgba(32,32,30,.15)}.case-card[hidden]{display:none}.case-card>a{height:100%;display:grid;grid-template-rows:270px minmax(0,1fr)}.case-feature{grid-row:span 2}.case-feature>a{grid-template-rows:610px minmax(0,1fr)}.case-image{position:relative;overflow:hidden;background:#ebe7dd}.case-image img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .45s cubic-bezier(.2,.7,.2,1)}.case-card:hover .case-image img{transform:scale(1.025)}.banner-image{background:#082b2d}.banner-image img{object-position:35% top}.case-badge{position:absolute;z-index:2;left:1rem;top:1rem;padding:.34rem .52rem;color:#fff;background:var(--red);border-radius:.3rem;font-size:.5rem;font-weight:750;text-transform:uppercase}.snurr-case{display:grid;place-items:center;background:#ffd4df}.snurr-case iframe{width:320px;height:250px;max-width:100%;border:0;background:#fff;pointer-events:none}.case-copy{min-height:0;display:flex;flex-direction:column;padding:1.1rem 1.2rem;color:#f8f5ee;border-top:1px solid rgba(255,255,255,.08)}.case-copy h2{margin:0 0 .35rem;font-family:var(--serif);font-size:clamp(1.2rem,1.45vw,1.5rem);font-weight:400;line-height:1.1}.case-subtitle{display:none}.case-description{margin:.65rem 0;color:rgba(255,255,255,.68);font-size:.7rem;line-height:1.5}.case-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;margin-top:auto;color:var(--red);font-size:.66rem;font-weight:700}.case-meta i{width:1px;height:12px;background:rgba(223,73,44,.58)}.case-feature .case-copy{padding:1.35rem 1.5rem}.case-feature .case-copy h2{font-size:clamp(1.8rem,2.2vw,2.35rem)}.case-feature .case-description{max-width:520px;font-size:.76rem;line-height:1.6}.empty-state{padding:4rem 1rem;color:var(--muted);background:rgba(255,255,255,.45);border:1px solid var(--line);border-radius:.7rem;text-align:center;font-family:var(--serif)}
.case-image.live-preview>img{position:absolute;z-index:0;inset:0;opacity:1;transition:opacity .35s,transform .45s cubic-bezier(.2,.7,.2,1)}
.case-image.live-preview>iframe{position:absolute;z-index:1;left:50%;top:0;width:1280px;height:800px;max-width:none;border:0;background:#fff;opacity:0;pointer-events:none;transform-origin:top center;transition:opacity .35s}
.case-image.live-preview.is-loaded>iframe{opacity:1}.case-image.live-preview.is-loaded>img{opacity:0}
.case-image .case-badge{display:none}
.live-indicator{position:absolute;z-index:3;right:.85rem;bottom:.85rem;display:flex;align-items:center;gap:.38rem;padding:.34rem .55rem;color:#fff;background:rgba(23,26,24,.78);border:1px solid rgba(255,255,255,.28);border-radius:999px;box-shadow:0 2px 9px rgba(0,0,0,.14);font-size:.53rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;backdrop-filter:blur(6px)}
.live-indicator i{width:6px;height:6px;background:#7ee293;border-radius:50%;box-shadow:0 0 0 3px rgba(126,226,147,.18)}
.live-indicator.preview-only i{background:#ffc56b;box-shadow:0 0 0 3px rgba(255,197,107,.18)}
.case-card:hover .live-indicator i{animation:live-pulse 1.5s ease-out infinite}@keyframes live-pulse{0%{box-shadow:0 0 0 0 rgba(126,226,147,.55)}70%{box-shadow:0 0 0 6px rgba(126,226,147,0)}100%{box-shadow:0 0 0 0 rgba(126,226,147,0)}}
.project-dialog{width:min(1120px,calc(100% - 32px));max-height:calc(100svh - 32px);padding:0;overflow:hidden auto;color:var(--ink);background:var(--paper);border:0;border-radius:1rem;box-shadow:0 30px 100px rgba(0,0,0,.3)}
.project-dialog::backdrop{background:rgba(37,37,37,.42);backdrop-filter:blur(8px)}.project-dialog[open]{display:block}
.project-dialog-close{position:fixed;right:max(calc((100vw - 1120px)/2 + 1rem),2rem);top:2rem;box-shadow:0 4px 14px rgba(0,0,0,.15)}
.project-browser{padding:1rem 1rem 0;background:#252522}.browser-bar{height:38px;display:flex;align-items:center;gap:7px;padding:0 14px;color:#c8c4bd;background:#3b3b37;border-radius:.55rem .55rem 0 0;font-size:.65rem}.browser-bar>i{width:8px;height:8px;flex:none;background:#df6a59;border-radius:50%}.browser-bar>i:nth-child(2){background:#ddb05b}.browser-bar>i:nth-child(3){background:#75b57d}.browser-bar span{min-width:0;margin-left:.55rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.82}
.project-live-frame{position:relative;height:clamp(360px,57vh,630px);overflow:hidden;background:#f2efe8}.project-live-frame::before{content:"Laster live forhåndsvisning …";position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:.8rem}.project-live-frame>iframe{position:absolute;z-index:1;left:0;top:0;width:125%;height:125%;border:0;background:#fff;opacity:0;transform:scale(.8);transform-origin:top left;transition:opacity .3s}.project-live-frame.is-loaded>iframe{opacity:1}.project-live-frame>[data-project-fallback]{display:none;position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}.project-live-frame.uses-fallback::before{display:none}.project-live-frame.uses-fallback>[data-project-fallback]{display:block}
.project-dialog-info{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,5vw,5rem);padding:clamp(1.7rem,3.5vw,3rem);color:#f8f5ee;background:#22221f;border-top:1px solid rgba(255,255,255,.08)}.project-dialog-info .eyebrow{color:rgba(255,255,255,.52)}.project-dialog-info h2{margin:.25rem 0 .5rem;font-family:var(--serif);font-size:clamp(2rem,3.5vw,3.6rem);font-weight:400;line-height:.98}.project-dialog-subtitle{margin:0;color:#ff765e;font-size:.88rem}.project-dialog-details{display:flex;flex-direction:column;align-items:flex-start}.project-dialog-details>p{max-width:620px;margin:0;color:rgba(255,255,255,.7);font-size:.88rem;line-height:1.65}.project-dialog-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0}.project-dialog-tags span{padding:.42rem .65rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:999px;color:rgba(255,255,255,.74);font-size:.67rem}.project-dialog-details>a{display:inline-flex;align-items:center;gap:.8rem;padding:.75rem 1rem;color:#fff;background:var(--red);border-radius:.45rem;font-size:.72rem;font-weight:700;transition:background .2s}.project-dialog-details>a:hover{background:#ed5b3f}
@media(min-width:1181px){.case-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:8px;gap:20px}.case-card{grid-row:span 22}.case-card>a{grid-template-rows:420px minmax(0,1fr)}.case-feature{grid-column:1/span 2;grid-row:span 22}.case-feature>a{grid-template-rows:420px minmax(0,1fr)}.case-feature .case-copy{display:grid;grid-template-columns:.75fr 1.25fr;grid-template-rows:auto 1fr;column-gap:2.5rem;padding:1.25rem 1.5rem}.case-feature .case-copy h2{grid-column:1;grid-row:1;margin-bottom:.35rem;font-size:2rem}.case-feature .case-subtitle{grid-column:1;grid-row:2}.case-feature .case-description{grid-column:2;grid-row:1;margin:0;font-size:.76rem}.case-feature .case-meta{grid-column:2;grid-row:2;align-self:end}.case-compact{grid-column:1/span 2;grid-row:span 12}.case-compact>a{grid-template-rows:auto minmax(0,1fr)}.case-compact .snurr-case{aspect-ratio:980/300;background:#fff}.case-compact .case-copy{display:grid;grid-template-columns:.9fr 1.1fr;grid-template-rows:auto 1fr;column-gap:2rem;padding:.85rem 1rem}.case-compact .case-copy h2{grid-column:1;grid-row:1;margin-bottom:.25rem;font-size:1.3rem}.case-compact .case-subtitle{grid-column:1;grid-row:2;font-size:.7rem}.case-compact .case-description{display:block;grid-column:2;grid-row:1/span 2;align-self:center;margin:0;font-size:.7rem}.case-compact .case-meta{display:none}.case-compact .live-indicator{right:.55rem;bottom:.5rem}}
.about-dialog{width:min(820px,calc(100% - 32px));max-height:calc(100svh - 32px);padding:0;overflow:hidden auto;color:var(--ink);background:var(--paper);border:0;border-radius:1rem;box-shadow:0 30px 100px rgba(0,0,0,.25)}.about-dialog::backdrop{background:rgba(37,37,37,.35);backdrop-filter:blur(7px)}.about-dialog[open]{display:grid;grid-template-columns:.75fr 1.25fr}.dialog-close{position:absolute;z-index:3;right:1rem;top:1rem;width:36px;height:36px;background:#fff;border:1px solid var(--line);border-radius:50%;cursor:pointer;font-size:1.2rem}.about-portrait{min-height:500px;background:var(--red)}.about-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 22%}.about-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,4.5rem)}.eyebrow{margin:0 0 .5rem;color:var(--muted);font-size:.59rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.about-copy h2{margin:.4rem 0 1.2rem;font-size:clamp(2.5rem,4vw,4.5rem);line-height:.88;letter-spacing:-.04em}.about-copy h2 em{color:var(--red);font-family:var(--serif);font-weight:400}.about-copy>p:not(.eyebrow){margin:0;color:var(--muted);font-size:.8rem;line-height:1.55}.about-copy dl{margin:1.5rem 0;border-top:1px solid var(--line)}.about-copy dl div{display:grid;grid-template-columns:85px 1fr;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line);font-size:.66rem;line-height:1.4}.about-copy dt{color:var(--muted);text-transform:uppercase}.about-copy dd{margin:0}.about-copy>a{align-self:flex-start;padding:.75rem 1rem;color:#fff;background:var(--red);border-radius:.45rem;font-size:.7rem}
@media(max-width:1400px){.portfolio-intro{grid-template-columns:1fr;gap:1.4rem}.intro-copy p{max-width:560px}.project-tools{grid-template-columns:minmax(230px,1fr) auto}}
@media(max-width:1180px){.project-tools{grid-template-columns:1fr}.filters{overflow-x:auto;padding-bottom:.25rem}.case-grid{grid-template-columns:1fr 1fr;grid-auto-rows:auto}.case-card{height:600px}.case-feature{grid-row:auto}.case-card>a,.case-feature>a{grid-template-rows:430px minmax(0,1fr)}.case-feature .case-copy{padding:1.1rem 1.2rem}.case-feature .case-copy h2{font-size:1.55rem}.case-feature .case-description{font-size:.7rem}.case-compact{grid-column:1/-1;height:auto}.case-compact>a{grid-template-rows:auto auto}.case-compact .snurr-case{aspect-ratio:980/300;background:#fff}.case-compact .case-copy{min-height:105px;justify-content:center}.case-compact .case-description,.case-compact .case-meta{display:none}}
@media(max-height:760px) and (min-width:761px){.profile{padding-block:20px 16px}.portrait{width:112px}.signature{width:142px;margin:14px auto .2rem}.role{font-size:.73rem}.profile-divider{margin:13px 0 12px}.profile-copy{font-size:.76rem;line-height:1.5}.contact-button{margin-top:14px;padding-block:.72rem;font-size:.74rem}.cv-link{padding-bottom:.6rem}.cv-link b{font-size:.7rem}.cv-link small{font-size:.58rem}.profile-links{padding:.6rem 0}.profile-links button{font-size:.65rem}.copyright{margin-top:9px;font-size:.58rem}}
@media(max-width:760px){.portfolio-layout{display:block}.profile{position:relative;height:auto;min-height:0;display:grid;grid-template-columns:70px 1fr auto;gap:1rem;padding:1rem 1.2rem;text-align:left}.profile-main{display:contents}.portrait{width:66px}.signature{width:100px;max-height:65px;margin:0}.role,.profile-divider,.profile-copy,.profile-meta{display:none}.contact-button{width:auto;margin:0;padding:.65rem .8rem;gap:.7rem}.topbar{height:58px;padding-inline:1.2rem}.portfolio-section{padding:1.8rem 1.2rem 4rem}.portfolio-intro{gap:1.5rem}.project-tools{grid-template-columns:1fr}.filters{overflow-x:auto;padding-bottom:.3rem}.filters button{white-space:nowrap}.case-grid{grid-template-columns:1fr 1fr;grid-auto-rows:auto}.case-card{height:580px}.case-card>a,.case-feature>a{grid-template-rows:410px minmax(0,1fr)}.case-compact{height:auto}.about-dialog[open]{grid-template-columns:1fr}.about-portrait{min-height:220px;max-height:260px}.project-dialog-info{grid-template-columns:1fr;gap:1.2rem}.project-live-frame{height:min(52vh,460px)}.project-dialog-close{right:1.4rem;top:1.4rem}}
@media(max-width:520px){.profile{grid-template-columns:58px 1fr auto}.portrait{width:55px}.signature{width:86px}.topbar nav a:first-child{display:none}.topbar nav{gap:1.2rem}.case-grid{grid-template-columns:1fr;grid-auto-rows:auto}.case-card{height:590px}.case-card>a,.case-feature>a{grid-template-rows:420px minmax(0,1fr)}.case-compact{height:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}

/* The profile and navigation stay visually connected when moving between pages. */
@view-transition { navigation: auto; }
.profile,
.about-page-profile { view-transition-name: profile-panel; }
.portrait,
.about-page-person > img:first-child { view-transition-name: profile-portrait; }
.signature,
.about-page-signature { view-transition-name: profile-signature; }
.topbar nav,
.about-page-nav { view-transition-name: main-navigation; }

::view-transition-group(main-navigation),
::view-transition-new(main-navigation) {
  animation: none;
}

::view-transition-old(main-navigation) {
  display: none;
}

::view-transition-group(profile-panel),
::view-transition-group(profile-portrait),
::view-transition-group(profile-signature) {
  animation-duration: .58s;
  animation-timing-function: cubic-bezier(.22,.75,.2,1);
}

::view-transition-old(root) {
  animation: page-leave .24s ease-in both;
}

::view-transition-new(root) {
  animation: page-enter .52s cubic-bezier(.22,.75,.2,1) both;
}

@keyframes page-leave {
  to { opacity: 0; transform: translateY(-7px); filter: blur(2px); }
}

@keyframes page-enter {
  from { opacity: 0; transform: translateY(12px); filter: blur(3px); }
}

@media (prefers-reduced-motion: reduce) {
  ::view-transition-group(*),
  ::view-transition-old(*),
  ::view-transition-new(*) { animation-duration: .01ms !important; }
}
.case-card{border:0}
.case-compact{grid-column:auto;height:auto}.case-compact .snurr-case{aspect-ratio:320/250;background:#fff}.case-compact>a{grid-template-rows:auto minmax(0,1fr)}.case-compact .case-copy{display:flex;flex-direction:column;padding:1.1rem 1.2rem}.case-compact .case-copy h2{margin:0 0 .35rem;font-size:clamp(1.2rem,1.45vw,1.5rem)}.case-compact .case-subtitle{font-size:.74rem}.case-compact .case-description{display:block;margin:.75rem 0;font-size:.7rem}.case-compact .case-meta{display:flex}.case-compact .live-indicator{right:.85rem;bottom:.85rem}
.case-compact .snurr-case>iframe{background:transparent}
@media(min-width:1181px){.case-compact{grid-column:auto;grid-row:span 15}}
@media(min-width:1181px){.case-card:not(.case-compact){grid-row:span 24}.case-card:not(.case-compact)>a{grid-template-rows:480px minmax(0,1fr)}}
@media(min-width:761px) and (max-width:1180px){.case-card:not(.case-compact){height:660px}.case-card:not(.case-compact)>a{grid-template-rows:490px minmax(0,1fr)}}
@media(max-width:760px){.case-card:not(.case-compact){height:640px}.case-card:not(.case-compact)>a{grid-template-rows:470px minmax(0,1fr)}}
@media(max-width:520px){.case-card:not(.case-compact){height:650px}.case-card:not(.case-compact)>a{grid-template-rows:480px minmax(0,1fr)}}
.contact-button{border-style:solid;cursor:pointer;color:#fff;background:transparent}.profile-links>a,.profile-links>button{display:inline-flex;align-items:center;padding:0;color:#fff;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.5);cursor:pointer;font-size:.72rem;font-weight:700}.profile-links>button svg{display:block}.contact-actions{display:flex;flex-wrap:wrap;gap:.7rem}.contact-actions>a{display:inline-flex;align-items:center;gap:.7rem;padding:.75rem 1rem;color:#fff;background:var(--red);border-radius:.45rem;font-size:.7rem}.contact-actions>a.contact-cv{color:var(--ink);background:var(--cream);border:1px solid var(--line)}
.about-page{background-color:var(--cream);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150' viewBox='0 0 150 150'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.55' numOctaves='5' seed='8' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='150' height='150' filter='url(%23paper)' opacity='.16'/%3E%3C/svg%3E");background-size:225px 225px}.about-page-layout{display:grid;grid-template-columns:clamp(300px,27vw,430px) minmax(0,1fr);min-height:100svh}.about-page-profile{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;padding:clamp(2rem,4vw,4rem);color:#fff;background:linear-gradient(145deg,var(--red-dark),#ed4d32 55%,#e6402c)}.about-back{align-self:flex-start;padding-bottom:.25rem;border-bottom:1px solid rgba(255,255,255,.5);font-size:.72rem}.about-page-person{display:flex;flex-direction:column;align-items:center;margin:auto 0;text-align:center}.about-page-person>img:first-child{width:clamp(150px,14vw,210px);aspect-ratio:1;object-fit:cover;object-position:center 13%;border-radius:50%;box-shadow:0 14px 35px rgba(118,27,14,.18)}.about-page-signature{width:clamp(170px,16vw,235px);max-height:175px;margin:2.5rem 0 .5rem;object-fit:contain}.about-page-person p{max-width:230px;margin:0;color:rgba(255,255,255,.82);font-size:.78rem}.about-page-contact{display:grid;gap:.8rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.4)}.about-page-contact p{margin:0 0 .4rem;font-size:.75rem;line-height:1.55}.about-page-contact a{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.25);font-size:.7rem;font-weight:700}.about-page-content{padding:0 clamp(2rem,6vw,7rem) 6rem}.about-page-nav{height:76px;display:flex;justify-content:flex-end;align-items:center;gap:2.5rem}.about-page-nav a{position:relative;padding:.45rem 0;font-size:.8rem}.about-page-nav .active{color:var(--red)}.about-page-nav .active::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--red)}.about-page-hero{max-width:900px;padding:clamp(4rem,9vw,9rem) 0 clamp(4rem,7vw,7rem)}.about-page-hero h1{margin:.5rem 0 2rem;font-family:var(--serif);font-size:clamp(4rem,8vw,8.5rem);font-weight:400;line-height:.82;letter-spacing:-.06em}.about-page-hero h1 em{color:var(--red);font-weight:400}.about-lead{max-width:740px;margin:0;color:var(--muted);font-family:var(--serif);font-size:clamp(1.35rem,2.4vw,2.25rem);line-height:1.3}.about-story{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);max-width:1050px;padding:0 0 clamp(5rem,8vw,8rem)}.about-story p{margin:0;color:var(--muted);font-size:clamp(.95rem,1.3vw,1.15rem);line-height:1.75}.about-section{padding:clamp(3.5rem,6vw,6rem) 0;border-top:1px solid var(--line)}.about-section-heading{display:grid;grid-template-columns:.45fr 1fr;gap:2rem;margin-bottom:2.5rem}.about-section h2{margin:0;font-family:var(--serif);font-size:clamp(2.2rem,4vw,4.2rem);font-weight:400;line-height:1}.about-timeline article{display:grid;grid-template-columns:.45fr 1fr;gap:2rem;padding:2rem 0;border-top:1px solid var(--line)}.about-timeline time{color:var(--red);font-size:.8rem;font-weight:700}.about-timeline h3{margin:0 0 .6rem;font-family:var(--serif);font-size:1.6rem;font-weight:400}.about-timeline p{max-width:650px;margin:0 0 .7rem;color:var(--muted);font-size:.85rem;line-height:1.65}.about-timeline span{color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.about-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem)}.about-columns>div{padding-right:2rem}.about-columns h2{margin:.5rem 0 1rem;font-size:2.25rem}.about-columns p:not(.eyebrow){margin:0;color:var(--muted);font-size:.9rem;line-height:1.7}.about-tools{display:flex;flex-wrap:wrap;gap:.7rem}.about-tools span{padding:.65rem .9rem;background:rgba(255,255,255,.55);border:1px solid var(--line);font-size:.72rem}.about-page-cta{display:flex;justify-content:space-between;align-items:end;gap:2rem;padding:clamp(3rem,6vw,6rem);color:#fff;background:#22221f}.about-page-cta h2{max-width:650px;margin:.5rem 0 0;font-family:var(--serif);font-size:clamp(2.3rem,4.2vw,4.5rem);font-weight:400;line-height:1}.about-page-cta .eyebrow{color:rgba(255,255,255,.55)}.about-page-cta>a{flex:none;padding:1rem 1.25rem;color:#fff;background:var(--red);font-size:.75rem;font-weight:700}.about-page-cta>a span{margin-left:1rem}@media(max-width:820px){.about-page-layout{display:block}.about-page-profile{position:relative;height:auto;min-height:650px}.about-page-content{padding-inline:1.2rem}.about-page-nav{height:62px}.about-page-hero{padding-block:4rem}.about-story,.about-columns{grid-template-columns:1fr}.about-section-heading,.about-timeline article{grid-template-columns:1fr;gap:1rem}.about-page-cta{align-items:flex-start;flex-direction:column}}
