:root{--navy:#072946;--red:#bd1825;--cream:#faf5e8;--ink:#15354c;--line:#c9cbbf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.65}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid var(--red);outline-offset:5px}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:0}.ribbon{background:var(--navy);color:var(--cream);text-align:center;padding:8px 16px;font-size:12px;letter-spacing:.2em;font-weight:bold}header{max-width:1400px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:23px 5%;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;font-family:Georgia,serif;font-weight:bold;font-size:26px;line-height:1.05;letter-spacing:.02em}.brand img{width:66px;height:66px;border-radius:50%}.brand small{display:block;font:700 12px Arial,sans-serif;letter-spacing:.26em;color:var(--red);margin-top:7px}nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}nav a{text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fff;padding:16px 25px;line-height:1.3;font-size:16px;font-weight:bold;text-decoration:none;border:1px solid var(--red);transition:background .15s}.button:hover{background:var(--navy);border-color:var(--navy)}.button.small{padding:12px 18px;font-size:14px}.hero{position:relative;max-width:1400px;margin:auto;padding:60px 5% 70px;display:grid;grid-template-columns:1.05fr 1fr;gap:8%;align-items:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.19em;color:var(--red);margin:0 0 22px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.07;font-weight:400;margin:0}h1{font-size:clamp(48px,5.8vw,82px);letter-spacing:-.045em}h1 em{color:var(--red)}.intro{max-width:430px;margin:27px 0 30px;font-size:18px}.text-link{display:inline-block;font-size:15px;font-weight:600;margin-top:20px}.hero-copy>.text-link{display:block;width:fit-content;margin-top:17px}.hero-photo{margin:0;position:relative;box-shadow:12px 12px 0 #dfd9c9;transform:rotate(1.2deg);background:var(--navy)}.hero-photo img{display:block;width:100%;height:600px;object-fit:cover;object-position:center 65%}.hero-photo figcaption{background:var(--navy);color:var(--cream);font-size:11px;letter-spacing:.12em;padding:15px 18px;line-height:1.5;text-align:center}.side-note{position:absolute;right:12px;top:190px;writing-mode:vertical-rl;font-size:11px;letter-spacing:.16em}.process{border-top:1px solid var(--line);padding:75px max(5%,calc((100vw - 1260px)/2)) 85px;background:#fffdf7}.section-top{display:grid;grid-template-columns:1fr 1fr;column-gap:8%;align-items:end}.section-top .eyebrow{grid-column:1/-1}.section-top>p:last-child{margin:0 0 3px;font-size:18px}h2{font-size:clamp(36px,4vw,54px);letter-spacing:-.035em}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:55px}.steps article{border-top:1px solid var(--navy);padding-top:23px}.number{color:var(--red);font-family:Georgia,serif;font-size:28px}.steps h3{font-size:25px;margin:15px 0}.steps p{font-size:16px;line-height:1.8;margin:0}.shirt-story{max-width:1400px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:85px 5%;align-items:center}.detail-photo{height:480px;background:url('assets/fish-shirt.jpg') center 34%/160% auto;border:10px solid #fffdf7;box-shadow:0 0 0 1px var(--line)}.story-copy>p:not(.eyebrow){font-size:17px}.note{font-style:italic;border-top:1px solid var(--line);padding-top:20px}.maker{background:var(--navy);color:var(--cream);padding:65px max(5%,calc((100vw - 1200px)/2));display:grid;grid-template-columns:270px 1fr;gap:90px;align-items:center}.maker img{width:100%;height:auto;border-radius:50%;transform:rotate(-5deg)}.maker .eyebrow{color:#ffa79f}.maker p:not(.eyebrow){max-width:650px;font-size:17px}.signature{font-family:Georgia,serif;font-style:italic;color:#ffa79f;font-size:24px!important;margin-bottom:0}.request{text-align:center;padding:85px 24px 80px;background:var(--red);color:white}.request .eyebrow{color:#fff1cf}.request h2{font-size:clamp(54px,6vw,78px)}.request>p:not(.eyebrow){max-width:560px;margin:25px auto}.button.light{background:var(--cream);color:var(--navy);border-color:var(--cream)}.button.light:hover{background:white}.request .handle{font-size:14px;margin:14px auto}.request .request-note{font-size:14px;max-width:430px;margin-bottom:0;color:#fff1cf}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:30px 5%;font-size:14px}footer span{font-family:Georgia,serif;font-weight:bold;letter-spacing:.07em}footer p{margin:0}@media(max-width:800px){header{flex-wrap:wrap;gap:20px}nav{width:100%;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px}.hero{grid-template-columns:1fr;gap:40px;padding-top:38px}.hero-copy{max-width:580px}h1{font-size:64px}.hero-photo{max-width:550px;width:100%;transform:none;margin:auto}.hero-photo img{height:560px}.side-note{display:none}.section-top{grid-template-columns:1fr}.section-top>p:last-child{margin-top:24px}.steps{gap:25px}.steps h3{font-size:22px}.shirt-story{gap:35px}.detail-photo{height:410px}.maker{grid-template-columns:170px 1fr;gap:35px}}@media(max-width:560px){body{font-size:17px}.brand{font-size:23px}.brand img{width:52px;height:52px}nav a{font-size:13px}nav .small{font-size:13px;padding:10px 12px}nav{gap:10px}.hero{padding:35px 6% 50px}h1{font-size:54px}.hero-photo img{height:470px}.eyebrow{font-size:11px;letter-spacing:.14em}.process{padding:50px 6%}.steps{grid-template-columns:1fr;gap:30px;margin-top:35px}.steps h3{font-size:25px}.shirt-story{grid-template-columns:1fr;padding:50px 6%}.detail-photo{height:350px;background-size:125% auto}.maker{grid-template-columns:1fr;gap:30px;padding:50px 6%}.maker img{width:160px}.request{padding:60px 6%}footer{flex-direction:column;gap:10px;text-align:center}.hero-photo figcaption{font-size:10px}.intro{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Full showcase compositions remain uncropped at every screen size. */
.hero-photo img{height:auto;object-fit:contain}.hero-photo{transform:none}.hero{grid-template-columns:1fr 1.08fr;gap:6%}.showcases{padding:70px 5% 80px;max-width:1400px;margin:auto;border-top:1px solid var(--line)}.gallery-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:end;margin-bottom:40px}.gallery-heading>p{font-size:17px;max-width:430px;margin:0}.showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px;align-items:start}.showcase-card{margin:0;background:#fffdf7;border:1px solid var(--line)}.showcase-card>a{display:block}.showcase-card img{display:block;width:100%;height:auto}.showcase-card figcaption{padding:19px 20px 23px}.showcase-card h3{font-size:25px}.showcase-card p{font-size:15px;line-height:1.65;margin:10px 0 12px}.showcase-card figcaption>a{font-size:14px;font-weight:bold}.showcase-card>a:hover{outline:3px solid var(--red);outline-offset:0}@media(max-width:800px){.hero{grid-template-columns:1fr}.gallery-heading{grid-template-columns:1fr;gap:24px}.showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.showcases{padding:50px 6%}.showcase-grid{grid-template-columns:1fr;gap:26px}.showcase-card figcaption{padding:18px}.gallery-heading>p{font-size:16px}}
