/* Garment plates and editorial spreads. Shared by the complete atelier. */
.section-head h2,.page-hero h1,.product-heading h1{letter-spacing:-.045em}

/* A collection opens as a chapter, then gives every model its own full surface. */
.collection-cover.section{padding-block:110px 94px}
.collection-cover .section-head{display:block;text-align:center;margin:0 auto;max-width:920px}
.collection-cover .section-head h2{font-size:clamp(3.5rem,5.6vw,5.5rem);line-height:1.04;max-width:none;margin-bottom:28px}
.collection-cover .section-head p{max-width:620px;margin-inline:auto;font-size:1.0625rem;line-height:1.85}
.collection-plate.section{padding-block:82px}
.collection-plate .product-card{max-width:none;width:100%;margin:0}
.collection-plate .product-card>a{
 display:grid;grid-template-columns:minmax(0,1fr) minmax(0,425px) minmax(0,1fr);
 grid-template-areas:'heading portrait copy';gap:clamp(30px,4vw,64px);align-items:center;height:auto
}
.plate-heading{grid-area:heading;min-width:0;align-self:center}
.collection-plate .catalog-caption{border:0;display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:0;margin:0 0 23px}
.collection-plate .catalog-caption .meta{font-size:.875rem;letter-spacing:.075em;order:2;line-height:1.65}
.collection-plate .catalog-caption .product-index{order:1;font-family:var(--serif);font-size:3.5rem;letter-spacing:-.06em;line-height:1;padding:0 0 25px;border-bottom:1px solid var(--tone-line);width:68px}
.collection-plate .product-card h3{font-size:clamp(2rem,2.65vw,2.8rem);line-height:1.12;letter-spacing:-.035em;margin:0;overflow-wrap:break-word;hyphens:auto;text-wrap:balance}
.collection-plate .product-photo{grid-area:portrait;width:100%;max-width:425px;aspect-ratio:2/3;margin:0;align-self:center}
.collection-plate .product-info{grid-area:copy;display:block;min-width:0;padding:0}
.collection-plate .product-card p{margin:0;font-size:1rem;line-height:1.9;max-width:33ch}
.collection-plate .card-price{margin-top:30px;padding-top:25px;align-items:flex-end;gap:15px}
.collection-plate .card-price strong{display:block;font-size:2.6rem;line-height:1.35;letter-spacing:-.03em}
.collection-plate .card-price small{font-size:.8125rem;line-height:1.7}
.collection-plate .card-service{display:block;font-size:.875rem;line-height:1.8;margin-top:11px;max-width:23ch}
.collection-plate .card-price .arrow{border-bottom:1px solid var(--tone-line);font-size:1.5rem;flex:none;margin-bottom:4px}
.collection-plate .product-card>a:focus-visible{outline-offset:12px}
.collection-assurance.section{padding-block:80px 40px}
.collection-assurance .collection-note{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:80px;border:0;max-width:none;padding:0;margin:0;align-items:center}
.collection-assurance .collection-note>div:first-child{display:grid;grid-template-columns:140px minmax(0,1fr);gap:36px;align-items:center}
.collection-assurance .collection-note .number{font-size:10rem;line-height:.85;margin:0}
.collection-assurance .collection-note h3{font-size:2.7rem;line-height:1.12;margin:0}
.collection-assurance .collection-note p{font-size:1rem;max-width:440px}
.collection-assurance .image-note{font-size:.875rem;max-width:none;border-top:1px solid var(--tone-line);margin-top:60px;padding-top:25px}

/* The introduction is a statement followed by two balanced columns. */
.home-intro .intro-grid{display:block;max-width:1080px}
.home-intro .intro-grid>div:first-child{text-align:center;max-width:940px;margin:0 auto 56px}
.home-intro h2{font-size:clamp(3rem,5.4vw,5.1rem);line-height:1.07;letter-spacing:-.04em}
.home-intro .atelier-introduction-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 80px;align-items:start}
.home-intro .atelier-introduction-copy .body-large{grid-row:1/3;font-family:var(--serif);font-size:1.9rem;line-height:1.4;color:var(--tone-title)}
.home-intro .atelier-introduction-copy>p+p{margin:0;font-size:1rem;line-height:1.9}
.home-intro .atelier-introduction-copy>.text-link{grid-column:2;justify-self:start;margin-top:24px}
.home-intro .feature-strip{margin-top:60px;border-block:1px solid var(--tone-line);padding-block:30px}
.home-intro .feature-strip .num{min-width:26px;padding-top:4px}

