/* Natty Wolff — a local, self-contained editorial portfolio. */
:root{color-scheme:dark;--black:#080606;--black-soft:#100b0d;--surface:#151012;--ivory:#f4efec;--rose:#d98d9f;--wine:#5c2935;--muted:#aa9fa2;--line:rgba(244,239,236,.13);--serif:Georgia,"Times New Roman",serif;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--black);color:var(--ivory);font-family:var(--sans);-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at 15% 30%,#5c29352e,transparent 50%),radial-gradient(ellipse at 90% 65%,#59253630,transparent 45%);pointer-events:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid var(--rose);outline-offset:5px}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-library{position:absolute;width:0;height:0;overflow:hidden}h1,h2,h3,p{margin:0}em{font-weight:400;color:var(--rose)}.portfolio{width:min(100%,510px);margin:40px auto;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--black);box-shadow:0 25px 100px #0008}.hero{position:relative;aspect-ratio:4/5.2;isolation:isolate;overflow:hidden;background:var(--black-soft);border-radius:22px 22px 0 0}.editorial-art{position:relative;overflow:hidden;background:radial-gradient(ellipse at 85% 20%,#804b5788,transparent 70%),linear-gradient(135deg,#39232b,#120d10);width:100%;height:100%;isolation:isolate}.hero-art{position:absolute;inset:0}.art-frame{position:absolute;inset:15px;border:1px solid #f2d4dc1a}.art-arch{position:absolute;width:66%;height:100%;left:28%;top:17%;border-radius:50% 50% 0 0;border:1px solid #e3b3bf33;background:linear-gradient(105deg,#f6d6df0d,#a4687b0d 50%,#180e1477);transform:rotate(-14deg)}.art-disc{position:absolute;top:15%;left:28%;width:65%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 30%,#c58f9766,#4e2c3f33 60%,#130e1400 70%);filter:blur(1px)}.art-letter{position:absolute;font:italic 270px/.9 var(--serif);letter-spacing:-25px;left:10%;top:20%;color:#d0a1ad33}.art-folio{position:absolute;top:24px;left:25px;color:#ddc4cd99;font:7px var(--sans);letter-spacing:2px}.hero-art .art-letter{font-size:410px;color:#d6a5b024;left:8%;top:15%;transform:rotate(-8deg)}.hero-art .art-folio{display:none}.hero-art .art-frame{inset:17px}.hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,var(--black),#080606ce 13%,#08060614 62%,#08060644)}.masthead{position:absolute;top:28px;left:28px;right:28px;display:flex;justify-content:space-between;align-items:center}.masthead>span:first-child{font-size:10px;font-weight:600;letter-spacing:3px}.masthead-mark{font:24px var(--serif);color:#cfa4ae;letter-spacing:-7px;padding-right:8px}.masthead-mark span{font-style:italic;font-size:21px}.portrait-note{position:absolute;right:26px;top:25%;writing-mode:vertical-rl;font-size:7px;letter-spacing:2px;color:#cab2ba99}.hero-copy{position:absolute;bottom:62px;left:32px;right:26px}.eyebrow{font-size:8px;font-weight:500;letter-spacing:2px;color:#cda5af}.hero h1{font:400 clamp(76px,19vw,102px)/.85 var(--serif);letter-spacing:-5px;margin:23px 0 18px}.hero h1 em{display:inline-block;margin-left:-2px}.handle{font-size:11px;color:#c8b9be;letter-spacing:.5px}.hero-baseline{position:absolute;bottom:22px;left:32px;right:28px;display:flex;justify-content:space-between;border-top:1px solid #d6a5b02e;padding-top:13px;font-size:7px;letter-spacing:1.7px;color:#9f8b93}.content{padding:0 30px}.intro{display:flex;gap:20px;align-items:flex-start;padding:28px 0 26px}.intro-rule{width:25px;height:1px;background:var(--rose);margin-top:12px;flex-shrink:0}.intro p{font:italic 21px/1.5 var(--serif);color:#d7c8cd}.social-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:10px 0 17px;gap:8px}.social-row>.eyebrow{font-size:7px;letter-spacing:1.5px;color:#b6a0a8}.social-icons{display:flex;gap:3px}.social-icons a{width:44px;height:44px;display:grid;place-items:center;color:#d6cbd0;transition:color .2s}.social-icons a:hover{color:var(--rose)}.social-icons svg{width:18px;height:18px}.primary-cta,.outline-cta{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:17px 20px;letter-spacing:1.8px;font-size:9px;font-weight:600;border:1px solid #e8d7de88;border-radius:2px;transition:background .2s,color .2s}.primary-cta{color:#201317;background:var(--ivory)}.primary-cta:hover{background:#e7b6c3}.primary-cta svg,.outline-cta svg{width:17px;height:17px}.outline-cta:hover{background:#d98d9f14;border-color:var(--rose)}section{margin-top:55px}.section-label{display:flex;justify-content:space-between;align-items:center;font-size:7px;font-weight:500;letter-spacing:1.8px;color:#c093a1;margin-bottom:24px}.section-label>span:last-child{color:#8c6a76}h2{font:400 53px/.98 var(--serif);letter-spacing:-2.6px}section>p{font-size:12px;line-height:1.9;color:#b4a7ad}.story{border-bottom:1px solid var(--line);padding-bottom:37px}.story h2{font-size:60px;margin-bottom:25px}.story>p{max-width:330px}.story>p+p{margin-top:12px}.gallery-section{margin-top:38px}.gallery-section h2{font-size:49px;white-space:nowrap;letter-spacing:-2.5px}.section-description{margin-top:15px;max-width:290px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:23px 12px;margin-top:26px}.gallery-item{margin:0;min-width:0}.gallery-lead,.gallery-wide{grid-column:1/-1}.gallery-open{padding:0;display:block;position:relative;width:100%;border:1px solid var(--line);border-radius:9px;overflow:hidden;aspect-ratio:4/5;background:var(--surface);text-align:left}.gallery-lead .gallery-open{aspect-ratio:4/4.7}.gallery-wide .gallery-open{aspect-ratio:3/2}.gallery-open .editorial-art{transition:transform .4s}.gallery-open:hover .editorial-art{transform:scale(1.025)}.gallery-item .art-letter{font-size:clamp(110px,36vw,180px);top:25%;left:15%;letter-spacing:-15px}.gallery-lead .art-letter{font-size:320px;left:17%;top:20%}.gallery-wide .art-letter{font-size:230px;left:30%;top:8%}.art-2{background:radial-gradient(ellipse at 30% 20%,#ad969d66,transparent 75%),linear-gradient(140deg,#4a3c42,#181116)}.art-2 .art-disc{background:radial-gradient(circle at 40% 30%,#b29aa35c,#4b354433 65%,transparent 70%);left:10%}.art-2 .art-arch{transform:rotate(20deg);left:8%;top:20%}.art-2 .art-letter{color:#dfd2d838}.art-3{background:radial-gradient(ellipse at 80% 90%,#7c394955,transparent 75%),linear-gradient(45deg,#1a0f16,#492431)}.art-3 .art-arch{left:5%;transform:rotate(-30deg)}.art-3 .art-letter{color:#d6889f45}.art-4{background:linear-gradient(105deg,#252228,#6e505b 65%,#2c1d27)}.art-4 .art-arch{top:-10%;left:8%;width:90%;height:150%;transform:rotate(30deg)}.art-4 .art-letter{color:#edd4dc33}.image-note{position:absolute;left:16px;bottom:20px;font-size:7px;letter-spacing:1.5px;color:#d8c5ce;pointer-events:none}.image-plus{position:absolute;right:11px;bottom:11px;width:32px;height:32px;display:grid;place-items:center;background:#160e14a6;border:1px solid #ceb9c15c;font-size:22px;font-weight:300}.gallery-item:not(.gallery-lead):not(.gallery-wide) .image-note{display:none}.gallery-item:not(.gallery-lead):not(.gallery-wide) .art-folio{font-size:6px;letter-spacing:1px;top:17px;left:16px}.gallery-item figcaption{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#c4b3bc;padding-top:11px}.gallery-item figcaption>span:last-child{font-size:7px;letter-spacing:1px;color:#927985}.media-disclosure{font-size:9px;color:#95838c;line-height:1.6;margin-top:18px}.wolfpack{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0 37px;margin-top:38px}.community-art{height:185px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 100%,#5c29355c,transparent 70%),#100c0f;border:1px solid var(--line);margin-bottom:28px}.community-monogram{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;font:130px var(--serif);letter-spacing:-28px;padding-right:24px;color:#d0b6c155}.community-monogram em{font-size:115px;color:#b7839759;transform:translateY(13px)}.community-orbit{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-23deg);width:155px;height:230px;border:1px solid #cc8e9e25;border-radius:50%}.community-caption{position:absolute;bottom:13px;left:0;right:0;text-align:center;font-size:6px;letter-spacing:2px;color:#a58b96}.wolfpack h2{font-size:59px}.wolfpack>p{margin-top:23px;max-width:310px}.wolfpack .outline-cta{margin-top:26px;font-size:8px;border-color:#c99ba94d;color:#e1c8d2}.featured{margin-top:34px}.featured-link{display:block;padding:0 0 30px;border-bottom:1px solid var(--line)}.featured h2{font-size:75px;letter-spacing:-3.5px}.featured-bottom{margin-top:21px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.featured-bottom p{font-size:10px;line-height:1.8;color:#b4a7ad;max-width:180px}.text-link{display:flex;align-items:center;gap:7px;letter-spacing:1.2px;font-size:7px;min-height:36px;white-space:nowrap}.text-link svg{width:13px;height:13px}.elsewhere{margin-top:35px}.elsewhere h2{font-size:44px;margin-bottom:24px}.social-editorials{display:grid;grid-template-columns:1.15fr 1fr;gap:12px}.social-editorial{position:relative;display:block;aspect-ratio:3/4.3;overflow:hidden;border:1px solid var(--line);border-radius:3px;background:linear-gradient(145deg,#573b49,#1b1019)}.social-x{background:linear-gradient(150deg,#242027,#100d11)}.social-art{position:absolute;top:15%;left:15%;font:italic 150px var(--serif);color:#dfb8c52b;letter-spacing:-20px}.social-x .social-art{font-size:220px;top:4%;left:18%;color:#c1b1bf33}.social-card-top{position:absolute;top:15px;left:13px;right:13px;display:flex;justify-content:space-between;align-items:center;gap:4px;font-size:6px;letter-spacing:1.3px;color:#d5bdc9}.social-card-top svg{width:15px;height:15px}.social-card-bottom{position:absolute;left:14px;right:12px;bottom:42px}.social-card-bottom strong{font:25px/1.04 var(--serif);letter-spacing:-.6px;font-weight:400}.social-card-bottom>span{display:block;color:#c4aebc;font-size:8px;margin-top:10px}.social-editorial>svg{position:absolute;right:14px;bottom:14px;width:14px;height:14px;color:#c99ba9}.closing{text-align:center;padding:43px 0 35px}.closing-flower{font:24px var(--serif);color:#b68395}.closing p{font:29px/1.16 var(--serif);letter-spacing:-.6px;margin-top:18px}.secondary-cta{display:inline-flex;align-items:center;gap:24px;font-size:8px;letter-spacing:1.8px;border-bottom:1px solid #a87d8d7a;min-height:48px;margin-top:17px}.secondary-cta svg{width:13px;height:13px}footer{border-top:1px solid var(--line);padding:25px 0 24px}.footer-masthead{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:8px;letter-spacing:2.1px;color:#d4c0cb}.footer-masthead>span:last-child{color:#a28291;font-size:7px}footer nav{display:flex;gap:16px;justify-content:center;margin-top:15px}footer nav a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;font-size:8px;color:#b7a6b0;text-transform:uppercase;letter-spacing:1px}footer>p{text-align:center;font-size:6px;letter-spacing:2px;color:#8a7380;margin-top:10px}.ambient-caption{position:fixed;left:max(30px,calc(50% - 530px));top:80px;color:#aa7b8c66;font:11px var(--sans);letter-spacing:3px}.ambient-caption span{display:block;font-size:7px;letter-spacing:2px;margin-top:15px;color:#9c83914d}.ambient-edition{position:fixed;bottom:35px;right:35px;writing-mode:vertical-rl;font-size:7px;letter-spacing:2px;color:#ad81935c}
/* Natural-size media preserves faces and fashion framing; use only when real files exist. */
.hero-media{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center top}.gallery-media{display:block;width:100%;height:auto;object-fit:contain}.gallery-open:has(.gallery-media){aspect-ratio:auto}.feature-media{display:block;width:100%;height:auto;object-fit:contain}video{max-width:100%}
.lightbox{width:min(90vw,600px);max-height:92dvh;padding:18px;background:#100c0f;color:var(--ivory);border:1px solid #88616f;border-radius:8px;overflow:auto;box-shadow:0 25px 100px #000a}.lightbox::backdrop{background:#050304e8;backdrop-filter:blur(8px)}.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:8px;letter-spacing:1.8px;color:#d4afbf}.lightbox button{background:transparent;border:1px solid var(--line);width:44px;height:44px;display:grid;place-items:center;font-size:20px}.lightbox-close{font-size:27px!important}.lightbox-content{margin-top:14px}.lightbox-content .editorial-art{height:min(59dvh,600px);min-height:200px}.lightbox-content .art-letter{font-size:clamp(150px,50vw,350px)}.lightbox-content img,.lightbox-content video{display:block;max-height:65dvh;width:100%;object-fit:contain}.lightbox-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.lightbox-count{font-size:9px;letter-spacing:2px;color:#c9adb9}.lightbox-note{font-size:9px;line-height:1.5;color:#ad94a0;text-align:center;margin-top:16px}body.gallery-active{overflow:hidden}
@media(max-width:1000px){.ambient-caption,.ambient-edition{display:none}}@media(max-width:540px){.portfolio{margin:0 auto;border:0;border-radius:0;box-shadow:none}.hero{border-radius:0}.hero-copy{left:28px}.hero-baseline{left:28px}.hero-art .art-letter{font-size:clamp(300px,80vw,410px)}.hero{aspect-ratio:4/5.25}.content{padding:0 27px}.hero h1{font-size:clamp(78px,20vw,102px)}}@media(max-width:390px){.content{padding:0 23px}.hero-copy{left:25px;bottom:59px}.hero-baseline{left:25px;right:25px;font-size:6px}.masthead{left:25px;right:25px}.hero h1{letter-spacing:-4px}.social-icons{gap:0}.social-row>.eyebrow{font-size:6px}.gallery-section h2{font-size:42px;letter-spacing:-2.4px}.wolfpack h2{font-size:54px}.featured h2{font-size:70px}.featured-bottom{gap:8px}.text-link{font-size:6px}.section-label{font-size:6px}.intro p{font-size:20px}.gallery-lead .art-letter{font-size:270px}.elsewhere h2{font-size:41px}.social-card-bottom strong{font-size:22px}.social-card-bottom>span{font-size:7px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
