
body.has-site-modal{overflow:hidden}
#portfolio .site-modal__panel--portfolio,.project-view__panel{inset:0;background:var(--paper);box-shadow:none;padding:36px clamp(20px,5vw,96px) 80px;overscroll-behavior:contain;scrollbar-gutter:stable}
.portfolio-toolbar,.portfolio-heading,#portfolio .pp-grid,.project-view__toolbar,.project-view__header,.project-view__photos,.project-view__footer{max-width:1240px;margin-left:auto;margin-right:auto}
.portfolio-toolbar,.project-view__toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px}
.portfolio-toolbar .site-modal__eyebrow{margin:0;font-size:11px;color:#666;letter-spacing:.09em}
.portfolio-close,.project-view__close{width:44px;height:44px;display:grid;place-items:center;font-size:30px;line-height:1;color:#171717;text-decoration:none;flex:none}
.portfolio-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:64px;margin-bottom:56px}
#portfolio .portfolio-heading h2{font-size:clamp(44px,6vw,80px);font-weight:600;line-height:.94;letter-spacing:-.055em;margin:0}
.portfolio-count{font-size:12px;white-space:nowrap;color:#6b6b6b;padding-bottom:4px}
#portfolio .pp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:52px 36px}
#portfolio .pp-card{display:block;min-width:0;color:#171717;text-decoration:none}
.pp-card__image{overflow:hidden;background:var(--paper)}
#portfolio .pp-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;filter:none;opacity:1;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
#portfolio .pp-card__meta{margin:0;padding:18px 0 0;border:0}
#portfolio .pp-card__meta h3{font:500 clamp(20px,2vw,25px)/1.2 var(--display);letter-spacing:-.035em;margin:0 0 8px}
#portfolio .pp-card__meta p{font-size:12px;line-height:1.5;color:#707070;margin:0}
#portfolio .pp-card:focus-visible,.portfolio-close:focus-visible,.project-view a:focus-visible{outline:2px solid var(--red);outline-offset:6px}
@media(hover:hover){#portfolio .pp-card:hover img{transform:scale(1.025)}}
.project-view__panel{padding-top:28px}
.project-view__toolbar{position:sticky;top:-28px;z-index:2;background:var(--paper);padding:12px 0;border-bottom:1px solid #e9e9e9}
.project-view__back{font-size:12px;color:#333;text-decoration:none;display:inline-flex;gap:12px;align-items:center;min-height:44px}
.project-view__header{padding:58px 0 40px}
.project-view__eyebrow{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#707070;margin:0 0 22px}
.site-modal .project-view__header h2{font-size:clamp(36px,5.4vw,74px);font-weight:500;line-height:1.05;letter-spacing:-.05em;margin:0 0 18px;overflow-wrap:anywhere}
.project-view__facts{font-size:13px;color:#6d6d6d;line-height:1.5;margin:0}
.project-view__photos{display:grid;gap:30px}
.project-view__photo{margin:0;display:flex;justify-content:center;background:var(--paper);padding:0;min-width:0}
.project-view__photo img{display:block;max-width:100%;width:auto;max-height:85vh;height:auto;object-fit:contain}
.project-view__footer{border-top:1px solid #dedede;margin-top:44px;padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.project-view__estimate{background:#151515;color:#fff;padding:21px 24px;text-decoration:none;display:inline-flex;align-items:center;gap:28px;font-size:12px;line-height:1.4}
.project-view__next{color:#333;text-decoration:none;font-size:12px;min-height:44px;display:inline-flex;align-items:center;gap:18px}
@media(max-width:700px){
 #portfolio .site-modal__panel--portfolio,.project-view__panel{padding:20px 20px 48px}
 .portfolio-heading{margin-top:40px;margin-bottom:34px;display:block}
 #portfolio .portfolio-heading h2{font-size:48px;line-height:.94}
 .portfolio-count{display:block;margin-top:22px;padding:0}
 #portfolio .pp-grid{grid-template-columns:1fr;gap:34px}
 #portfolio .pp-card img{aspect-ratio:4/3}
 #portfolio .pp-card__meta{padding-top:14px}
 #portfolio .pp-card__meta h3{font-size:23px;margin-bottom:6px}
 .project-view__toolbar{top:-20px;padding:4px 0 8px}
 .project-view__header{padding:34px 0 28px}
 .project-view__photos{gap:20px}
 .project-view__photo img{max-height:75vh}
 .project-view__footer{margin-top:28px;padding-top:24px;align-items:flex-start;flex-direction:column;gap:16px}
 .project-view__estimate{width:100%;box-sizing:border-box;justify-content:space-between;padding:19px 20px}
}
@media(prefers-reduced-motion:reduce){#portfolio .pp-card img,#portfolio .pp-card:hover img{transition:none;transform:none}}


/* INTERIKA: isolated portfolio project component. Does not style the host website. */
#project-dr-dre .interika-project { --ip-bg:var(--paper,#ffffff); --ip-bg-alt:var(--paper-2,#f5f5f5); --ip-text:#111111; --ip-muted:#6e6a63; --ip-accent:#c43a27; background:var(--ip-bg); color:var(--ip-text); width:100%; max-width:1240px; margin:0 auto; padding:56px 0 0; box-sizing:border-box; font-family:"Golos Text",Arial,sans-serif; font-weight:400; line-height:1.55; }
#project-dr-dre .interika-project *, #project-dr-dre .interika-project *::before, #project-dr-dre .interika-project *::after { box-sizing:border-box; }
#project-dr-dre .interika-project h1, #project-dr-dre .interika-project h2, #project-dr-dre .interika-project h3, #project-dr-dre .interika-project p, #project-dr-dre .interika-project figure { margin:0; }
#project-dr-dre .interika-project h1, #project-dr-dre .interika-project h2, #project-dr-dre .interika-project h3 { font-family:Onest,"Golos Text",Arial,sans-serif; font-weight:600; line-height:1.1; }
#project-dr-dre .interika-project img { width:100%; height:auto; display:block; object-fit:contain; }
#project-dr-dre .interika-project .ip-rule { height:1px; background:#c7c1b7; border:0; margin:0 0 31px; opacity:.75; }
#project-dr-dre .interika-project .ip-overline { font-size:11px; line-height:1.5; letter-spacing:.16em; text-transform:uppercase; color:var(--ip-muted); font-weight:500; }
#project-dr-dre .interika-project .ip-overline--accent::before { content:""; display:inline-block; vertical-align:middle; width:22px; height:2px; background:var(--ip-accent); margin:0 13px 3px 0; }
#project-dr-dre .interika-project .ip-header { padding:0 0 46px; }
#project-dr-dre .interika-project .ip-header-row { display:flex; justify-content:space-between; align-items:baseline; gap:24px; padding-bottom:35px; }
#project-dr-dre .interika-project .ip-page-title { max-width:830px; font-size:clamp(37px,5.3vw,72px); letter-spacing:-.057em; margin-top:18px; }
#project-dr-dre .interika-project .ip-header-sub { display:flex; justify-content:space-between; gap:24px; padding-top:28px; font-size:13px; color:var(--ip-muted); }
#project-dr-dre .interika-project .ip-image { max-width:100%; }
#project-dr-dre .interika-project .ip-hero { max-width:1000px; margin:0 auto; }
#project-dr-dre .interika-project .ip-hero img { aspect-ratio:4/3; }
#project-dr-dre .interika-project .ip-figure-note { margin-top:13px; font-size:11px; line-height:1.5; color:var(--ip-muted); }
#project-dr-dre .interika-project .ip-folio { margin:31px 0 0; color:var(--ip-muted); display:flex; justify-content:space-between; font-size:11px; letter-spacing:.04em; }
#project-dr-dre .interika-project .ip-intro { padding:108px 0 113px; display:grid; grid-template-columns: minmax(180px, .7fr) minmax(0, 1.3fr); gap:36px; }
#project-dr-dre .interika-project .ip-intro .ip-lede { font-size:clamp(19px,2vw,25px); line-height:1.6; max-width:760px; }
#project-dr-dre .interika-project .ip-number { color:var(--ip-accent); font-size:11px; font-weight:500; letter-spacing:.08em; margin-bottom:14px; }
#project-dr-dre .interika-project .ip-section { padding:0 0 116px; }
#project-dr-dre .interika-project .ip-section-header { display:grid; grid-template-columns:.7fr 1.3fr; gap:36px; align-items:start; padding-bottom:32px; }
#project-dr-dre .interika-project .ip-section-heading { font-size:clamp(29px,3.4vw,47px); letter-spacing:-.048em; max-width:540px; }
#project-dr-dre .interika-project .ip-section-copy { font-size:15px; color:var(--ip-muted); max-width:490px; margin-top:14px; line-height:1.75; }
#project-dr-dre .interika-project .ip-pair { display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:start; }
#project-dr-dre .interika-project .ip-pair--uneven { grid-template-columns: 1.1fr .9fr; gap:46px; align-items:center; }
#project-dr-dre .interika-project .ip-pair--uneven figure:first-child { max-width:640px; }
#project-dr-dre .interika-project .ip-pair--uneven figure:last-child { max-width:520px; }
#project-dr-dre .interika-project .ip-wide-calm { padding:10px 0 125px; display:grid; grid-template-columns: minmax(0,1.2fr) minmax(160px,.8fr); column-gap:65px; align-items:end; }
#project-dr-dre .interika-project .ip-wide-calm figure { max-width:640px; }
#project-dr-dre .interika-project .ip-small-copy { font-size:15px; line-height:1.8; color:var(--ip-muted); max-width:260px; padding-bottom:45px; }
#project-dr-dre .interika-project .ip-centered { max-width:540px; margin:0 auto; }
#project-dr-dre .interika-project .ip-centered + .ip-image-label { max-width:540px; margin:15px auto 0; }
#project-dr-dre .interika-project .ip-image-label { color:var(--ip-muted); font-size:11px; }
#project-dr-dre .interika-project .ip-midline { height:1px; background:#cfc9c1; margin:100px 0 88px; }
#project-dr-dre .interika-project .ip-bath-panel { background:var(--ip-bg-alt); padding:66px clamp(22px,5vw,80px); display:grid; grid-template-columns: minmax(0,1fr) minmax(0,440px); gap:65px; align-items:center; }
#project-dr-dre .interika-project .ip-bath-panel .ip-section-heading { max-width:360px; }
#project-dr-dre .interika-project .ip-bath-panel .ip-section-copy { max-width:290px; }
#project-dr-dre .interika-project .ip-finale { padding:125px 0 80px; text-align:center; }
#project-dr-dre .interika-project .ip-finale .ip-section-heading { margin:0 auto 20px; }
#project-dr-dre .interika-project .ip-finale .ip-overline { margin-bottom:26px; }
#project-dr-dre .interika-project .ip-finale .ip-finale-copy { max-width:430px; margin:0 auto 42px; font-size:15px; line-height:1.75; color:var(--ip-muted); }
#project-dr-dre .interika-project .ip-finale figure { max-width:500px; margin:0 auto; }
#project-dr-dre .interika-project .ip-footer { display:flex; align-items:center; justify-content:space-between; gap:18px; border-top:1px solid #ccc5bc; padding-top:25px; }
#project-dr-dre .interika-project .ip-footer-word { font-family:Onest,"Golos Text",Arial,sans-serif; font-weight:600; font-size:18px; letter-spacing:-.03em; }
#project-dr-dre .interika-project .ip-footer-note { font-size:11px; color:var(--ip-muted); text-align:right; }
@media(max-width:760px){
  #project-dr-dre .interika-project { padding:29px 0 0; }
  #project-dr-dre .interika-project .ip-header { padding-bottom:30px; }
  #project-dr-dre .interika-project .ip-header-row { padding-bottom:19px; }
  #project-dr-dre .interika-project .ip-header-row .ip-overline:last-child { display:none; }
  #project-dr-dre .interika-project .ip-page-title { margin-top:18px; font-size:clamp(36px,9.3vw,49px); line-height:1.08; letter-spacing:-.058em; }
  #project-dr-dre .interika-project .ip-header-sub { padding-top:20px; font-size:12px; }
  #project-dr-dre .interika-project .ip-folio { margin-top:13px; }
  #project-dr-dre .interika-project .ip-intro { grid-template-columns:1fr; gap:21px; padding:70px 0 83px; }
  #project-dr-dre .interika-project .ip-intro .ip-lede { font-size:18px; line-height:1.63; }
  #project-dr-dre .interika-project .ip-section { padding-bottom:86px; }
  #project-dr-dre .interika-project .ip-section-header { grid-template-columns:1fr; gap:12px; padding-bottom:22px; }
  #project-dr-dre .interika-project .ip-section-heading { font-size:33px; }
  #project-dr-dre .interika-project .ip-section-copy { font-size:14px; margin-top:8px; }
  #project-dr-dre .interika-project .ip-pair, #project-dr-dre .interika-project .ip-pair--uneven { grid-template-columns:1fr; gap:35px; }
  #project-dr-dre .interika-project .ip-pair--uneven figure:first-child, #project-dr-dre .interika-project .ip-pair--uneven figure:last-child { max-width:none; }
  #project-dr-dre .interika-project .ip-wide-calm { grid-template-columns:1fr; gap:18px; padding:0 0 84px; }
  #project-dr-dre .interika-project .ip-wide-calm figure { max-width:none; }
  #project-dr-dre .interika-project .ip-small-copy { padding:0; }
  #project-dr-dre .interika-project .ip-centered { max-width:none; }
  #project-dr-dre .interika-project .ip-midline { margin:70px 0 60px; }
  #project-dr-dre .interika-project .ip-bath-panel { padding:32px 23px; margin:0 -20px; grid-template-columns:1fr; gap:29px; }
  #project-dr-dre .interika-project .ip-bath-panel figure { max-width:440px; }
  #project-dr-dre .interika-project .ip-finale { padding:90px 0 65px; }
  #project-dr-dre .interika-project .ip-finale .ip-finale-copy { font-size:14px; margin-bottom:27px; }
  #project-dr-dre .interika-project .ip-finale figure { max-width:none; }
  #project-dr-dre .interika-project .ip-footer-note { font-size:10px; }
}
@media(prefers-reduced-motion:reduce){ #project-dr-dre .interika-project * { scroll-behavior:auto; } }

/* Keep the supplied image resolution within useful display sizes on every viewport. */
#project-dr-dre .interika-project figure.ip-image.ip-image--limit-640 { width:100%; max-width:640px; margin-left:auto; margin-right:auto; }
#project-dr-dre .interika-project figure.ip-image.ip-image--limit-500 { width:100%; max-width:500px; margin-left:auto; margin-right:auto; }
@media (min-width:761px) and (max-width:980px) {
  #project-dr-dre .interika-project .ip-bath-panel { grid-template-columns:1fr; gap:29px; }
  #project-dr-dre .interika-project .ip-bath-panel figure { width:100%; max-width:440px; margin-left:auto; margin-right:auto; }
}


:root{--paper:#ffffff;--paper-2:#f5f5f5;--ink:#111111;--muted:#6e6a63;--red:#c43a27;--display:"Onest","Helvetica Neue",Arial,sans-serif;--body:"Golos Text","Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--body);overflow-wrap:break-word}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}a:focus-visible{outline:2px solid var(--red);outline-offset:5px}.skip-link{position:absolute;left:20px;top:-70px;z-index:20;background:var(--ink);color:#fff;padding:12px}.skip-link:focus{top:12px}
.project-site-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px clamp(20px,5vw,96px);border-bottom:1px solid rgba(17,17,17,.18)}.project-site-brand{font:600 22px/1 var(--display);letter-spacing:-.04em}.project-site-nav{display:flex;gap:28px;font-size:12px}.project-site-nav a:hover,.breadcrumbs a:hover{color:var(--red)}.page-shell{max-width:1432px;margin:0 auto;padding:36px clamp(20px,5vw,96px) 80px}.breadcrumbs{max-width:1240px;margin:0 auto;color:var(--muted);font-size:11px}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px 12px;list-style:none;margin:0;padding:0}.breadcrumbs li+li::before{content:"/";margin-right:12px;color:#aaa}.project-page .project-view__footer{margin-bottom:0}.site-page-footer{max-width:1240px;margin:68px auto 0;border-top:1px solid rgba(17,17,17,.2);padding-top:25px;display:flex;justify-content:space-between;gap:24px;font-size:12px}.site-page-footer a:hover{color:var(--red)}.catalog-title{font:600 clamp(44px,6vw,80px)/.94 var(--display);letter-spacing:-.055em;margin:0}.catalog-intro{max-width:660px;color:var(--muted);font-size:15px;line-height:1.7;margin:0 0 44px}.portfolio-heading{max-width:1240px}.catalog-body{max-width:1240px;margin:0 auto}.error-page{min-height:65vh;padding-top:90px}.error-page h1{font:600 clamp(38px,6vw,72px)/1.05 var(--display);letter-spacing:-.05em;max-width:850px}.error-page p{color:var(--muted)}.error-links{display:flex;flex-wrap:wrap;gap:24px;margin-top:32px}.error-links a{border-bottom:1px solid}
#project-dr-dre .interika-project .project-title-main{display:block}#project-dr-dre .interika-project .project-title-context{display:block;font:500 clamp(21px,2.5vw,32px)/1.25 var(--display);letter-spacing:-.025em;margin-top:18px}
@media(max-width:700px){.page-shell{padding:24px 20px 48px}.project-site-header{padding:20px;gap:16px}.project-site-nav{gap:16px;font-size:11px}.project-site-brand{font-size:20px}.site-page-footer{margin-top:44px;flex-wrap:wrap}.breadcrumbs{font-size:10px}.catalog-intro{font-size:14px;margin-bottom:32px}.error-page{padding-top:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