/* Material notes surround a full, upright detail portrait. */
.home-fabrics .section-head{display:block;text-align:center;max-width:850px;margin:0 auto 65px}
.home-fabrics .section-head h2{font-size:clamp(3rem,5vw,4.9rem);line-height:1.06;max-width:none;margin-bottom:28px}
.home-fabrics .section-head p{max-width:540px;margin-inline:auto}
.home-fabrics .fabric-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,425px) minmax(0,1fr);grid-template-areas:'first photo third' 'second photo third';gap:42px clamp(30px,4vw,64px);align-items:center}
.home-fabrics .fabric-photo{grid-area:photo;max-width:425px;width:100%;margin:0;align-self:center}
.home-fabrics .fabric-list{display:contents}
.home-fabrics .fabric-item{display:block;min-width:0;border:0;padding:0}
.home-fabrics .fabric-item:nth-child(1){grid-area:first;align-self:end}
.home-fabrics .fabric-item:nth-child(2){grid-area:second;align-self:start}
.home-fabrics .fabric-item:nth-child(3){grid-area:third;align-self:center}
.home-fabrics .fabric-item .num{display:block;font-size:.875rem;margin-bottom:18px;color:var(--tone-accent)}
.home-fabrics .fabric-item h3{font-size:2rem;line-height:1.15;letter-spacing:-.025em}
.home-fabrics .fabric-item p{font-size:1rem;line-height:1.85}
.home-fabrics .fabric-item .text-link{font-size:.875rem;margin-top:19px}
.home-fabrics .fabric-links{justify-content:center;gap:25px 40px;margin-top:45px;padding-top:28px;border-top:1px solid var(--tone-line)}

/* Shared, centered covers make a product, a university and a guide feel related. */
.page-hero.tone{padding-block:66px 88px}
.page-hero>.wrap{display:block;max-width:1120px;text-align:center}
.page-hero .eyebrow{margin-bottom:25px}
.page-hero h1{font-size:clamp(3.3rem,5.7vw,5.8rem);line-height:1.05;max-width:1060px;margin-inline:auto;text-wrap:balance}
.page-hero .intro{max-width:650px;font-size:1.0625rem;line-height:1.85;margin:30px auto 0;padding:0}
.product-hero-band{padding-block:40px 105px}
.product-hero-band .product-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:clamp(55px,8vw,120px);row-gap:64px;max-width:1120px}
.product-heading{display:block;text-align:center;border:0;padding:0;max-width:1020px;margin-inline:auto}
.product-heading .eyebrow{margin-bottom:23px}
.product-heading h1{font-size:clamp(3.3rem,5.7vw,5.8rem);line-height:1.04;hyphens:none}
.product-hero .product-heading .intro{font-size:1.0625rem;line-height:1.85;max-width:670px;margin:29px auto 0}
.product-copy{padding:32px 34px;border:1px solid var(--tone-line);background:var(--tone-panel)}
.product-copy .feature-pills{gap:6px 16px;padding-bottom:22px}
.product-copy .product-price{margin-top:25px}
.product-copy .product-price .price{font-size:3.1rem}
.product-copy .cta-row .button{width:100%;font-size:.9375rem;gap:20px;min-height:56px}
.product-copy .complete-offer{margin-top:30px;padding-top:25px}
.product-copy .complete-offer li{font-size:.9375rem;line-height:1.8}
.product-copy .product-service{font-size:.875rem;gap:12px 20px;flex-wrap:wrap}
.product-hero>.toga-gallery{justify-self:center}
.product-heading h1 em{display:inline-block}
.story-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:clamp(60px,9vw,140px)}
.story-heading h2{font-size:clamp(2.4rem,3.3vw,3.4rem);line-height:1.13;max-width:430px}
.story-heading{padding-top:22px;border-top:1px solid var(--tone-line)}
.story-copy{max-width:62ch}
.chapter-index-inner{justify-content:center;max-width:1120px;gap:12px 28px;padding-block:7px}
.chapter-index strong{font-size:.875rem;font-weight:500}
.chapter-index a{line-height:1.8}
.university-band .university-model{padding-block:95px;column-gap:clamp(60px,8vw,120px)}
.university-model-copy h2{font-size:clamp(2.7rem,4vw,4rem);letter-spacing:-.04em;line-height:1.06}
.university-model-copy .eyebrow{padding-bottom:21px;border-bottom:1px solid var(--tone-line);margin-bottom:25px}
.university-order{margin-top:30px}
.tone.cta-band{padding-block:105px}
.cta-band .wrap{display:flex;flex-direction:column;text-align:center;gap:32px;max-width:1000px}
.cta-band h2{font-size:clamp(3.5rem,6vw,6rem);line-height:1.02;letter-spacing:-.045em;margin:0}
.cta-band p{max-width:550px;margin-inline:auto;font-size:1.0625rem;line-height:1.85}
.cta-band .cta-row{justify-content:center;margin-top:27px}

