/*
Theme Name: ALLTAG.design
Theme URI: https://alltagdesign.net
Author: ALLTAG.design
Description: ALLTAG.design オリジナルテーマ - パッケージデザイン・イラスト制作
Version: 1.0
Text Domain: alltag
*/

:root{
  --bg-hero:#D4C4AE;--white:#FFFFFF;--off:#FAF8F5;--bg:#F5F1EC;--line:#E8E2D9;
  --main:#4A6650;--main-dark:#364D3C;--main-pale:#EBF0EB;--main-light:#8FAF97;
  --accent:#B09060;--text:#2A2825;--mid:#6B6560;--light:#A09890;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--white);color:var(--text);font-family:'Noto Sans JP',sans-serif;font-weight:300;-webkit-font-smoothing:antialiased;overflow-x:hidden;}

/* NAV */
nav.site-nav{position:fixed;top:0;left:0;right:0;z-index:200;background:rgba(212,196,174,0.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(140,122,100,0.18);padding:0 48px;height:60px;display:flex;align-items:center;justify-content:space-between;}
.nav-logo{font-family:'Cormorant Garamond',serif;font-size:1.05rem;letter-spacing:0.22em;color:var(--text);text-decoration:none;text-transform:uppercase;}
.nav-links{display:flex;gap:24px;list-style:none;}
.nav-links a{font-family:'Cormorant Garamond',serif;font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--mid);text-decoration:none;transition:color 0.2s;}
.nav-links a:hover{color:var(--text);}
.nav-cta{font-family:'Cormorant Garamond',serif;font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--white);background:var(--main);padding:8px 18px;text-decoration:none;transition:opacity 0.2s;}
.nav-cta:hover{opacity:0.82;}
.hamburger{display:none;background:none;border:none;cursor:pointer;padding:4px;}
.hamburger span{display:block;width:20px;height:1.5px;background:var(--text);margin:4px 0;transition:0.3s;}

/* HERO */
.hero{min-height:100vh;padding-top:60px;padding-bottom:120px;background:var(--bg-hero);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.ill{position:absolute;pointer-events:none;z-index:1;opacity:0.88;}
.ill img{display:block;width:100%;height:auto;}
.ill-coffee{width:88px;top:3%;left:0%;animation:flt1 19s ease-in-out infinite 0s;}
.ill-hand{width:125px;top:19%;left:5%;animation:flt2 22s ease-in-out infinite 3.2s;}
.ill-balloon{width:88px;top:38%;left:0%;animation:flt3 20s ease-in-out infinite 1.5s;}
.ill-bird3{width:128px;top:56%;left:4%;animation:flt1 18s ease-in-out infinite 5.5s;}
.ill-hands{width:122px;top:64%;left:0%;animation:flt2 24s ease-in-out infinite 2s;}
.ill-spray{width:118px;top:78%;left:5%;animation:flt3 21s ease-in-out infinite 7s;}
.ill-dog{width:118px;top:88%;left:0%;animation:flt1 17s ease-in-out infinite 4s;}
.ill-fruit{width:120px;top:3%;right:0%;animation:flt2 20s ease-in-out infinite 0.7s;}
.ill-bird{width:118px;top:17%;right:5%;animation:flt3 23s ease-in-out infinite 4.5s;}
.ill-bird2{width:125px;top:34%;right:0%;animation:flt1 19s ease-in-out infinite 2.5s;}
.ill-lemon{width:88px;top:51%;right:4%;animation:flt2 22s ease-in-out infinite 6s;}
.ill-horse{width:126px;top:66%;right:0%;animation:flt3 25s ease-in-out infinite 1s;}
.ill-sheep{width:120px;top:80%;right:5%;animation:flt1 18s ease-in-out infinite 3.8s;}
.ill-hand2{width:88px;top:87%;right:0%;animation:flt2 21s ease-in-out infinite 5s;}

@keyframes flt1{
  0%{transform:translate(0,0) rotate(-2deg);}
  20%{transform:translate(10px,-14px) rotate(3.5deg);}
  45%{transform:translate(-8px,9px) rotate(-1deg);}
  70%{transform:translate(12px,4px) rotate(2.5deg);}
  100%{transform:translate(0,0) rotate(-2deg);}
}
@keyframes flt2{
  0%{transform:translate(0,0) rotate(2.5deg);}
  25%{transform:translate(-12px,-6px) rotate(-2.5deg);}
  55%{transform:translate(8px,12px) rotate(1.5deg);}
  80%{transform:translate(-4px,-9px) rotate(-1deg);}
  100%{transform:translate(0,0) rotate(2.5deg);}
}
@keyframes flt3{
  0%{transform:translate(0,0) rotate(1deg);}
  30%{transform:translate(10px,12px) rotate(-3.5deg);}
  60%{transform:translate(-11px,-4px) rotate(1.5deg);}
  85%{transform:translate(6px,-8px) rotate(-1.5deg);}
  100%{transform:translate(0,0) rotate(1deg);}
}

.hero-card{position:relative;z-index:2;width:min(600px,70vw);height:min(420px,48vw);border-radius:24px;overflow:hidden;box-shadow:0 24px 64px rgba(60,48,32,0.22);flex-shrink:0;}
.card-slider{display:flex;width:100%;height:100%;transition:transform 1s cubic-bezier(0.77,0,0.175,1);will-change:transform;}
.card-slide{min-width:100%;width:100%;height:100%;flex-shrink:0;overflow:hidden;}
.card-slide img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 7s ease-out;transform:scale(1.04);}
.card-slide.active img{transform:scale(1);}
.card-dots{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:7px;z-index:20;}
.cdot{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,0.4);cursor:pointer;border:none;padding:0;transition:all 0.3s;}
.cdot.active{background:rgba(255,255,255,0.92);transform:scale(1.3);}

