*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#f5f2e9;color:#172642;font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;font-size:22px;line-height:1.5}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit;cursor:pointer}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Italiana,Georgia,serif;color:#1f3a8a;font-weight:400;line-height:1.02}h3{font-weight:400;line-height:1.2}em{font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;font-weight:400}p{margin:0 0 24px}header{position:sticky;top:0;z-index:5;background:#f5f2e9f5;border-bottom:1px solid #17264233;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:10px 3%;min-height:88px}.brand{font-size:48px;color:#1f3a8a;letter-spacing:-8px;line-height:1}.brand span{font-size:28px;margin:0 7px}nav{font-family:Italiana,Georgia,serif;display:flex;gap:30px;font-size:20px;flex-wrap:wrap}nav a:hover,.text-link:hover{color:#1f3a8a}main>section{margin:0 3%;padding:75px 0;border-bottom:1px solid #17264240}main>.hero{padding-top:42px}.hero h1{font-size:clamp(70px,15.2vw,260px);letter-spacing:-.045em;white-space:nowrap;margin-bottom:44px}.hero-bottom{display:grid;grid-template-columns:1.1fr 1fr .6fr;gap:35px;align-items:end}.hero-bottom h2{font-size:clamp(30px,3.1vw,58px);color:#172642}.hero-bottom p{margin:0}.hero-bottom .label{text-align:right}.label,.small{font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;font-size:14px;line-height:1.65}.label{letter-spacing:.1em}.hero-note{border-top:1px solid #17264280;margin-top:40px;padding-top:35px;display:grid;grid-template-columns:35% 65%}.hero-note>div>p:first-child{font-size:32px}.section-heading{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:65px}.section-heading h2,section>.split h2{font-size:clamp(50px,6.2vw,116px)}.section-heading .small{max-width:390px}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 40px}.project img{width:100%;aspect-ratio:1.2;object-fit:contain;background:#d6d6d4;display:block;transition:filter .3s}.project:hover img{filter:brightness(.97)}.project-meta{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #17264280;padding-top:17px;margin-top:17px}.project-meta h3{font-size:30px}.project-meta span{font:14px "Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif}.project>.label{font-size:12px;margin-top:10px}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%}.about>.label{margin-bottom:42px}.about h2{margin-bottom:30px}.portrait{width:58%;margin-top:35px;display:block}.about-copy h3{font-size:clamp(35px,3.5vw,65px);margin-bottom:55px}.about-copy p{max-width:670px}.text-link{display:inline-block;border:0;border-bottom:1px solid currentColor;padding:0;background:none;font-size:22px}.service-list{margin-left:35%;margin-bottom:35px}details{border-top:1px solid #17264240}details:last-child{border-bottom:1px solid #17264240}summary{cursor:pointer;display:flex;align-items:center;gap:30px;padding:25px 0;list-style:none}summary::-webkit-details-marker{display:none}summary h3{font-size:32px;flex:1}summary .toggle{font-size:28px}details[open] .toggle{transform:rotate(45deg)}details>div{padding:0 35px 30px 60px}#services>.text-link{margin-left:35%}.resume>div{border-top:1px solid #17264240;padding:22px 0}.resume h3{font-size:29px}.resume p{margin:8px 0 0;font-size:20px}.design-split h2{margin-bottom:30px}.design-split img{width:100%;display:block}.design-split figcaption{margin-top:12px}.coming{border-top:1px solid #17264240;padding-top:30px;margin-top:50px}.coming h3{font-size:40px;margin-bottom:15px}.contact{background:#1f3a8a;color:#f5f2e9;padding:65px 3% 85px}.contact h2{font-size:clamp(65px,11vw,210px);color:inherit;margin:48px 0 65px}.contact .small{margin-top:25px}footer{padding:25px 3%;display:flex;justify-content:space-between;gap:20px;font:14px "Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif}.skip{position:absolute;left:10px;top:-80px;background:#fff;padding:10px;z-index:10}.skip:focus{top:5px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #1f3a8a;outline-offset:5px}dialog{background:#f5f2e9;color:#172642;border:0;max-width:1200px;width:92vw;max-height:90vh;padding:50px}dialog::backdrop{background:#142342bd}.close{display:block;margin:0 0 30px auto;border:0;background:none;font:16px "Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif}.project-detail{display:grid;grid-template-columns:1fr 1fr;gap:40px}.project-detail h1{font-size:65px;margin-bottom:25px}.project-detail img{width:100%;display:block}.gallery-image{background:none;padding:0;border:0;width:100%}.gallery-caption{font:14px "Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;margin:12px 0}.gallery-controls{display:flex;flex-wrap:wrap;gap:8px}.gallery-controls button{font:14px "Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;border:1px solid #17264255;background:none;padding:9px 12px}.gallery-controls button[aria-pressed=true]{background:#1f3a8a;color:#fff}.dress-process h2,dialog>h2{font-size:44px;margin:25px 0}.process-step{border-top:1px solid #17264240;margin-top:35px;padding-top:30px}.process-step img{width:100%}.process-pair,.process-final{display:flex;gap:20px}.process-pair>figure,.process-final>figure{flex:1;min-width:0}.dress-process figcaption{font:14px "Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;margin:12px 0}.process-fit-image img{max-height:600px;object-fit:contain}body.modal-open{overflow:hidden}@media(max-width:800px){body{font-size:20px}header{padding:14px 5%;align-items:start}.brand{font-size:38px}nav{gap:8px 18px;font-size:16px;justify-content:flex-end;max-width:75%}main>section{margin:0 5%;padding:50px 0}.hero h1{font-size:14.7vw;margin-bottom:30px}.hero-bottom{grid-template-columns:1fr}.hero-bottom .label{text-align:left}.hero-note{grid-template-columns:1fr;gap:15px}.hero-note>div>p:first-child{font-size:25px}.section-heading{align-items:start;flex-direction:column;margin-bottom:30px}.portfolio-grid{gap:40px 20px}.project-meta{align-items:start;flex-direction:column;gap:8px}.project-meta h3{font-size:25px}.project img{aspect-ratio:.8}.split{grid-template-columns:1fr;gap:35px}.portrait{width:65%;max-width:360px}.about-copy h3{margin-bottom:30px}.service-list,#services>.text-link{margin-left:0}summary{gap:15px}summary h3{font-size:27px}details>div{padding:0 0 25px 30px}.contact{padding:50px 5%}.contact h2{margin:30px 0 45px}footer{padding:22px 5%;flex-wrap:wrap}dialog{padding:25px}.project-detail{grid-template-columns:1fr}.project-detail h1{font-size:48px}.process-pair,.process-final{flex-direction:column}.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero-wordmark{display:block;width:100%;height:auto;mix-blend-mode:multiply}.brand{letter-spacing:normal;flex-shrink:0}.brand img{display:block;width:228px;height:auto;mix-blend-mode:multiply}@media(max-width:800px){.brand img{width:132px}nav{max-width:65%}}