.home-page .footer .brand-sub{color:var(--tone-muted)}
.footer{padding-block:62px 25px}
.footer .brand .brand-name{font-size:2rem;letter-spacing:-.035em}
.footer .brand .brand-sub{font-size:.75rem;letter-spacing:.06em;margin-top:8px;color:var(--tone-muted)}
.footer .footer-brand p{max-width:28ch;margin-top:21px}
.footer .footer-grid{gap:35px 30px}
.footer .footer-bottom{margin-top:40px;padding-top:24px}

@media(max-width:1150px){
 .collection-plate .product-card>a{grid-template-columns:minmax(0,425px) minmax(0,1fr);grid-template-areas:'heading heading' 'portrait copy';gap:30px 60px;max-width:970px;margin-inline:auto}
 .collection-plate .plate-heading{display:grid;grid-template-columns:minmax(0,425px) minmax(0,1fr);gap:60px;align-items:center;padding-bottom:25px;border-bottom:1px solid var(--tone-line)}
 .collection-plate .catalog-caption{display:flex;flex-direction:row;align-items:center;gap:25px;margin:0}
 .collection-plate .catalog-caption .product-index{font-size:2.5rem;width:auto;border:0;padding:0}
 .collection-plate .product-card h3{font-size:2.7rem}
 .collection-plate .card-price strong{font-size:2.5rem}
 .collection-assurance .collection-note{gap:50px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
 .collection-assurance .collection-note>div:first-child{grid-template-columns:100px minmax(0,1fr);gap:28px}
 .collection-assurance .collection-note .number{font-size:7.8rem}.collection-assurance .collection-note h3{font-size:2.2rem}
 .home-fabrics .fabric-grid{grid-template-columns:minmax(0,425px) minmax(0,1fr);grid-template-areas:'photo notes';gap:50px}
 .home-fabrics .fabric-list{grid-area:notes;display:block}
 .home-fabrics .fabric-item+.fabric-item{margin-top:32px;padding-top:28px;border-top:1px solid var(--tone-line)}
 .home-fabrics .fabric-item .num{margin-bottom:12px}
 .product-hero-band .product-hero{column-gap:45px;row-gap:50px}
 .product-copy{padding:27px 25px}
 .product-copy .cta-row .button{font-size:.875rem;padding-inline:18px}
}
@media(min-width:1101px){
 .product-hero-band .product-hero{grid-template-columns:516px minmax(0,1fr)}
}
@media(max-width:800px){
 .collection-cover.section{padding-block:75px}
 .collection-plate.section{padding-block:62px}
 .collection-plate .product-card>a{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:35px}
 .collection-plate .plate-heading{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:35px}
 .collection-plate .product-card h3{font-size:2.3rem}
 .collection-plate .catalog-caption{gap:17px}.collection-plate .catalog-caption .meta{font-size:.8125rem}
 .collection-plate .card-price{flex-wrap:wrap;gap:12px;margin-top:23px}
 .collection-plate .card-price strong{font-size:2.3rem}
 .collection-assurance .collection-note{grid-template-columns:1fr;gap:32px}
 .collection-assurance .collection-note>div:first-child{grid-template-columns:120px minmax(0,1fr)}
 .collection-assurance .collection-note .number{font-size:9rem}
 .collection-assurance .collection-note h3{font-size:2.6rem}
 .collection-assurance .collection-note p{max-width:600px}
 .home-intro .atelier-introduction-copy{gap:0 40px}
 .home-intro .atelier-introduction-copy .body-large{font-size:1.65rem}
 .home-fabrics .fabric-grid{gap:35px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .home-fabrics .fabric-item h3{font-size:1.8rem}
 .page-hero h1,.product-heading h1{font-size:3.7rem}
 .product-hero-band .product-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px 28px}
 .product-copy{padding:25px 20px}.product-copy .product-price .price{font-size:2.5rem}
 .story-grid{column-gap:40px}.story-heading h2{font-size:2.5rem}
 .university-band .university-model{column-gap:45px}
}
@media(max-width:650px){
 .collection-cover.section{padding-block:64px}
 .collection-cover .section-head h2{font-size:clamp(2.65rem,10vw,3.6rem);line-height:1.08;margin-bottom:23px}
 .collection-cover .section-head p{font-size:1rem}
 .collection-plate.section{padding-block:48px 56px}
 .collection-plate .product-card>a{grid-template-columns:minmax(0,425px);grid-template-areas:'heading' 'portrait' 'copy';gap:25px;justify-content:center;max-width:425px}
 .collection-plate .plate-heading{display:block;padding:0;border:0}
 .collection-plate .catalog-caption{display:flex;flex-direction:row;align-items:center;gap:18px;margin-bottom:15px}
 .collection-plate .catalog-caption .product-index{font-size:1.5rem;width:auto;padding:0;border:0;letter-spacing:0}
 .collection-plate .catalog-caption .meta{font-size:.8125rem;letter-spacing:.06em}
 .collection-plate .product-card h3{font-size:clamp(2.3rem,8.8vw,3rem);hyphens:none}
 .collection-plate .product-photo{margin-inline:auto}
 .collection-plate .product-card p{max-width:none;font-size:1rem;line-height:1.85}
 .collection-plate .card-price{flex-wrap:nowrap;margin-top:24px;padding-top:22px;align-items:center}
 .collection-plate .card-price strong{font-size:2.4rem}
 .collection-plate .card-service{max-width:none;margin-top:7px}
 .collection-assurance.section{padding-block:60px 32px}
 .collection-assurance .collection-note{padding:0;border:0;gap:28px}
 .collection-assurance .collection-note>div:first-child{grid-template-columns:105px minmax(0,1fr);gap:25px}
 .collection-assurance .collection-note .number{font-size:8rem}
 .collection-assurance .collection-note h3{font-size:2.2rem}
 .collection-assurance .image-note{margin-top:35px;font-size:.875rem}
 .home-intro .intro-grid>div:first-child{margin-bottom:34px}
 .home-intro h2{font-size:clamp(2.55rem,9.5vw,3.5rem);line-height:1.09}
 .home-intro .atelier-introduction-copy{display:block}
 .home-intro .atelier-introduction-copy .body-large{font-size:1.75rem;line-height:1.45}
 .home-intro .atelier-introduction-copy>p+p{margin-top:25px}
 .home-intro .feature-strip{margin-top:38px;padding-block:26px}
 .home-fabrics .section-head{margin-bottom:35px}
 .home-fabrics .section-head h2{font-size:2.9rem;line-height:1.07;margin-bottom:24px}
 .home-fabrics .fabric-grid{grid-template-columns:1fr;grid-template-areas:'photo' 'notes';gap:35px}
 .home-fabrics .fabric-photo{margin-inline:auto;max-width:425px}
 .home-fabrics .fabric-item h3{font-size:2rem}
 .home-fabrics .fabric-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:15px}
 .home-fabrics .fabric-item .num{padding-top:3px}
 .home-fabrics .fabric-links{margin-top:32px;justify-content:flex-start;gap:20px 28px}
 .page-hero.tone{padding-block:35px 53px}
 .page-hero h1,.product-heading h1{font-size:clamp(2.65rem,10vw,3.7rem);line-height:1.07}
 .page-hero .intro,.product-hero .product-heading .intro{font-size:1rem;line-height:1.85;margin-top:25px}
 .product-hero-band{padding-block:26px 60px}
 .product-hero-band .product-hero{grid-template-columns:1fr;grid-template-areas:'heading' 'gallery' 'offer';row-gap:35px}
 .product-heading{padding:0}
 .product-copy{width:100%;max-width:425px;margin-inline:auto;padding:26px 22px}
 .product-copy .product-price .price{font-size:2.9rem}
 .product-copy .cta-row .button{font-size:.875rem;gap:15px;padding-inline:18px}
 .story-grid{display:block}.story-heading{padding-top:20px;margin-bottom:28px}
 .story-heading h2{font-size:2.4rem;line-height:1.14}
 .chapter-index-inner{justify-content:flex-start;gap:11px 22px}
 .university-band .university-model{padding-block:60px}
 .university-model-copy h2{font-size:2.8rem;line-height:1.09}
 .tone.cta-band{padding-block:70px}
 .cta-band .wrap{gap:27px}
 .cta-band h2{font-size:clamp(3.1rem,11vw,4rem);line-height:1.05;margin:0}
 .cta-band p{font-size:1rem}.cta-band .cta-row{margin-top:25px}
 .footer{padding-block:45px 24px}
 .footer .footer-grid{gap:30px 24px}
 .footer .footer-brand p{max-width:40ch}
 .footer .footer-bottom{margin-top:30px;padding-top:21px}
 
}
@media(max-width:380px){
 .collection-assurance .collection-note>div:first-child{grid-template-columns:85px minmax(0,1fr);gap:20px}
 .collection-assurance .collection-note .number{font-size:6.5rem}
 .collection-assurance .collection-note h3{font-size:1.9rem}
 .product-copy{padding:24px 18px}
}
@media print{
 .collection-plate .product-card>a,.collection-assurance .collection-note,.home-fabrics .fabric-grid,.home-intro .atelier-introduction-copy{display:block}
 .collection-plate .product-photo,.home-fabrics .fabric-photo{max-width:200px}
 .collection-plate.section,.collection-cover.section,.collection-assurance.section{padding-block:25px}
 .product-copy{background:#fff;color:#000;padding:15px;border-color:#aaa}
}

/* Institutional work belongs to the brand introduction, before the collection. */
/* Togamaker wordmark, quiet product galleries and the personal guarantee. */
.brand-wordmark{display:block;width:205px;height:auto;max-width:100%;flex:none}
.header .brand-sub{font-size:.8125rem;letter-spacing:.045em;margin-top:4px}
.footer .brand-wordmark{width:162px}
.footer .brand-sub{font-size:.8125rem}
.gallery-tabs.gallery-thumbnails button{padding:0}
.gallery-stage .gallery-thumbnails img{height:96px}
.gallery-explain{margin-top:16px;font-size:.9375rem}
.certificate-layout{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(40px,7vw,100px)}
.certificate-preview{display:block;width:100%;max-width:410px;margin:auto;box-shadow:0 15px 45px #0000001c}
.certificate-preview img{display:block;width:100%;height:auto}
.certificate-copy h2{font-size:clamp(2.7rem,4.5vw,4.4rem);line-height:1.04;margin:18px 0 26px}
.certificate-copy p{font-size:1rem;line-height:1.85;max-width:56ch;margin:0 0 20px}
.certificate-copy .button{margin:9px 0 18px}
.certificate-copy .certificate-note{font-size:.875rem;color:var(--tone-muted)}
@media(max-width:760px){.brand-wordmark{width:175px}.certificate-layout{grid-template-columns:1fr;gap:38px}.certificate-preview{max-width:310px}.certificate-copy{max-width:580px}.gallery-stage .gallery-thumbnails img{height:90px}}
@media(max-width:380px){.brand-wordmark{width:154px}.header .brand-sub{font-size:.75rem;letter-spacing:0}}
.organisation-audiences{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin-top:48px;border-top:1px solid var(--tone-line);padding-top:28px}
.organisation-audiences a{display:block;min-width:0;color:var(--tone-text);text-decoration:none;padding-block:8px}
.organisation-audiences strong{display:block;font-size:1rem;font-weight:500;line-height:1.5;color:var(--tone-title)}
.organisation-audiences span{display:block;margin-top:8px;font-size:.875rem;line-height:1.7;color:var(--tone-muted)}
.organisation-audiences a:hover strong{text-decoration:underline;text-underline-offset:5px}
.organisation-audiences a:focus-visible{outline:2px solid currentColor;outline-offset:6px}
.organisation-intro-foot{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px;padding-top:25px;border-top:1px solid var(--tone-line)}
.organisation-intro-foot p{font-size:.9375rem;line-height:1.8;max-width:58ch}
.organisation-intro-foot .text-link{flex-shrink:0;font-size:.9375rem}
@media(min-width:1101px){body:not(.home-page) .nav-links{gap:clamp(15px,1.7vw,26px)}}
@media(max-width:950px){.organisation-audiences{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 30px}.organisation-intro-foot{display:block}.organisation-intro-foot .text-link{display:inline-block;margin-top:17px}}
@media(max-width:650px){.organisation-audiences{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;margin-top:35px;padding-top:22px}.organisation-intro-foot{margin-top:23px}.organisation-audiences strong{font-size:1rem}}
@media(max-width:380px){.organisation-audiences{grid-template-columns:1fr}.organisation-audiences a{border-bottom:1px solid var(--tone-line);padding-bottom:16px}}