.hero-text{position:relative;z-index:2;text-align:center;margin-top:24px;padding:0 20px;animation:fadeUp 0.9s ease-out 0.3s both;}
.hero-brand{font-family:'Cormorant Garamond',serif;font-size:clamp(2.2rem,5vw,4rem);letter-spacing:0.28em;text-transform:uppercase;color:#fff;text-shadow:0 2px 20px rgba(80,60,40,0.22);margin-bottom:10px;line-height:1;}
.hero-catch{font-family:'Shippori Mincho',serif;font-size:clamp(1rem,2vw,1.4rem);line-height:1.7;color:rgba(50,38,28,0.88);letter-spacing:0.05em;margin-bottom:5px;}
.hero-catch .cross{font-family:'Cormorant Garamond',serif;font-weight:300;color:var(--accent);}
.hero-sub{font-size:clamp(0.78rem,1.2vw,0.92rem);letter-spacing:0.1em;color:rgba(60,48,35,0.58);margin-bottom:20px;line-height:1.9;}
.hero-btn{display:inline-block;font-family:'Cormorant Garamond',serif;font-size:0.75rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--text);border:1px solid rgba(80,70,55,0.38);padding:10px 26px;text-decoration:none;background:rgba(255,255,255,0.3);backdrop-filter:blur(4px);transition:all 0.25s;}
.hero-btn:hover{background:rgba(255,255,255,0.58);border-color:var(--text);}

/* STATS */
.stats{background:var(--main-dark);display:grid;grid-template-columns:repeat(4,1fr);}
.stat{text-align:center;padding:36px 16px;border-right:1px solid rgba(255,255,255,0.1);opacity:0;transform:translateY(12px);transition:opacity 0.6s,transform 0.6s;display:flex;flex-direction:column;align-items:center;}
.stat:last-child{border-right:none;}
.stat.visible{opacity:1;transform:translateY(0);}
.stat:nth-child(2){transition-delay:0.1s;}.stat:nth-child(3){transition-delay:0.2s;}.stat:nth-child(4){transition-delay:0.3s;}
.stat-n{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-weight:300;color:white;line-height:1;display:block;margin-bottom:8px;}
.stat-n sup{font-size:1.1rem;vertical-align:super;}
.stat-n.sm{font-family:'Cormorant Garamond',serif;font-size:1.55rem;line-height:1;display:block;margin-bottom:8px;padding-top:calc(2.8rem - 1.55rem);}
.stat-n.jp{font-family:'Cormorant Garamond',serif;font-size:1.35rem;line-height:1;display:block;margin-bottom:8px;padding-top:calc(2.8rem - 1.35rem);}
.stat-lm{font-family:'Shippori Mincho',serif;font-size:0.78rem;color:rgba(255,255,255,0.88);display:block;margin-bottom:4px;}
.stat-ls{font-size:0.58rem;color:rgba(255,255,255,0.45);display:block;line-height:1.7;white-space:nowrap;}