/* Uniform full-frame portfolio images, without side bands. */
.portfolio-grid .project img{aspect-ratio:1 / 1;object-fit:cover;object-position:center;background:transparent}

.hero-wordmark,.brand img{filter:url(#logo-transparent);mix-blend-mode:normal;background:transparent;border:0;box-shadow:none}

.hero-wordmark,.brand img{filter:url(#logo-transparent);mix-blend-mode:normal}

/* Original small logo; large title rendered as crisp typography. */
.brand img{filter:none;mix-blend-mode:normal;background:transparent}.hero h1{font-family:Italiana,Georgia,serif}

.hero h1 .logo-amp{font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;font-weight:400;font-style:normal;font-size:.92em;letter-spacing:-.06em;display:inline-block;margin:0 .025em}

/* Preserve the approved original logo exactly at both sizes. */
.hero-wordmark,.brand img{filter:none;mix-blend-mode:normal}





.expertise-block{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid #17264240;margin-top:60px;padding-top:40px}.expertise-thought{font-size:clamp(32px,3.2vw,52px);line-height:1.3;color:#1f3a8a}.expertise-block h3{font-size:30px;margin-bottom:20px}.expertise-block ul{margin:0;padding-left:1.1em}.expertise-block li{margin-bottom:10px}@media(max-width:800px){.expertise-block{grid-template-columns:1fr;gap:25px;margin-top:40px}}

.about .personal-heading{font-size:clamp(30px,3.8vw,64px);line-height:1.25;letter-spacing:-.02em}.portrait-expertise{margin-top:35px;padding-top:30px;border-top:1px solid #17264240}.portrait-expertise h3{font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;font-size:30px;margin:0 0 20px}.portrait-expertise ul{padding-left:1.1em;margin:0}.portrait-expertise li{margin-bottom:10px}

.service-list summary h3 a{border-bottom:1px solid currentColor}.service-list summary h3 a:hover{color:#1f3a8a}.patternmaking-intro h1{font-size:clamp(48px,9vw,145px);overflow-wrap:anywhere}.patternmaking-intro>.text-link{font-size:18px;margin-bottom:45px}.patternmaking-intro>.label{margin-bottom:20px}.patternmaking-section{display:grid;grid-template-columns:1fr 1fr;gap:8%}.patternmaking-section h2{font-size:clamp(34px,4vw,64px);line-height:1.12}.patternmaking-section p{max-width:660px}.patternmaking-section .label{margin-bottom:22px}.patternmaking-cta{border-bottom:0}.project-button{display:inline-block;background:#1f3a8a;color:#f5f2e9;padding:17px 30px;font-size:22px}.project-button:hover{background:#142342}@media(max-width:800px){.patternmaking-section{grid-template-columns:1fr;gap:28px}.patternmaking-intro h1{font-size:clamp(42px,10vw,80px)}}

.sampling-heading{font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;font-size:28px;font-weight:400;line-height:1.25;margin:0 0 24px;color:#1f3a8a}

.hero-note{grid-template-columns:35% 65%}.hero-note>div{grid-column:2}@media(max-width:800px){.hero-note{grid-template-columns:1fr}.hero-note>div{grid-column:1}}

/* Consistent typography: editorial headings and readable body text. */
h1,h2,h3,h4,.portrait-expertise h3,.sampling-heading{font-family:Italiana,Georgia,serif;font-weight:400}h1 em,h2 em,h3 em,h4 em{font-family:inherit;font-style:normal}.hero-bottom .normal-amp{font-family:inherit;font-weight:400;font-style:normal}

.classic-amp{font-family:inherit;font-style:normal;font-weight:400}h1 .classic-amp,h2 .classic-amp,h3 .classic-amp,h4 .classic-amp,.hero-bottom .normal-amp{font-family:"Cormorant Garamond",Garamond,serif;font-style:normal;font-weight:300;font-synthesis:none}

/* Classic light ampersand within editorial navigation. */
nav .classic-amp{font-family:"Cormorant Garamond",Garamond,serif;font-weight:300;font-style:normal;font-synthesis:none}

.patternmaking-cta{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.patternmaking-cta>.text-link{overflow-wrap:anywhere;max-width:100%}

.hero-bottom{grid-template-columns:1.1fr 1.6fr}@media(max-width:800px){.hero-bottom{grid-template-columns:1fr}}

/* Smaller original wordmark with generous space to the right. */
.hero-wordmark{width:60%;max-width:760px;height:auto}@media(max-width:800px){.hero-wordmark{width:85%;max-width:560px}}

.hero-bottom{grid-template-columns:1.1fr 1fr .6fr}.hero-bottom .hero-name{font-size:16px;line-height:1.5;text-align:right}@media(max-width:800px){.hero-bottom{grid-template-columns:1fr}.hero-bottom .hero-name{text-align:right;font-size:15px}}

.hero-bottom{grid-template-columns:1.1fr 1.6fr}@media(max-width:800px){.hero-bottom{grid-template-columns:1fr}}

.hero-bottom{grid-template-columns:1fr}

/* Show the full trousers, including hems, in the portfolio frame. */
.portfolio-grid .project[data-project="trousers"] img{object-fit:contain;background:#b3b4af}

/* Service-led opening with the original logo in the navigation. */
.hero h1.hero-service-title{font-size:clamp(28px,3.655vw,61.2px);line-height:1.08;letter-spacing:-.02em;white-space:normal;max-width:1200px;margin:20px 0 50px}.hero .hero-note{grid-template-columns:1fr}.hero .hero-note>div{grid-column:1}@media(max-width:800px){.hero h1.hero-service-title{font-size:clamp(26px,4.76vw,35.7px);margin:10px 0 35px}}

/* Scale the logo lettering alongside the service heading. */
.brand img{width:clamp(280px,35vw,440px)}@media(max-width:800px){header{flex-wrap:wrap;gap:16px}.brand img{width:clamp(180px,34vw,256px)}nav{max-width:100%;margin-left:auto}}

.hero-service-title .lining-numeral,.service-list h3 .lining-numeral,.service-list h4 .lining-numeral{display:inline-block;font-size:1.175em;line-height:0;position:relative;top:-.0966em}

/* Simple gallery view labels without surrounding boxes. */
.gallery-controls{gap:8px 24px}.gallery-controls button{border:0;border-bottom:1px solid transparent;background:transparent;padding:9px 0;color:inherit}.gallery-controls button[aria-pressed=true]{background:transparent;color:#1f3a8a;border-bottom-color:currentColor}.gallery-controls button:hover{color:#1f3a8a}


.contact .text-link:hover{color:#f5f2e9;opacity:.85}.contact a:focus-visible{outline-color:#f5f2e9}

.avatar-development{grid-column:1 / -1;margin-top:12px}.avatar-development>p{max-width:760px;margin:28px 0 0;font-size:18px;line-height:1.6}.avatar-images{display:grid;grid-template-columns:1fr 1fr;gap:35px;max-width:1000px}.avatar-images img{display:block;width:100%;height:auto}.avatar-images figcaption{margin-top:12px}@media(max-width:600px){.avatar-images{grid-template-columns:1fr;gap:30px}}

.pdf-pattern-examples{grid-column:1 / -1;margin-top:20px}.pdf-pattern-examples h3{font-size:32px;margin-bottom:20px;color:#1f3a8a}.pdf-pattern-examples>p{max-width:850px;font-size:18px;line-height:1.6}.pdf-pattern-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:35px}.pdf-pattern-grid img{display:block;width:100%;height:auto}.pdf-pattern-grid figcaption{margin-top:12px}@media(max-width:700px){.pdf-pattern-grid{grid-template-columns:1fr;gap:35px}}

.pdf-pattern-grid { grid-template-columns: minmax(0, 1fr); max-width: 620px; }

.avatar-images-with-dress{grid-template-columns:repeat(3,minmax(0,1fr))}.avatar-images-with-dress figure{margin:0}@media(max-width:600px){.avatar-images-with-dress{grid-template-columns:1fr}}

/* Readable supporting typography with editorial display headings. */
:root{--reading-font:"Libre Franklin",Arial,sans-serif}
body{font-family:var(--reading-font);font-size:19px;line-height:1.65}
nav,h3,h4,.portrait-expertise h3,.sampling-heading,.label,.small,em,.project-meta span,.project>.label,.resume p,footer,.close,.gallery-caption,.gallery-controls button,.dress-process figcaption{font-family:var(--reading-font)}
h3,h4,.portrait-expertise h3,.sampling-heading{font-weight:500;line-height:1.35}
h3 em,h4 em{font-family:inherit}h1,h2,h1 em,h2 em{font-family:Italiana,Georgia,serif;font-weight:400}
nav .classic-amp,h3 .classic-amp,h4 .classic-amp{font-family:inherit;font-weight:inherit}
nav{font-size:16px;line-height:1.4;gap:8px 22px}nav a{display:inline-flex;align-items:center;min-height:44px}
header{flex-wrap:wrap;background:#f5f2e9;gap:12px 30px}
.hero h1.hero-service-title{font-size:clamp(32px,3.65vw,61px);line-height:1.2;max-width:1250px}
.hero-note>div>p:first-child{font-size:20px;line-height:1.7;max-width:900px}
summary h3{font-size:26px}.project-meta h3,.resume h3{font-size:24px}.sampling-heading,.pdf-pattern-examples h3,.portrait-expertise h3{font-size:24px}
.about-copy h3{font-size:clamp(28px,3vw,42px)}.coming h3{font-size:30px}
.service-list h3 .lining-numeral,.service-list h4 .lining-numeral{font-size:1em;position:static;line-height:inherit}
.text-link,.project-button{min-height:44px;display:inline-flex;align-items:center;font-size:19px;max-width:100%;overflow-wrap:anywhere}
.label,.small,.project-meta span,.gallery-caption,.gallery-controls button{font-size:14px}.gallery-controls button{min-height:44px}
.contact a{word-break:break-word}.contact .small{color:#f5f2e9}.contact{color:#f5f2e9}
.portfolio-grid .project{min-width:0}.portfolio-grid .project img{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover;object-position:center}
.project-detail img{object-fit:contain;height:auto}.avatar-images img,.pdf-pattern-grid img{height:auto;object-fit:contain}
@media(max-width:800px){
 html{scroll-padding-top:20px}body{font-size:17px;line-height:1.65}
 header{position:relative;padding:18px 5%;gap:16px}.brand img{width:clamp(180px,55vw,250px);max-width:100%}
 nav{width:100%;max-width:none;margin:0;justify-content:flex-start;gap:2px 20px;font-size:15px}
 main>section{padding:44px 0}.hero h1.hero-service-title{font-size:clamp(32px,7.5vw,48px);line-height:1.25;margin:0 0 28px}
 .hero-note{margin-top:24px;padding-top:24px}.hero-note>div>p:first-child{font-size:18px;line-height:1.7}
 .section-heading h2,section>.split h2{font-size:clamp(40px,10vw,64px);line-height:1.12}
 summary{gap:12px;padding:22px 0;align-items:flex-start}summary h3{font-size:22px;min-width:0}summary .label{padding-top:3px}summary .toggle{line-height:1;flex-shrink:0}
 details>div{padding:0 0 28px}.service-list{margin-bottom:26px}
 .sampling-heading,.pdf-pattern-examples h3,.portrait-expertise h3{font-size:21px}
 .avatar-development>p,.pdf-pattern-examples>p,.resume p{font-size:17px;line-height:1.65}
 .about-copy h3{font-size:28px}.project-meta h3,.resume h3{font-size:21px}
 .text-link,.project-button{font-size:17px}.contact .text-link{font-size:clamp(16px,4.5vw,20px)}
 .contact h2{font-size:clamp(48px,12vw,80px);line-height:1.12;margin:28px 0 36px}
 .avatar-images-with-dress{grid-template-columns:1fr;gap:28px}.portfolio-grid{gap:36px 20px}
 dialog{width:94vw;padding:22px;max-width:100%}.project-detail h1{font-size:42px;overflow-wrap:anywhere}
}
@media(max-width:480px){.portfolio-grid{grid-template-columns:1fr}.project img{max-height:none}.project-meta{flex-direction:row;align-items:center}.project-meta span{font-size:13px}.label{letter-spacing:.06em}}

/* Keep the complete suit jacket centred inside its square portfolio frame. */
.portfolio-grid .project[data-project="suit"] img{aspect-ratio:1 / 1;object-fit:cover;object-position:center 40%;background:transparent}

.hero .hero-services-intro{font-family:var(--reading-font);font-size:18px;font-weight:400;line-height:1.8;max-width:680px;margin:0 0 40px} @media(max-width:800px){.hero .hero-services-intro{font-size:17px;line-height:1.75;max-width:38em;margin-bottom:32px}}

/* Larger wordmark, scaled with the editorial headings. */
.brand{max-width:100%}.brand img{width:clamp(340px,40vw,500px);max-width:100%;height:auto}
@media(max-width:800px){.brand img{width:clamp(260px,52vw,380px);max-width:100%;height:auto}}

/* Slightly strengthen Italiana display headings while retaining their shape. */
h1,h2{-webkit-text-stroke:0.35px currentColor}

/* Match the services introduction to the readable body text at every screen size. */
#services > .section-heading > p{font-size:inherit;font-weight:400;line-height:inherit}
