/* THIRSA. — a small fashion house, made with love. */
:root{--ink:#402043;--purple:#eee3f5;--pink:#fbe8ee;--gold:#b08336;--paper:#fffdfd;--muted:#6d5770;--serif:Georgia,'Times New Roman',serif;--sans:'Trebuchet MS',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;max-width:100%}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #90538e;outline-offset:5px}button{cursor:pointer}h1,h2,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.01;letter-spacing:-.055em}h2{font-size:clamp(3rem,5.8vw,6.3rem)}.header{padding:22px 5.5%;display:flex;justify-content:space-between;align-items:center;background:var(--purple)}.brand{font:clamp(2rem,3.5vw,3.3rem)/1.2 var(--serif);letter-spacing:.035em;white-space:nowrap}.brand span{font:1.1em var(--serif);color:var(--gold);display:inline-block;transform:rotate(-15deg);margin-left:7px}.header nav{display:flex;gap:38px;font-size:15px}.header nav a{border-bottom:1px solid transparent;padding:6px 0}.header nav a:hover{border-color:var(--ink)}.skip{position:absolute;top:-100px;left:15px;z-index:99;background:white;padding:10px}.skip:focus{top:10px}.hero{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:680px;padding:30px 5.5% 45px;background:radial-gradient(ellipse at 75% 60%,#f7f0fc 0%,transparent 55%),var(--purple);overflow:hidden}.hero-copy{align-self:center;z-index:2;padding-bottom:25px}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:600;line-height:1.8;margin-bottom:25px}.hero h1{font-size:clamp(4.5rem,8.2vw,8rem);max-width:670px}.hero-subtitle{font-size:clamp(1.1rem,2vw,1.65rem);margin:30px 0 24px}.button{border:1px solid var(--ink);border-radius:99px;background:var(--ink);color:white;padding:16px 27px;display:inline-flex;align-items:center;justify-content:center;gap:25px;font-size:16px;line-height:1.5;transition:transform .25s,background .25s,box-shadow .25s}.button:hover{transform:translateY(-3px);background:#623c64;box-shadow:0 9px 24px #40204320}.button span{font-size:23px;line-height:1}.button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.little-heart{display:inline-block;font-size:58px;color:var(--gold);transform:rotate(-15deg);margin-left:24px;vertical-align:middle}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;min-width:0}.hero-bag{height:620px;width:100%;object-fit:contain;filter:drop-shadow(10px 22px 12px #40204322);animation:float 7s ease-in-out infinite}.love-note{position:absolute;right:-5px;top:45px;z-index:3;background:#f8cedd;border-radius:46% 54% 45% 55%;font:italic 27px/1.05 var(--serif);text-align:center;padding:23px;transform:rotate(11deg)}.love-note span{font-size:40px}.hero-caption{position:absolute;bottom:4px;font-size:12px;letter-spacing:.08em;color:var(--muted)}.ribbon{display:flex;align-items:center;justify-content:space-evenly;background:#f8dce5;min-height:67px;padding:15px 25px;gap:20px}.ribbon p{font-size:12px;letter-spacing:.26em;text-align:center}.ribbon b{margin:0 28px;font-weight:400}.ribbon>span{color:var(--gold);font-size:32px;line-height:1}.details{display:grid;grid-template-columns:1.05fr 1fr;min-height:590px}.detail-photo{position:relative;border:0;padding:0;overflow:hidden;background:#d6bfdf;border-radius:0 0 22% 0;min-width:0}.detail-photo img{height:100%;width:100%;object-fit:cover;transition:transform .7s}.detail-photo:hover img{transform:scale(1.045)}.zoom-hint{position:absolute;bottom:25px;left:25px;background:#fffdfdeb;border-radius:99px;font-size:13px;padding:7px 16px}.section-copy{padding:75px 12%;position:relative;align-self:center}.section-copy>p:not(.eyebrow):not(.body-copy):not(.signature){font-size:23px;line-height:1.55}.gold-line{height:2px;width:52px;background:var(--gold);margin:30px 0}.body-copy{font-size:16px;line-height:1.8;color:var(--muted);margin-top:21px;max-width:450px}.hand-heart{position:absolute;right:9%;bottom:20px;font:74px/1 var(--serif);color:#e9a8bc;transform:rotate(-15deg)}.gallery{padding:70px 5.5% 85px}.gallery-heading{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:30px;gap:20px}.gallery-heading h2{font-size:clamp(2.5rem,4.3vw,4.5rem)}.gallery-heading p{color:var(--muted);font-size:15px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.gallery-grid button{padding:0;border:0;background:transparent;text-align:left;overflow:hidden}.gallery-grid img{width:100%;height:340px;object-fit:cover;border-radius:3px;transition:filter .3s}.gallery-grid button:hover img{filter:brightness(1.06)}.gallery-grid span{display:flex;justify-content:space-between;padding-top:12px;font-size:15px}.gallery-grid b{font-weight:400}.maker{display:grid;grid-template-columns:1fr 1fr;background:var(--pink);overflow:hidden}.portrait-wrap{align-self:stretch;min-width:0;position:relative;overflow:hidden}.portrait-wrap img{width:100%;height:100%;max-height:700px;object-fit:cover;object-position:center 30%}.maker .section-copy{padding-top:60px;padding-bottom:60px}.signature{margin-top:25px;font:italic 22px/1.6 var(--serif)}.signature span{display:block;font-size:34px}.contact{padding:90px 5.5%;display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact h2{font-size:clamp(3rem,4.7vw,5rem)}.gold-heart{display:inline-block;color:var(--gold);font-size:.7em;margin-left:18px;transform:rotate(-15deg)}.contact-heading>p:not(.eyebrow){margin-top:22px}.contact-heading .body-copy{max-width:350px}form{padding-top:10px;align-self:center}label{display:block;font-size:14px}input,textarea{display:block;width:100%;border:1px solid #d7c9da;border-radius:6px;padding:13px 15px;background:#fff;color:var(--ink);margin:8px 0 20px;min-width:0;font-size:16px}textarea{resize:vertical;min-height:135px}input::placeholder,textarea::placeholder{color:#938495}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center}.form-bottom p{font-size:12px;line-height:1.6;max-width:180px;color:var(--muted)}#form-status{font-size:14px;margin-top:16px;color:var(--muted)}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}footer{border-top:1px solid #eadfe9;padding:27px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:20px}footer .brand{font-size:30px}footer p,footer>a:last-child{font-size:13px}footer p span{color:var(--gold)}dialog{max-width:min(900px,94vw);max-height:94dvh;border:0;border-radius:10px;padding:40px 22px 18px;background:var(--paper);color:var(--ink);overflow:auto}dialog::backdrop{background:#241227d9;backdrop-filter:blur(6px)}dialog img{max-height:72dvh;max-width:100%;width:auto;margin:auto;object-fit:contain}dialog p{font-size:14px;margin-top:15px;text-align:center}.close-dialog{position:absolute;right:8px;top:3px;font-size:32px;background:transparent;border:0;width:40px;height:40px;line-height:1}.reveal{opacity:1}.motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s}.motion .reveal.visible{opacity:1;transform:translateY(0)}@keyframes float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(0deg)}}
@media(min-width:1600px){.header,.hero,.gallery,.contact,footer{padding-left:max(5.5%,calc((100vw - 1500px)/2));padding-right:max(5.5%,calc((100vw - 1500px)/2))}.hero{min-height:740px}.hero-bag{height:660px}}
@media(max-width:900px){.hero{min-height:560px}.hero h1{font-size:clamp(3.6rem,8.5vw,5.5rem)}.hero-bag{height:510px}.love-note{font-size:21px;padding:16px;top:55px}.eyebrow{font-size:11px;letter-spacing:.12em}.section-copy{padding:45px 9%}.section-copy>p:not(.eyebrow):not(.body-copy):not(.signature){font-size:20px}.details{min-height:520px}.gallery-grid img{height:280px}.contact{gap:35px}.form-row{grid-template-columns:1fr;gap:0}.form-bottom{align-items:flex-start;flex-direction:column}.ribbon b{margin:0 12px}.little-heart{display:none}.header nav{gap:22px}}
@media(max-width:600px){body{font-size:16px}.header{padding:20px 6% 12px;gap:15px}.brand{font-size:29px}.header nav{gap:17px;font-size:12px}.header nav a:nth-child(2){display:none}.hero{grid-template-columns:1fr;padding:25px 6% 26px;min-height:0}.hero-copy{padding:0}.eyebrow{margin-bottom:18px}.hero h1{font-size:clamp(3.6rem,13vw,5rem);max-width:420px}.hero-subtitle{font-size:18px;margin:22px 0}.button{padding:13px 22px;font-size:14px}.hero-art{height:400px;margin-top:8px}.hero-bag{height:385px;width:95%}.love-note{right:0;top:35px;font-size:21px;padding:15px}.hero-caption{font-size:11px;bottom:-3px}.ribbon{padding:17px 12px;min-height:60px;gap:8px}.ribbon p{font-size:10px;letter-spacing:.1em}.ribbon b{margin:0 5px}.ribbon>span{font-size:24px}.details{grid-template-columns:1fr}.detail-photo{height:360px;border-radius:0 0 15% 0}.section-copy{padding:45px 7% 60px}h2{font-size:3.5rem}.gold-line{margin:23px 0}.gallery{padding:5px 6% 45px}.gallery-heading{display:block;margin-bottom:23px}.gallery-heading p{margin-top:12px;font-size:14px}.gallery-grid{grid-template-columns:1fr 1fr;gap:20px 15px}.gallery-grid button:first-child{grid-column:1/-1}.gallery-grid button:first-child img{height:400px;object-position:center 60%}.gallery-grid img{height:230px}.gallery-grid span{font-size:13px;gap:7px}.maker{grid-template-columns:1fr}.portrait-wrap{height:400px}.portrait-wrap img{object-position:center 23%}.maker .section-copy{padding:40px 7% 50px}.contact{grid-template-columns:1fr;gap:30px;padding:50px 7%}.contact h2{font-size:3.2rem}.contact .body-copy{margin-top:12px}.form-row{grid-template-columns:1fr}.form-bottom{flex-direction:row;align-items:center}.form-bottom p{max-width:150px}.form-bottom .button{white-space:nowrap}footer{padding:25px 7%;flex-wrap:wrap}footer p{font-size:12px}footer>a:last-child{font-size:12px}.hand-heart{bottom:25px}dialog{padding-left:12px;padding-right:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion .reveal{opacity:1;transform:none}}