/* ABOUT */
.about-hero{background:var(--off);padding:88px 56px;}
.about-hero-inner{max-width:760px;margin:0 auto;}
.about-tagline{font-family:'Shippori Mincho',serif;font-size:clamp(1.3rem,2.5vw,2rem);font-weight:600;color:var(--main-dark);line-height:1.75;letter-spacing:0.04em;margin-bottom:28px;border-left:3px solid var(--accent);padding-left:24px;}
.about-body{font-size:0.84rem;line-height:2.3;color:var(--mid);font-weight:500;margin-bottom:28px;padding-left:27px;}
.about-pills{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px;padding-left:27px;}
.pill{font-family:'Cormorant Garamond',serif;font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--main-dark);border:1px solid var(--main-light);padding:6px 16px;}
.about-link{font-family:'Cormorant Garamond',serif;font-size:0.75rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--main);text-decoration:none;border-bottom:1px solid var(--main-light);padding-bottom:2px;margin-left:27px;display:inline-block;}

/* SECTION HEADS */
.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px;}
.sec-label{display:flex;align-items:center;gap:14px;}
.sec-en{font-family:'Cormorant Garamond',serif;font-size:0.65rem;letter-spacing:0.32em;text-transform:uppercase;color:var(--light);}
.sec-rule{width:32px;height:1px;background:var(--line);display:inline-block;}
.sec-ja{font-family:'Shippori Mincho',serif;font-size:1.4rem;color:var(--main-dark);margin-top:4px;font-weight:600;}
.link-more{font-family:'Cormorant Garamond',serif;font-size:0.72rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--mid);text-decoration:none;display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--line);padding-bottom:2px;transition:all 0.2s;}
.link-more::after{content:'→';}
.link-more:hover{color:var(--main);border-color:var(--main);}

/* WORKS */
.works{padding:88px 56px;background:var(--white);}
.works-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.work-item{opacity:0;transform:translateY(18px);transition:opacity 0.6s,transform 0.6s;}
.work-item.visible{opacity:1;transform:translateY(0);}
.work-item:nth-child(2){transition-delay:0.08s;}.work-item:nth-child(3){transition-delay:0.16s;}.work-item:nth-child(4){transition-delay:0.24s;}
.work-item a{text-decoration:none;color:inherit;}
.work-thumb{aspect-ratio:3/4;overflow:hidden;background:var(--bg);margin-bottom:9px;}
.work-thumb img{width:100%;height:100%;object-fit:cover;transition:transform 0.55s ease;display:block;}
.work-thumb:hover img{transform:scale(1.06);}
.work-name{font-family:'Shippori Mincho',serif;font-size:0.74rem;color:var(--text);margin-bottom:3px;}
.work-type{font-family:'Cormorant Garamond',serif;font-size:0.63rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--light);}

/* SERVICES */
.services{padding:88px 56px;background:var(--bg);}
.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:48px;}
.svc-block{background:var(--white);padding:44px 44px;display:flex;gap:28px;align-items:flex-start;}
.svc-icon{flex-shrink:0;width:100px;display:flex;align-items:center;justify-content:center;min-height:80px;}
.svc-icon img{max-width:100px;max-height:100px;object-fit:contain;display:block;}
.svc-ttl{font-family:'Shippori Mincho',serif;font-size:1.05rem;color:var(--main-dark);margin-bottom:14px;}
.svc-list{font-size:0.78rem;line-height:2.1;color:var(--mid);list-style:none;}
.svc-list li::before{content:'— ';color:var(--main-light);}

/* PRICE */
.price{padding:88px 56px;background:var(--white);}
.price-intro{font-size:0.83rem;line-height:2.1;color:var(--mid);max-width:560px;margin-top:20px;margin-bottom:48px;}
.price-table{width:100%;border-collapse:collapse;margin-bottom:32px;}
.price-table th{font-family:'Shippori Mincho',serif;font-size:0.78rem;color:var(--main-dark);text-align:left;padding:14px 20px;background:var(--main-pale);border-bottom:2px solid var(--main-light);}
.price-table td{font-size:0.78rem;line-height:1.9;color:var(--mid);padding:14px 20px;border-bottom:1px solid var(--line);vertical-align:top;}
.price-table td.price-num{font-family:'Cormorant Garamond',serif;font-size:1.15rem;color:var(--main-dark);white-space:nowrap;}
.price-examples{background:var(--bg);padding:36px 40px;}
.price-ex-ttl{font-family:'Shippori Mincho',serif;font-size:0.86rem;color:var(--main-dark);margin-bottom:22px;}
.price-ex{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.price-ex-card{background:var(--white);padding:28px;}
.price-ex-label{font-family:'Cormorant Garamond',serif;font-size:2.6rem;font-weight:300;color:transparent;-webkit-text-stroke:1px var(--main-light);display:block;line-height:1;margin-bottom:16px;letter-spacing:0.05em;}
.price-ex-body{font-size:0.76rem;line-height:2.1;color:var(--mid);}
.price-ex-total{font-family:'Shippori Mincho',serif;font-size:0.9rem;color:var(--main-dark);margin-top:12px;padding-top:12px;border-top:1px solid var(--line);}
.price-note{font-size:0.7rem;color:var(--light);margin-top:18px;line-height:1.9;}

/* FLOW */
.flow{padding:88px 56px;background:var(--bg);}
.flow-timeline{margin-top:40px;display:flex;flex-direction:column;gap:0;}
.flow-tl-item{display:flex;gap:16px;align-items:flex-start;opacity:0;transform:translateY(10px);transition:opacity 0.5s,transform 0.5s;}
.flow-tl-item.visible{opacity:1;transform:translateY(0);}
.flow-tl-item:nth-child(2){transition-delay:0.08s;}
.flow-tl-item:nth-child(3){transition-delay:0.16s;}
.flow-tl-item:nth-child(4){transition-delay:0.24s;}
.flow-tl-item:nth-child(5){transition-delay:0.32s;}
.flow-tl-item:nth-child(6){transition-delay:0.40s;}
.flow-tl-line-col{display:flex;flex-direction:column;align-items:center;width:20px;flex-shrink:0;padding-top:2px;}
.flow-tl-dot{width:7px;height:7px;border-radius:50%;background:var(--main);flex-shrink:0;}
.flow-tl-line{width:1px;background:var(--main-light);flex-grow:1;min-height:36px;opacity:0.4;margin-top:4px;}
.flow-tl-item:last-child .flow-tl-line{display:none;}
.flow-tl-content{padding-bottom:24px;}
.flow-tl-num{font-family:'Cormorant Garamond',serif;font-size:1.05rem;letter-spacing:0.28em;color:var(--main);margin-bottom:5px;display:block;font-weight:600;}
.flow-tl-name{font-family:'Shippori Mincho',serif;font-size:0.95rem;color:var(--main-dark);margin-bottom:4px;}
.flow-tl-desc{font-size:0.71rem;line-height:1.85;color:var(--mid);}

/* BLOG */
.blog{padding:88px 56px;background:var(--off);}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;}
.blog-card{background:var(--white);opacity:0;transform:translateY(18px);transition:opacity 0.6s,transform 0.6s;text-decoration:none;color:inherit;display:block;}
.blog-card.visible{opacity:1;transform:translateY(0);}
.blog-card:nth-child(2){transition-delay:0.1s;}.blog-card:nth-child(3){transition-delay:0.2s;}
.blog-card:hover .blog-thumb img{transform:scale(1.05);}
.blog-thumb{aspect-ratio:16/9;overflow:hidden;background:var(--bg);}
.blog-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.5s ease;}
.blog-body{padding:20px 22px 24px;}
.blog-tag{font-family:'Cormorant Garamond',serif;font-size:0.62rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--main);display:block;margin-bottom:6px;}
.blog-date{font-family:'Cormorant Garamond',serif;font-size:0.62rem;color:var(--light);display:inline;margin-left:4px;}
.blog-new{display:inline-block;font-size:0.58rem;letter-spacing:0.12em;text-transform:uppercase;background:var(--accent);color:white;padding:2px 7px;margin-right:6px;vertical-align:middle;position:relative;top:-1px;}
.blog-title{font-family:'Shippori Mincho',serif;font-size:0.9rem;color:var(--main-dark);line-height:1.8;margin:10px 0;}
.blog-excerpt{font-size:0.74rem;line-height:1.95;color:var(--mid);margin-bottom:14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.blog-more{font-family:'Cormorant Garamond',serif;font-size:0.68rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--main);display:inline-flex;align-items:center;gap:6px;}
.blog-more::after{content:'→';}

/* VOICE */
.voice{padding:88px 56px;background:var(--white);}
.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px;}
.voice-card{background:var(--off);border-radius:16px 16px 16px 4px;padding:28px 24px;opacity:0;transform:translateY(18px);transition:opacity 0.6s,transform 0.6s;}
.voice-card.visible{opacity:1;transform:translateY(0);}
.voice-stars{color:var(--accent);font-size:0.72rem;letter-spacing:2px;margin-bottom:12px;}
.voice-text{font-family:'Shippori Mincho',serif;font-size:0.82rem;line-height:1.95;color:var(--main-dark);margin-bottom:14px;}
.voice-text::before{content:'「';color:var(--main-light);font-family:'Cormorant Garamond',serif;font-size:1.3rem;line-height:0;vertical-align:-0.3em;}
.voice-text::after{content:'」';color:var(--main-light);font-family:'Cormorant Garamond',serif;font-size:1.3rem;line-height:0;vertical-align:-0.3em;}
.voice-from{font-family:'Cormorant Garamond',serif;font-size:0.66rem;letter-spacing:0.18em;color:var(--light);}
.voice-card.featured{grid-column:1/-1;background:var(--main-pale);border-radius:20px;padding:36px 40px;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;}
.voice-card.featured .voice-text{font-size:0.95rem;line-height:2;margin-bottom:0;}
.voice-card.featured .voice-meta{text-align:right;flex-shrink:0;}

/* DIRECT */
.direct{background:var(--main-pale);padding:40px 56px;display:flex;align-items:center;justify-content:space-between;gap:36px;}
.direct-text{font-family:'Shippori Mincho',serif;font-size:0.84rem;line-height:2.1;color:var(--text);}
.direct-text strong{color:var(--main-dark);font-weight:500;}

/* CONTACT */
.contact{padding:64px 56px;background:var(--white);text-align:center;}
.contact-label{display:flex;align-items:center;gap:14px;justify-content:center;margin-bottom:14px;}
.contact-tagline{font-family:'Shippori Mincho',serif;font-weight:400;font-size:clamp(1.05rem,2vw,1.45rem);line-height:1.85;color:var(--main-dark);margin-bottom:14px;}
.contact-sub{font-size:0.82rem;line-height:2.2;color:var(--mid);margin-bottom:32px;}
.contact-chips{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-bottom:36px;}
.chip{font-size:0.74rem;color:var(--mid);background:var(--bg);border:1px solid var(--line);padding:7px 15px;border-radius:999px;}
.contact-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:14px;}
.btn-main{font-size:0.78rem;letter-spacing:0.13em;color:white;background:var(--main);padding:14px 34px;text-decoration:none;border:1px solid var(--main);font-family:'Noto Sans JP',sans-serif;font-weight:300;transition:all 0.25s;border-radius:2px;}
.btn-main:hover{background:var(--main-dark);}
.btn-ghost{font-size:0.76rem;color:var(--mid);background:transparent;padding:14px 26px;text-decoration:none;border:1px solid var(--line);font-family:'Noto Sans JP',sans-serif;transition:all 0.25s;border-radius:2px;}
.btn-ghost:hover{border-color:var(--mid);color:var(--text);}
.contact-note{font-size:0.7rem;color:var(--light);}

/* FOOTER */
footer.site-footer{background:var(--text);padding:32px 56px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;}
.ft-logo{font-family:'Cormorant Garamond',serif;font-size:1rem;letter-spacing:0.24em;text-transform:uppercase;color:rgba(255,255,255,0.7);text-decoration:none;}
.ft-links{display:flex;gap:20px;list-style:none;}
.ft-links a{font-family:'Cormorant Garamond',serif;font-size:0.66rem;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.3);text-decoration:none;transition:color 0.2s;}
.ft-links a:hover{color:rgba(255,255,255,0.7);}
.ft-copy{font-size:0.62rem;color:rgba(255,255,255,0.2);}

/* BLOG ARCHIVE */
.blog-archive{padding:120px 56px 88px;background:var(--white);min-height:80vh;}
.blog-archive-title{font-family:'Shippori Mincho',serif;font-size:1.4rem;color:var(--main-dark);font-weight:600;margin-bottom:40px;}
.blog-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}

/* SINGLE POST */
.single-post-wrap{padding:120px 56px 88px;max-width:800px;margin:0 auto;}
.single-post-thumb{width:100%;max-width:720px;aspect-ratio:3/2;overflow:hidden;border-radius:4px;margin-bottom:20px;}
.single-post-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.single-post-meta{font-family:'Cormorant Garamond',serif;font-size:0.62rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--light);margin-bottom:20px;}
.single-post-title{font-family:'Shippori Mincho',serif;font-size:1.4rem;color:var(--main-dark);line-height:1.8;margin-bottom:32px;letter-spacing:0;}
.single-post-content{font-size:0.88rem;line-height:2.2;color:var(--mid);}
.single-post-content h2{font-family:'Shippori Mincho',serif;font-size:1.1rem;color:var(--main-dark);border-left:2px solid var(--main-light);padding-left:16px;margin:40px 0 20px;font-weight:500;}
.single-post-content p{margin-bottom:24px;}
.post-nav{display:flex;justify-content:space-between;margin-top:48px;padding-top:24px;border-top:1px solid var(--line);}
.post-nav a{font-family:'Cormorant Garamond',serif;font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--mid);text-decoration:none;}
.post-nav a:hover{text-decoration:underline;}

/* WORKS ARCHIVE */
.works-archive{padding:120px 56px 88px;background:var(--white);min-height:80vh;}
.works-archive-title{font-family:'Shippori Mincho',serif;font-size:1.4rem;color:var(--main-dark);font-weight:600;margin-bottom:40px;}
.works-filter{display:flex;gap:12px;margin-bottom:40px;flex-wrap:wrap;}
.works-filter-btn{font-family:'Cormorant Garamond',serif;font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--mid);background:none;border:1px solid var(--line);padding:8px 18px;cursor:pointer;transition:all 0.2s;text-decoration:none;}
.works-filter-btn:hover,.works-filter-btn.active{color:var(--main);border-color:var(--main);}

/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);}}
.reveal{opacity:0;transform:translateY(20px);transition:opacity 0.7s,transform 0.7s;}
.reveal.visible{opacity:1;transform:translateY(0);}
.rd1{transition-delay:0.1s;}.rd2{transition-delay:0.2s;}

/* RESPONSIVE */
@media(max-width:960px){
  nav.site-nav{padding:0 18px;}
  .nav-links{display:none;}
  .hamburger{display:block;}
  .hero-card{width:82vw;height:auto;aspect-ratio:4/3;}
  .ill{opacity:0.5;}
  .stats{grid-template-columns:repeat(2,1fr);}.stat{border-right:none;border-bottom:1px solid rgba(255,255,255,0.1);}
  .about-hero{padding:64px 24px;}
  .works{padding:64px 24px;}.works-grid{grid-template-columns:1fr 1fr;}
  .services{padding:64px 24px;}.services-grid{grid-template-columns:1fr;}
  .price{padding:64px 24px;}.price-ex{grid-template-columns:1fr;}
  .flow{padding:64px 24px;}
  .blog{padding:64px 24px;}.blog-grid{grid-template-columns:1fr;}
  .voice{padding:64px 24px;}.voice-grid{grid-template-columns:1fr;}.voice-card.featured{grid-column:1;display:block;}
  .direct{flex-direction:column;padding:36px 24px;}
  .contact{padding:72px 24px;}
  footer.site-footer{padding:28px 24px;flex-direction:column;text-align:center;}
  .blog-archive{padding:100px 24px 64px;}
  .blog-list{grid-template-columns:1fr;}
  .single-post-wrap{padding:100px 24px 64px;}
  .works-archive{padding:100px 24px 64px;}
}
@media(max-width:600px){
  .hero-card{width:90vw;height:auto;aspect-ratio:3/2;}
  .works-grid{grid-template-columns:1fr 1fr;}
  .about-tagline{font-size:1.3rem;padding-left:16px;}
  .about-body{padding-left:19px;}
  .about-pills{padding-left:19px;}
  .about-link{margin-left:19px;}
  .svc-block{padding:28px 20px;gap:16px;}
  .voice-card.featured{display:block;}
}
