/* =========================================================================
   Padmawati Handicrafts — main stylesheet
   Palette drawn from the brand logo: wine-maroon, antique gold, warm cream,
   espresso brown. Typography: Axiforma.
   ========================================================================= */

:root {
	--ph-wine:        #6E1E2A;
	--ph-wine-dark:   #4A1019;
	--ph-gold:        #C2A14D;
	--ph-gold-light:  #D8BC72;
	--ph-gold-dark:   #9C7C30;
	--ph-cream:       #F7F2E9;
	--ph-cream-2:     #FBF8F2;
	--ph-bg:          #FFFFFF;
	--ph-espresso:    #2E1A12;
	--ph-ink:         #2B211C;
	--ph-muted:       #6b5d54;
	--ph-line:        #f5f3f1;
	--ph-wa:          #25D366;
	--ph-white:       #ffffff;

	--ph-radius:      14px;
	--ph-radius-sm:   8px;
	--ph-shadow:      0 8px 30px rgba(46, 26, 18, .10);
	--ph-shadow-lg:   0 18px 50px rgba(46, 26, 18, .18);
	--ph-container:   1350px;
	--ph-font:        'Axiforma', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	--ph-ease:        cubic-bezier(.22, .61, .36, 1);
}

/* ---------- Reset / base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
	margin: 0;
	font-family: var(--ph-font);
	font-weight: 400;
	color: var(--ph-ink);
	background: var(--ph-bg);
	line-height: 1.6;
	font-size: 16px;
	-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--ph-wine); text-decoration: none; transition: color .2s var(--ph-ease); }
a:hover { color: var(--ph-gold-dark); }
h1, h2, h3, h4 { font-weight: 600; line-height: 1.2; color: var(--ph-espresso); margin: 0 0 .5em; }
p { margin: 0 0 1em; }
button { font-family: inherit; cursor: pointer; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); }

.ph-container { max-width: var(--ph-container); margin: 0 auto; padding: 0 24px; }

.ph-skip { position: absolute; left: -999px; top: 0; background: var(--ph-wine); color: #fff; padding: 10px 16px; z-index: 2000; }
.ph-skip:focus { left: 8px; top: 8px; color:#fff; }

/* ---------- Buttons ---------- */
.ph-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 12px 24px; border: 0; border-radius: 8px;
	font-weight: 600; font-size: .95rem; letter-spacing: .2px;
	cursor: pointer; transition: transform .18s var(--ph-ease), box-shadow .2s, background .2s, color .2s;
	line-height: 1; text-align: center;
}
.ph-btn:hover { transform: translateY(-2px); }
.ph-btn--gold { background: linear-gradient(135deg, var(--ph-gold-light), var(--ph-gold)); color: var(--ph-espresso); box-shadow: 0 6px 18px rgba(194,161,77,.35); }
.ph-btn--gold:hover { color: var(--ph-espresso); box-shadow: 0 10px 26px rgba(194,161,77,.45); }
.ph-btn--wine { background: var(--ph-wine); color: #fff; }
.ph-btn--wine:hover { background: var(--ph-wine-dark); color:#fff; }
.ph-btn--wa { background: var(--ph-wa); color: #fff; }
.ph-btn--wa:hover { background: #1da851; color:#fff; }
.ph-btn--outline { background: transparent; color: var(--ph-wine); box-shadow: inset 0 0 0 2px var(--ph-wine); }
.ph-btn--outline:hover { background: var(--ph-wine); color: #fff; }
.ph-btn--block { width: 100%; }
.ph-btn--sm { padding: 9px 16px; font-size: .85rem; }
.ph-btn--lg { padding: 15px 32px; font-size: 1.05rem; }

/* ---------- Header ---------- */
.ph-header { position: sticky; top: 0; z-index: 900; background: rgba(251,248,242,.92); backdrop-filter: saturate(140%) blur(10px); border-bottom: 1px solid var(--ph-line); }
.ph-header__inner { display: flex; align-items: center; gap: 24px; min-height: 78px; }
.ph-header__brand img, .ph-header__brand .custom-logo { max-height: 56px; width: auto; }
.ph-brand-text { display: flex; align-items: center; gap: 10px; }
.ph-brand-mark { display:inline-flex; align-items:center; justify-content:center; width:42px;height:42px;border-radius:10px;background:var(--ph-wine);color:var(--ph-gold-light);font-weight:700; }
.ph-brand-name { font-weight: 700; color: var(--ph-wine); letter-spacing: .5px; }
.ph-nav { margin-left: auto; }
.ph-menu { display: flex; gap: 28px; list-style: none; margin: 0; padding: 0; }
.ph-menu a { color: var(--ph-ink); font-weight: 500; position: relative; padding: 6px 0; }
.ph-menu a::after { content:""; position:absolute; left:0; bottom:0; height:2px; width:0; background: var(--ph-gold); transition: width .25s var(--ph-ease); }
.ph-menu a:hover::after, .ph-menu .current-menu-item > a::after { width: 100%; }
.ph-menu .sub-menu { display:none; position:absolute; background:#fff; box-shadow: var(--ph-shadow); border-radius: var(--ph-radius-sm); padding: 8px; min-width: 200px; }
.ph-menu li { position: relative; }
.ph-menu li:hover > .sub-menu { display: block; }
.ph-menu .sub-menu li { display:block; }
.ph-menu .sub-menu a { display:block; padding: 8px 12px; }
.ph-header__cta { display: flex; align-items: center; gap: 12px; }
.ph-header__cta .ph-btn span { white-space: nowrap; }

.ph-burger { display: none; flex-direction: column; gap: 5px; background: none; border: 0; padding: 8px; }
.ph-burger span { width: 24px; height: 2px; background: var(--ph-wine); transition: .3s; }

/* ---------- Hero slider ---------- */
.ph-hero { position: relative; overflow: hidden; background: var(--ph-wine-dark); }
.ph-hero__track { position: relative; }
.ph-slide { position: absolute; inset: 0; opacity: 0; transition: opacity .8s var(--ph-ease); }
.ph-slide.is-active { position: relative; opacity: 1; }
.ph-slide__img { width: 100%; height: clamp(380px, 56vw, 760px); object-fit: cover; }
.ph-slide__overlay { position: absolute; inset: 0; display: flex; align-items: center; background: linear-gradient(90deg, rgba(46,16,25,.78) 0%, rgba(46,16,25,.35) 55%, rgba(46,16,25,.05) 100%); }
.ph-slide__content { max-width: 620px; color: #fff; }
.ph-slide__title { color: #fff; font-size: clamp(2rem, 4.5vw, 3.4rem); margin-bottom: .3em; text-shadow: 0 2px 18px rgba(0,0,0,.3); }
.ph-slide__text { color: rgba(255,255,255,.92); font-size: clamp(1rem, 1.6vw, 1.25rem); margin-bottom: 1.4em; }
.ph-slide--placeholder { background: radial-gradient(circle at 30% 30%, var(--ph-wine), var(--ph-wine-dark)); min-height: clamp(380px, 56vw, 620px); display: flex; align-items: center; }
.ph-slide--placeholder .ph-slide__overlay { position: relative; background: none; }

.ph-hero__nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 5; width: 50px; height: 50px; border-radius: 50%; border: 0; background: rgba(255,255,255,.85); color: var(--ph-wine); font-size: 1.6rem; line-height: 1; display: grid; place-items: center; transition: .2s; }
.ph-hero__nav:hover { background: #fff; transform: translateY(-50%) scale(1.08); }
.ph-hero__prev { left: 18px; }
.ph-hero__next { right: 18px; }
.ph-hero__dots { position: absolute; bottom: 18px; left: 50%; transform: translateX(-50%); display: flex; gap: 10px; z-index: 5; }
.ph-hero__dots button { width: 11px; height: 11px; border-radius: 50%; border: 0; background: rgba(255,255,255,.5); cursor: pointer; transition: .2s; padding:0; }
.ph-hero__dots button.is-active { background: var(--ph-gold-light); width: 28px; border-radius: 6px; }

/* ---------- Trust strip ---------- */
.ph-trust { background: var(--ph-wine); color: #fff; }
.ph-trust__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; padding: 26px 24px; }
.ph-trust__item { display: flex; align-items: center; gap: 14px; }
.ph-trust__icon { display:grid; place-items:center; width: 46px; height: 46px; border-radius: 50%; background: rgba(255,255,255,.12); color: var(--ph-gold-light); font-size: 1.2rem; flex: none; }
.ph-trust__item strong { display: block; color:#fff; font-size: .98rem; }
.ph-trust__item span { color: rgba(255,255,255,.75); font-size: .82rem; }

/* ---------- Sections ---------- */
.ph-section { padding: 72px 0; }
.ph-section--alt { background: var(--ph-cream); }
.ph-section__head { text-align: center; margin-bottom: 44px; }
.ph-eyebrow { display:inline-block; text-transform: uppercase; letter-spacing: 3px; font-size: .75rem; font-weight: 600; color: var(--ph-gold-dark); margin-bottom: 8px; }
.ph-section__title { font-size: clamp(1.7rem, 3vw, 2.4rem); position: relative; display: inline-block; }
.ph-section__title::after { content:""; display:block; width: 60px; height: 3px; background: linear-gradient(90deg, var(--ph-gold), var(--ph-gold-light)); margin: 14px auto 0; border-radius: 2px; }
.ph-section__cta { text-align: center; margin-top: 44px; }

/* ---------- Category grid ---------- */
.ph-cat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ph-cat-card { position: relative; border-radius: var(--ph-radius); overflow: hidden; aspect-ratio: 4/3; background: var(--ph-wine); box-shadow: var(--ph-shadow); }
.ph-cat-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--ph-ease); }
.ph-cat-card:hover img { transform: scale(1.07); }
.ph-cat-card__label { position: absolute; inset: auto 0 0 0; padding: 28px 18px 16px; color: #fff; font-weight: 600; font-size: 1.15rem; background: linear-gradient(transparent, rgba(46,16,25,.85)); }
.ph-cat-card__label em { display: block; font-style: normal; font-weight: 400; font-size: .82rem; opacity: .85; margin-top: 2px; }

/* ---------- Product grid & cards ---------- */
.ph-product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; }
.ph-card { background: #fff; border: 1px solid var(--ph-line); border-radius: var(--ph-radius); overflow: hidden; display: flex; flex-direction: column; transition: transform .25s var(--ph-ease), box-shadow .25s; }
.ph-card:hover { transform: translateY(-6px); box-shadow: var(--ph-shadow-lg); }
.ph-card__media { position: relative; display: block; aspect-ratio: 1/1; background: var(--ph-cream); overflow: hidden; }
.ph-card__img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--ph-ease); }
.ph-card:hover .ph-card__img { transform: scale(1.06); }
.ph-card__noimg { position:absolute; inset:0; display:grid; place-items:center; font-weight:700; font-size: 2rem; color: var(--ph-gold); background: var(--ph-cream); }
.ph-card__code { position: absolute; top: 12px; left: 12px; background: var(--ph-wine); color: var(--ph-gold-light); font-size: .72rem; font-weight: 600; padding: 5px 10px; border-radius: 6px; letter-spacing: .5px; }
.ph-card__body { padding: 18px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.ph-card__title { font-size: 1.05rem; margin: 0; }
.ph-card__title a { color: var(--ph-espresso); }
.ph-card__title a:hover { color: var(--ph-wine); }
.ph-card__excerpt { color: var(--ph-muted); font-size: .88rem; margin: 0; }
.ph-card__price { font-weight: 700; color: var(--ph-wine); margin: 0; }
.ph-card__price span { font-weight: 400; color: var(--ph-muted); font-size: .8rem; }
.ph-card .ph-btn { margin-top: auto; }

/* ---------- CTA band ---------- */
.ph-cta-band { background: linear-gradient(120deg, var(--ph-wine), var(--ph-wine-dark)); color: #fff; }
.ph-cta-band__inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 54px 24px; flex-wrap: wrap; }
.ph-cta-band h2 { color: #fff; margin-bottom: .2em; }
.ph-cta-band p { color: rgba(255,255,255,.85); margin: 0; }
.ph-cta-band__actions { display: flex; gap: 14px; flex-wrap: wrap; }

/* =========================================================================
   HOMEPAGE (bespoke front page)
   ========================================================================= */

/* ---------- Split hero ---------- */
.ph-home-hero { position: relative; background:
		radial-gradient(120% 80% at 100% 0%, rgba(194,161,77,.10), transparent 60%),
		linear-gradient(180deg, var(--ph-cream-2), #fff 70%);
	overflow: hidden; }
.ph-home-hero::before { content:""; position:absolute; right:-120px; top:-120px; width:420px; height:420px; border-radius:50%; border:1px solid var(--ph-line); opacity:.6; }
.ph-home-hero__inner { display:grid; grid-template-columns: 1.05fr .95fr; align-items:center; gap:48px; padding: clamp(40px, 6vw, 84px) 24px; }
.ph-home-hero__title { font-size: clamp(2.3rem, 5vw, 4rem); font-weight:800; line-height:1.05; letter-spacing:-.5px; margin:.15em 0 .35em; }
.ph-home-hero__hl { color: var(--ph-gold-dark); display:inline-block; }
.ph-home-hero__sub { font-size: clamp(1.02rem, 1.4vw, 1.2rem); color: var(--ph-muted); max-width: 30em; margin-bottom: 1.6em; }
.ph-home-hero__actions { display:flex; flex-wrap:wrap; gap:14px; }
.ph-home-hero__catalog { display:inline-flex; align-items:center; gap:8px; margin-top:18px; font-weight:600; font-size:.92rem; color: var(--ph-wine); }
.ph-home-hero__catalog:hover { color: var(--ph-gold-dark); }
.ph-home-hero__stats { display:flex; gap: clamp(20px,4vw,46px); margin-top: 36px; padding-top: 28px; border-top:1px solid var(--ph-line); }
.ph-stat__num { display:block; font-size: clamp(1.5rem,2.4vw,2.1rem); font-weight:800; color: var(--ph-wine); line-height:1; }
.ph-stat__label { font-size:.82rem; color: var(--ph-muted); }

.ph-home-hero__visual { position:relative; display:grid; place-items:center; min-height: 320px; }
.ph-home-hero__ring { position:absolute; width: min(78%, 420px); aspect-ratio:1; border-radius:50%;
	background: radial-gradient(circle at 50% 40%, rgba(194,161,77,.22), rgba(194,161,77,.04) 60%, transparent 70%);
	box-shadow: inset 0 0 0 1px rgba(194,161,77,.25); }
.ph-home-hero__img { position:relative; max-height: 540px; width:auto; filter: drop-shadow(0 26px 40px rgba(46,16,25,.28)); }
.ph-home-hero__placeholder { position:relative; width: min(70%,360px); aspect-ratio:3/4; border-radius: var(--ph-radius); background: linear-gradient(160deg, var(--ph-wine), var(--ph-wine-dark)); display:grid; place-items:center; box-shadow: var(--ph-shadow-lg); }
.ph-crest { font-weight:900; font-size:3rem; color: var(--ph-gold-light); letter-spacing:1px; }

.ph-btn--ghost { background: transparent; color:#fff; box-shadow: inset 0 0 0 1.5px rgba(255,255,255,.5); }
.ph-btn--ghost:hover { background: rgba(255,255,255,.12); color:#fff; }

/* ---------- USP strip ---------- */
.ph-usp { background:#fff; border-top:1px solid var(--ph-line); border-bottom:1px solid var(--ph-line); }
.ph-usp__grid { display:grid; grid-template-columns: repeat(6, 1fr); gap: 8px; padding: 30px 24px; }
.ph-usp__item { text-align:center; padding: 10px 12px; position:relative; }
.ph-usp__item + .ph-usp__item::before { content:""; position:absolute; left:0; top:18%; height:64%; width:1px; background: var(--ph-line); }
.ph-usp__icon { display:inline-grid; place-items:center; width:52px; height:52px; border-radius:50%; background: var(--ph-cream); color: var(--ph-gold-dark); margin-bottom:10px; }
.ph-usp__icon svg path { fill: currentColor; }
.ph-usp__item strong { display:block; font-size:.95rem; color: var(--ph-espresso); }
.ph-usp__desc { display:block; font-size:.78rem; color: var(--ph-muted); margin-top:3px; line-height:1.4; }

/* ---------- Featured collections ---------- */
.ph-feat-grid { display:grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.ph-feat-card { display:flex; flex-direction:column; background:#fff; border:1px solid var(--ph-line); border-radius: var(--ph-radius); overflow:hidden; transition: transform .25s var(--ph-ease), box-shadow .25s; }
.ph-feat-card:hover { transform: translateY(-6px); box-shadow: var(--ph-shadow-lg); }
.ph-feat-card__media { position:relative; aspect-ratio: 5/4; background: linear-gradient(160deg, var(--ph-cream), #fff); overflow:hidden; display:block; }
.ph-feat-card__media img { width:100%; height:100%; object-fit: cover; transition: transform .5s var(--ph-ease); }
.ph-feat-card:hover .ph-feat-card__media img { transform: scale(1.06); }
.ph-feat-card__noimg { position:absolute; inset:0; display:grid; place-items:center; font-weight:900; font-size:2rem; color: var(--ph-gold); }
.ph-feat-card__body { padding: 18px 18px 20px; display:flex; flex-direction:column; gap:6px; }
.ph-feat-card__title { font-size:1.06rem; color: var(--ph-espresso); }
.ph-feat-card__desc { font-size:.86rem; color: var(--ph-muted); flex:1; }
.ph-feat-card__more { font-size:.85rem; font-weight:700; color: var(--ph-wine); margin-top:6px; transition: gap .2s; }
.ph-feat-card:hover .ph-feat-card__more { color: var(--ph-gold-dark); }

/* ---------- Browse collections (vertical cards, colored footer) ---------- */
.ph-coll-grid { display:grid; grid-template-columns: repeat(5, 1fr); gap: 20px; }
.ph-coll-card { position:relative; display:flex; flex-direction:column; border-radius: var(--ph-radius); overflow:hidden; min-height: 300px; background: var(--ph-wine); box-shadow: var(--ph-shadow); transition: transform .25s var(--ph-ease), box-shadow .25s; }
.ph-coll-card:hover { transform: translateY(-6px); box-shadow: var(--ph-shadow-lg); }
.ph-coll-card__img { width:100%; height: 200px; object-fit: cover; }
.ph-coll-card__body { flex:1; display:flex; flex-direction:column; justify-content:center; padding: 16px 18px 18px; color:#fff; }
.ph-coll-card__body strong { color:#fff; font-size:1.02rem; line-height:1.2; }
.ph-coll-card__body em { font-style:normal; font-size:.78rem; color: rgba(255,255,255,.7); margin-top:3px; }
.ph-coll-card__arrow { position:absolute; right:14px; bottom:14px; width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background: rgba(255,255,255,.15); color:#fff; font-size:1rem; transition: background .2s, transform .2s; }
.ph-coll-card:hover .ph-coll-card__arrow { background: var(--ph-gold); transform: translateX(3px); }
.ph-coll-card--dark { background: var(--ph-espresso); }
.ph-coll-card__imgph { height:200px; }
.ph-coll-card__imgph .ph-ph { height:100%; min-height:0; border:0; border-radius:0; background: rgba(255,255,255,.07); color: rgba(255,255,255,.65); }
.ph-coll-card__imgph .ph-ph em { color: rgba(255,255,255,.55); }

/* ---------- Catalog band ---------- */
.ph-catalog { background: linear-gradient(120deg, var(--ph-wine), var(--ph-wine-dark)); color:#fff; overflow:hidden; }
.ph-catalog__inner { display:grid; grid-template-columns: minmax(0,.8fr) 1.2fr; align-items:center; gap: clamp(30px,5vw,64px); padding: clamp(44px,5vw,72px) 24px; }
.ph-catalog__cover { display:grid; place-items:center; }
.ph-catalog__cover img { border-radius: 10px; box-shadow: 0 26px 50px rgba(0,0,0,.4); transform: perspective(1000px) rotateY(8deg); max-height: 380px; width:auto; }
.ph-catalog__placeholder { width: min(100%, 300px); aspect-ratio: 3/4; border-radius:10px; background: linear-gradient(160deg, var(--ph-espresso), #1c0f0a); display:grid; place-items:center; align-content:center; gap:4px; box-shadow: 0 26px 50px rgba(0,0,0,.4); color: var(--ph-gold-light); text-transform:uppercase; letter-spacing:3px; }
.ph-catalog__placeholder strong { font-size:1.4rem; color:#fff; }
.ph-catalog__copy h2 { color:#fff; font-size: clamp(1.6rem,3vw,2.3rem); }
.ph-catalog__copy p { color: rgba(255,255,255,.85); max-width: 40em; }
.ph-catalog__points { list-style:none; padding:0; margin: 22px 0 26px; display:grid; grid-template-columns: 1fr 1fr; gap: 12px 24px; max-width: 520px; }
.ph-catalog__points li { position:relative; padding-left: 30px; font-size:.95rem; color: rgba(255,255,255,.92); }
.ph-catalog__points li::before { content:"✓"; position:absolute; left:0; top:-1px; width:21px; height:21px; border-radius:50%; background: var(--ph-gold); color: var(--ph-espresso); font-size:.72rem; font-weight:700; display:grid; place-items:center; }
.ph-catalog__actions { display:flex; flex-wrap:wrap; gap:14px; }

/* ---------- Sectors served ---------- */
.ph-sectors { background:#fff; border-bottom:1px solid var(--ph-line); padding: 34px 0; text-align:center; }
.ph-sectors__lead { text-transform:uppercase; letter-spacing:2px; font-size:.74rem; font-weight:600; color: var(--ph-muted); margin-bottom:16px; }
.ph-sectors__list { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; justify-content:center; gap:10px 14px; }
.ph-sectors__list li { font-weight:600; font-size:.95rem; color: var(--ph-espresso); padding: 8px 18px; border-radius:999px; background: var(--ph-cream); border:1px solid var(--ph-line); }

/* ---------- Custom-order CTA ---------- */
.ph-custom { padding: 64px 0; background: var(--ph-cream); }
.ph-custom__inner { background: linear-gradient(120deg, var(--ph-espresso), #1c0f0a); border-radius: 20px; padding: clamp(30px,4vw,52px); color:#fff; box-shadow: var(--ph-shadow-lg); position:relative; overflow:hidden; }
.ph-custom__inner::before { content:""; position:absolute; right:-80px; top:-80px; width:280px; height:280px; border-radius:50%; background: radial-gradient(circle, rgba(194,161,77,.18), transparent 70%); }
.ph-custom__head { display:flex; align-items:center; gap:22px; margin-bottom:30px; position:relative; }
.ph-custom__badge { flex:none; width:70px; height:70px; border-radius:18px; background: rgba(194,161,77,.15); color: var(--ph-gold-light); display:grid; place-items:center; }
.ph-custom__head h2 { color:#fff; margin-bottom:.15em; font-size: clamp(1.5rem,2.6vw,2.1rem); }
.ph-custom__head p { color: rgba(255,255,255,.8); margin:0; max-width: 52em; }
.ph-custom__steps { list-style:none; margin:0 0 30px; padding:0; display:grid; grid-template-columns: repeat(4,1fr); gap:16px; counter-reset: step; position:relative; }
.ph-custom__steps li { display:flex; align-items:center; gap:12px; font-weight:600; font-size:.95rem; color: rgba(255,255,255,.92); }
.ph-custom__steps li span { flex:none; width:34px; height:34px; border-radius:50%; background: var(--ph-gold); color: var(--ph-espresso); font-weight:800; display:grid; place-items:center; }
.ph-custom__actions { display:flex; flex-wrap:wrap; gap:14px; position:relative; }

/* ---------- Scroll reveal (only hides when JS is active, so no-JS shows all) ---------- */
.ph-reveal { transition: opacity .6s var(--ph-ease), transform .6s var(--ph-ease); }
html.ph-js .ph-reveal { opacity:0; transform: translateY(22px); }
html.ph-js .ph-reveal.is-in { opacity:1; transform:none; }

/* ---------- Page hero / breadcrumb ---------- */
.ph-page-hero { background: linear-gradient(120deg, var(--ph-wine), var(--ph-wine-dark)); color: #fff; padding: 56px 0; }
.ph-page-hero__title { color: #fff; font-size: clamp(1.8rem, 4vw, 2.8rem); margin: 0; }
.ph-page-hero__title span { color: var(--ph-gold-light); }
.ph-page-hero__desc { color: rgba(255,255,255,.85); max-width: 640px; margin-top: 10px; }
.ph-breadcrumb { padding: 18px 24px; font-size: .85rem; color: var(--ph-muted); }
.ph-breadcrumb a { color: var(--ph-muted); }
.ph-breadcrumb a:hover { color: var(--ph-wine); }

/* ---------- Archive / filter ---------- */
.ph-archive { padding: 44px 24px 80px; }
.ph-filter { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-bottom: 40px; }
.ph-filter__chip { padding: 8px 18px; border-radius: 999px; background: #fff; border: 1px solid var(--ph-line); color: var(--ph-ink); font-weight: 500; font-size: .9rem; }
.ph-filter__chip:hover, .ph-filter__chip.is-active { background: var(--ph-wine); color: #fff; border-color: var(--ph-wine); }

/* ---------- Single product ---------- */
.ph-single { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; padding: 10px 24px 80px; }
.ph-gallery__main { border-radius: var(--ph-radius); overflow: hidden; background: var(--ph-cream); box-shadow: var(--ph-shadow); }
.ph-gallery__img { width: 100%; height: auto; }
.ph-gallery__thumbs { display: flex; gap: 12px; margin-top: 14px; flex-wrap: wrap; }
.ph-gallery__thumb { width: 78px; height: 78px; border-radius: var(--ph-radius-sm); overflow: hidden; border: 2px solid transparent; background: #fff; padding: 0; }
.ph-gallery__thumb img { width: 100%; height: 100%; object-fit: cover; }
.ph-gallery__thumb.is-active { border-color: var(--ph-gold); }

.ph-single__code { display:inline-block; font-size: .8rem; letter-spacing: 1px; color: var(--ph-gold-dark); text-transform: uppercase; margin-bottom: 8px; }
.ph-single__title { font-size: clamp(1.6rem, 3vw, 2.3rem); margin-bottom: .4em; }
.ph-single__desc { color: var(--ph-muted); margin-bottom: 18px; }
.ph-single__material { font-size: .95rem; }
.ph-single__features { list-style: none; padding: 0; margin: 18px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ph-single__features li { display: flex; align-items: center; gap: 8px; font-size: .92rem; }
.ph-tick { display:grid; place-items:center; width: 22px; height: 22px; border-radius: 50%; background: var(--ph-gold); color: #fff; font-size: .7rem; flex: none; }
.ph-single__h3 { margin-top: 28px; font-size: 1.15rem; }

.ph-size-table { width: 100%; border-collapse: collapse; margin-top: 10px; background: #fff; border-radius: var(--ph-radius-sm); overflow: hidden; box-shadow: var(--ph-shadow); }
.ph-size-table th { background: var(--ph-wine); color: #fff; font-size: .82rem; text-transform: uppercase; letter-spacing: .5px; padding: 12px; text-align: left; }
.ph-size-table td { padding: 12px; border-bottom: 1px solid var(--ph-line); font-size: .92rem; }
.ph-size-table tr:last-child td { border-bottom: 0; }

.ph-swatches { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 10px; }
.ph-swatch { display: flex; align-items: center; gap: 8px; font-size: .9rem; }
.ph-swatch i { width: 26px; height: 26px; border-radius: 50%; border: 1px solid var(--ph-line); box-shadow: inset 0 0 0 2px #fff; }

.ph-single__actions { display: flex; gap: 14px; margin-top: 32px; flex-wrap: wrap; }

/* ---------- Content / pages ---------- */
.ph-content { padding: 44px 24px 80px; max-width: 860px; }
.ph-content__featured { border-radius: var(--ph-radius); margin-bottom: 24px; }
.ph-404 { text-align: center; }
.ph-404__actions { display: flex; gap: 14px; justify-content: center; margin: 24px 0; flex-wrap: wrap; }
.ph-empty { text-align: center; color: var(--ph-muted); padding: 40px; grid-column: 1/-1; }

.ph-pagination { margin-top: 44px; }
.ph-pagination .nav-links { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; }
.ph-pagination a, .ph-pagination .current { display:grid; place-items:center; min-width: 42px; height: 42px; padding: 0 12px; border-radius: var(--ph-radius-sm); background: #fff; border: 1px solid var(--ph-line); font-weight: 600; }
.ph-pagination .current { background: var(--ph-wine); color: #fff; border-color: var(--ph-wine); }

.ph-search { display: flex; gap: 10px; max-width: 480px; margin: 20px auto 0; }
.ph-search input { flex: 1; padding: 12px 16px; border-radius: 999px; border: 1px solid var(--ph-line); font-family: inherit; }

/* ---------- Footer ---------- */
.ph-footer { background: var(--ph-espresso); color: rgba(255,255,255,.78); margin-top: 0; }
.ph-footer__grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1.1fr 1.1fr; gap: 36px; padding: 64px 24px 40px; }
.ph-footer__enq p { font-size: .88rem; margin-bottom: 14px; }
.ph-footer__ic { color: var(--ph-gold-light); }
.ph-footer__bar-inner { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.ph-footer__legal { display: flex; gap: 18px; }
.ph-footer__legal a { color: rgba(255,255,255,.6); }
.ph-footer__logo img { max-height: 64px; filter: brightness(0) invert(1); opacity: .92; margin-bottom: 14px; }
.ph-footer__title { color: var(--ph-gold-light); }
.ph-footer h4 { color: #fff; margin-bottom: 18px; font-size: 1.05rem; position: relative; padding-bottom: 10px; }
.ph-footer h4::after { content:""; position:absolute; left:0; bottom:0; width: 34px; height: 2px; background: var(--ph-gold); }
.ph-footer__menu, .ph-footer__contact ul { list-style: none; padding: 0; margin: 0; }
.ph-footer__menu li, .ph-footer__contact li { margin-bottom: 12px; }
.ph-footer a { color: rgba(255,255,255,.78); }
.ph-footer a:hover { color: var(--ph-gold-light); }
.ph-footer__contact .ph-btn { margin-top: 8px; }
.ph-footer__bar { border-top: 1px solid rgba(255,255,255,.1); padding: 18px 0; font-size: .85rem; text-align: center; }

/* ---------- Floating WhatsApp ---------- */
.ph-fab-wa { position: fixed; right: 22px; bottom: 22px; z-index: 950; width: 58px; height: 58px; border-radius: 50%; background: var(--ph-wa); color: #fff; display: grid; place-items: center; box-shadow: 0 10px 30px rgba(37,211,102,.45); animation: ph-pulse 2.4s infinite; }
.ph-fab-wa:hover { color:#fff; transform: scale(1.06); }
@keyframes ph-pulse { 0%{box-shadow:0 0 0 0 rgba(37,211,102,.5)} 70%{box-shadow:0 0 0 16px rgba(37,211,102,0)} 100%{box-shadow:0 0 0 0 rgba(37,211,102,0)} }

/* ---------- Modal / form ---------- */
.ph-modal { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; padding: 20px; }
.ph-modal[hidden] { display: none; }
.ph-modal__backdrop { position: absolute; inset: 0; background: rgba(46,16,25,.55); backdrop-filter: blur(4px); animation: ph-fade .25s; }
.ph-modal__dialog { position: relative; background: #fff; border-radius: var(--ph-radius); width: 100%; max-width: 460px; padding: 34px; box-shadow: var(--ph-shadow-lg); animation: ph-pop .3s var(--ph-ease); max-height: 92vh; overflow-y: auto; }
@keyframes ph-fade { from{opacity:0} to{opacity:1} }
@keyframes ph-pop { from{opacity:0; transform: translateY(16px) scale(.98)} to{opacity:1; transform:none} }
.ph-modal__close { position: absolute; top: 14px; right: 16px; background: none; border: 0; font-size: 1.8rem; line-height: 1; color: var(--ph-muted); }
.ph-modal__close:hover { color: var(--ph-wine); }
.ph-modal__title { font-size: 1.5rem; margin-bottom: 4px; }
.ph-modal__sub { color: var(--ph-muted); font-size: .92rem; margin-bottom: 20px; }
.ph-form__product { background: var(--ph-cream); border-radius: var(--ph-radius-sm); padding: 10px 14px; font-size: .9rem; margin-bottom: 16px; }
.ph-form__row { margin-bottom: 14px; }
.ph-form__row label { display: block; font-size: .85rem; font-weight: 600; margin-bottom: 6px; color: var(--ph-espresso); }
.ph-form__row label span { color: #c0392b; }
.ph-form__row input, .ph-form__row textarea { width: 100%; padding: 11px 14px; border: 1px solid var(--ph-line); border-radius: var(--ph-radius-sm); font-family: inherit; font-size: .95rem; background: var(--ph-cream-2); transition: border-color .2s, box-shadow .2s; }
.ph-form__row input:focus, .ph-form__row textarea:focus { outline: none; border-color: var(--ph-gold); box-shadow: 0 0 0 3px rgba(194,161,77,.18); background: #fff; }
.ph-form__row input.ph-invalid, .ph-form__row textarea.ph-invalid { border-color: #c0392b; }
.ph-hp { position: absolute; left: -5000px; }
.ph-form__note { font-size: .78rem; color: var(--ph-muted); text-align: center; margin: 12px 0 0; }
.ph-form__feedback { margin-top: 12px; font-size: .9rem; text-align: center; }
.ph-form__feedback.is-error { color: #c0392b; }
.ph-form__feedback.is-success { color: #1e7e34; }
.ph-btn.is-loading { opacity: .7; pointer-events: none; }

/* =========================================================================
   IMAGE PLACEHOLDERS (until client uploads real photos)
   ========================================================================= */
.ph-ph { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; width:100%; height:100%; min-height:160px; background: var(--ph-cream); border:1.5px dashed var(--ph-gold); border-radius: var(--ph-radius); color: var(--ph-gold-dark); text-align:center; }
.ph-ph svg { opacity:.55; }
.ph-ph em { font-style:normal; font-size:.78rem; letter-spacing:.5px; color: var(--ph-muted); }
.ph-ph--stage { aspect-ratio:1/1; border-radius:18px; }
.ph-ph--hero { width: min(72%,360px); aspect-ratio:3/4; }
.ph-ph--wide { aspect-ratio:4/3; }
.ph-ph--arch { aspect-ratio:4/5; max-width:420px; border-radius:200px 200px 14px 14px; }
.ph-ph--cell { min-height:0; border-radius:12px; }

/* =========================================================================
   SINGLE PRODUCT (PDP)
   ========================================================================= */
.ph-pdp { display:grid; grid-template-columns: 1fr 1fr; gap:50px; padding: 14px 24px 52px; align-items:start; }
.ph-pdp__stage { position:relative; background: var(--ph-white); border:1px solid var(--ph-line); border-radius:18px; padding:28px; display:grid; place-items:center; aspect-ratio:1/1; overflow:hidden; }
.ph-pdp__img { max-width:100%; max-height:100%; width:auto; object-fit:contain; }
.ph-pdp__zoom { position:absolute; top:16px; right:16px; width:42px; height:42px; border-radius:50%; background:#fff; box-shadow: var(--ph-shadow); color: var(--ph-wine); border:0; display:grid; place-items:center; transition:.2s; }
.ph-pdp__zoom:hover { background: var(--ph-wine); color:#fff; }
.ph-pdp__thumbs-wrap { display:flex; align-items:center; gap:8px; margin-top:16px; }
.ph-pdp__thumbs { display:flex; gap:12px; overflow-x:auto; flex:1; scroll-snap-type:x mandatory; scrollbar-width:none; }
.ph-pdp__thumbs::-webkit-scrollbar { display:none; }
.ph-pdp__thumb { flex:0 0 auto; width:84px; height:84px; border-radius:12px; overflow:hidden; border:2px solid var(--ph-line); background:#fff; padding:0; cursor:pointer; scroll-snap-align:start; transition: border-color .2s; }
.ph-pdp__thumb img { width:100%; height:100%; object-fit:cover; }
.ph-pdp__thumb.is-active { border-color: var(--ph-wine); }
.ph-pdp__tnav { flex:none; width:34px; height:34px; border-radius:50%; border:1px solid var(--ph-line); background:#fff; color: var(--ph-wine); font-size:1.3rem; line-height:1; display:grid; place-items:center; transition:.2s; }
.ph-pdp__tnav:hover { background: var(--ph-wine); color:#fff; }

.ph-pdp__code { display:inline-block; font-size:.78rem; letter-spacing:1.5px; text-transform:uppercase; color: var(--ph-gold-dark); margin-bottom:6px; }
.ph-pdp__code strong { color: var(--ph-gold-dark); }
.ph-pdp__title { font-size: clamp(1.8rem,3.4vw,2.6rem); font-weight:800; color: var(--ph-ink); line-height:1.1; margin:.1em 0 .35em; }
.ph-pdp__rule { display:block; width:60px; height:3px; background: linear-gradient(90deg, var(--ph-gold), var(--ph-gold-light)); border-radius:2px; margin-bottom:22px; }
.ph-pdp__desc { color: var(--ph-muted); }
.ph-pdp__desc p { margin-bottom:.8em; }
.ph-pdp__features { list-style:none; padding:0; margin:24px 0; display:grid; grid-template-columns:1fr 1fr; gap:14px 24px; }
.ph-pdp__features li { display:flex; align-items:center; gap:10px; font-size:.92rem; color: var(--ph-ink); }
.ph-pdp__check { flex:none; width:24px; height:24px; border-radius:50%; background: var(--ph-wine); color:#fff; display:grid; place-items:center; }

.ph-pdp__buy { border:1px solid var(--ph-line); border-radius:16px; overflow:hidden; margin-top:24px; background:#fff; box-shadow: var(--ph-shadow); }
.ph-pdp__buy-top { display:flex; align-items:center; gap:20px; padding:20px 22px; flex-wrap:wrap; }
.ph-pdp__price span { display:block; font-size:.68rem; letter-spacing:1px; text-transform:uppercase; color: var(--ph-muted); }
.ph-pdp__price strong { font-size:2rem; color: var(--ph-wine); font-weight:800; line-height:1.1; }
.ph-pdp__actions { display:flex; gap:12px; flex:1; flex-wrap:wrap; justify-content:flex-end; }
.ph-pdp__assure { display:flex; flex-wrap:wrap; gap:8px 22px; padding:13px 22px; border-top:1px solid var(--ph-line); background: var(--ph-cream-2); }
.ph-pdp__assure span { display:inline-flex; align-items:center; gap:7px; font-size:.8rem; color: var(--ph-muted); }
.ph-pdp__assure svg { color: var(--ph-gold-dark); flex:none; }

.ph-pdp-usp { display:grid; grid-template-columns: repeat(4,1fr); gap:0; background: var(--ph-cream); border:1px solid var(--ph-line); border-radius:16px; padding:22px 8px; margin: 6px 0 54px; }
.ph-pdp-usp__item { display:flex; gap:14px; align-items:flex-start; padding:6px 20px; }
.ph-pdp-usp__item + .ph-pdp-usp__item { border-left:1px solid var(--ph-line); }
.ph-pdp-usp__icon { flex:none; width:46px; height:46px; border-radius:12px; background:#fff; border:1px solid var(--ph-line); display:grid; place-items:center; color: var(--ph-gold-dark); }
.ph-pdp-usp__item strong { display:block; font-size:.92rem; color: var(--ph-espresso); }
.ph-pdp-usp__item span { font-size:.78rem; color: var(--ph-muted); line-height:1.4; }

.ph-pdp-detail { display:grid; grid-template-columns:1fr 1fr; gap:50px; padding-bottom:64px; align-items:start; }
.ph-pdp-detail__h { font-size:1.05rem; text-transform:uppercase; letter-spacing:1px; color: var(--ph-wine); position:relative; padding-bottom:12px; margin-bottom:18px; }
.ph-pdp-detail__h::after { content:""; position:absolute; left:0; bottom:0; width:50px; height:3px; background: linear-gradient(90deg, var(--ph-gold), var(--ph-gold-light)); border-radius:2px; }
.ph-pdp-detail__h3 { margin-top:26px; font-size:1.05rem; }
.ph-spec-table { width:100%; border-collapse:collapse; border:1px solid var(--ph-line); border-radius:10px; overflow:hidden; }
.ph-spec-table th { text-align:left; vertical-align:top; width:38%; padding:13px 16px; font-weight:700; font-size:.9rem; color: var(--ph-espresso); }
.ph-spec-table td { padding:13px 16px; font-size:.9rem; color: var(--ph-muted); }
.ph-spec-table tr { border-bottom:1px solid var(--ph-line); }
.ph-spec-table tr:last-child { border-bottom:0; }
.ph-spec-table tr:nth-child(even) { background: var(--ph-cream-2); }
.ph-size-note { display:flex; align-items:flex-start; gap:8px; margin-top:14px; padding:12px 16px; background: var(--ph-cream); border:1px solid var(--ph-line); border-radius:10px; font-size:.85rem; color: var(--ph-muted); }
.ph-size-note svg { color: var(--ph-gold-dark); flex:none; margin-top:1px; }
.ph-size-note strong { color: var(--ph-espresso); }

.ph-related { padding: 8px 0 80px; }
.ph-related__head { display:flex; align-items:center; justify-content:center; gap:18px; margin-bottom:36px; }
.ph-related__head::before, .ph-related__head::after { content:""; height:1px; width:min(120px,14vw); }
.ph-related__head::before { background: linear-gradient(90deg, transparent, var(--ph-gold)); }
.ph-related__head::after { background: linear-gradient(90deg, var(--ph-gold), transparent); }
.ph-related__title { color: var(--ph-wine); letter-spacing:2px; text-transform:uppercase; font-size:1.05rem; margin:0; }

/* Product card foot (price + arrow) */
.ph-card__foot { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; padding-top:6px; }
.ph-card__price--enq { font-size:.84rem; color: var(--ph-muted); font-weight:600; }
.ph-card__go { flex:none; width:38px; height:38px; border-radius:50%; background: var(--ph-cream); color: var(--ph-wine); display:grid; place-items:center; font-size:1.1rem; transition: background .2s, color .2s, transform .2s; }
.ph-card__go:hover { background: var(--ph-wine); color:#fff; transform: translateX(2px); }

/* Lightbox */
.ph-lightbox { position:fixed; inset:0; z-index:1100; background: rgba(28,12,16,.92); display:flex; align-items:center; justify-content:center; padding:30px; animation: ph-fade .25s; }
.ph-lightbox[hidden] { display:none; }
.ph-lightbox img { max-width:92vw; max-height:88vh; border-radius:10px; box-shadow: var(--ph-shadow-lg); }
.ph-lightbox__close { position:absolute; top:18px; right:24px; background:none; border:0; color:#fff; font-size:2.4rem; line-height:1; cursor:pointer; }

/* =========================================================================
   CONTACT PAGE
   ========================================================================= */
.ph-c-hero { background: var(--ph-cream-2); padding: clamp(36px,5vw,64px) 0; }
.ph-c-hero__inner { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.ph-c-hero__title { font-size: clamp(2rem,4vw,3rem); font-weight:800; color: var(--ph-espresso); line-height:1.08; }
.ph-c-hero__title span { color: var(--ph-gold-dark); }
.ph-c-hero__sub { color: var(--ph-muted); max-width:34em; }
.ph-c-methods { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:28px; }
.ph-c-method { display:flex; align-items:center; gap:14px; }
.ph-c-method__ic { flex:none; width:46px; height:46px; border-radius:50%; background: var(--ph-wine); color: var(--ph-gold-light); display:grid; place-items:center; }
.ph-c-method strong { display:block; color: var(--ph-espresso); font-size:.95rem; }
.ph-c-method em { font-style:normal; color: var(--ph-muted); font-size:.85rem; }
.ph-c-hero__visual img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:18px; box-shadow: var(--ph-shadow); }

.ph-c-grid { display:grid; grid-template-columns:1.4fr 1fr; gap:34px; align-items:start; }
.ph-c-formcard { background:#fff; border:1px solid var(--ph-line); border-radius:18px; padding: clamp(24px,3vw,40px); box-shadow: var(--ph-shadow); }
.ph-c-formcard__title { font-size:1.5rem; color: var(--ph-espresso); position:relative; padding-bottom:12px; margin-bottom:22px; }
.ph-c-formcard__title::after { content:""; position:absolute; left:0; bottom:0; width:50px; height:3px; background: linear-gradient(90deg, var(--ph-gold), var(--ph-gold-light)); border-radius:2px; }
.ph-form__grid2 { display:grid; grid-template-columns:1fr 1fr; gap:0 18px; }
.ph-form__row select { width:100%; padding:11px 14px; border:1px solid var(--ph-line); border-radius: var(--ph-radius-sm); font-family:inherit; font-size:.95rem; background: var(--ph-cream-2); transition: border-color .2s, box-shadow .2s; }
.ph-form__row select:focus { outline:none; border-color: var(--ph-gold); box-shadow:0 0 0 3px rgba(194,161,77,.18); background:#fff; }
.ph-c-side { display:flex; flex-direction:column; gap:22px; }
.ph-c-infocard { background:#fff; border:1px solid var(--ph-line); border-radius:16px; padding:24px; box-shadow: var(--ph-shadow); }
.ph-c-infocard h3 { display:flex; align-items:center; gap:10px; font-size:1.1rem; color: var(--ph-espresso); margin-bottom:14px; }
.ph-c-infocard__ic { flex:none; width:34px; height:34px; border-radius:50%; background: var(--ph-cream); color: var(--ph-gold-dark); display:grid; place-items:center; }
.ph-c-hours { list-style:none; padding:0; margin:0; }
.ph-c-hours li { padding:8px 0; color: var(--ph-muted); border-bottom:1px dashed var(--ph-line); }
.ph-c-hours li:last-child { border-bottom:0; }
.ph-c-map { border-radius:12px; overflow:hidden; border:1px solid var(--ph-line); }
.ph-c-map iframe { display:block; }
.ph-c-addr { margin:12px 0 0; font-weight:600; color: var(--ph-espresso); font-size:.9rem; }
.ph-c-cta { background: linear-gradient(120deg, var(--ph-wine), var(--ph-wine-dark)); color:#fff; }
.ph-c-cta__inner { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:40px 24px; flex-wrap:wrap; }
.ph-c-cta h2 { color:#fff; margin-bottom:.2em; }
.ph-c-cta p { color: rgba(255,255,255,.85); margin:0; max-width:48em; }

/* =========================================================================
   ABOUT PAGE
   ========================================================================= */
.ph-a-hero { background: var(--ph-cream-2); padding: clamp(36px,5vw,68px) 0; overflow:hidden; }
.ph-a-hero__inner { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.ph-a-hero__title { font-size: clamp(2rem,4vw,3rem); font-weight:800; color: var(--ph-espresso); line-height:1.1; }
.ph-a-hero__title span { color: var(--ph-gold-dark); }
.ph-a-hero__sub { color: var(--ph-muted); max-width:38em; }
.ph-a-stats { display:flex; flex-wrap:wrap; gap:22px 38px; margin-top:30px; }
.ph-a-stat strong { display:block; font-size:1.9rem; font-weight:800; color: var(--ph-wine); line-height:1; }
.ph-a-stat span { font-size:.8rem; color: var(--ph-muted); }
.ph-a-hero__visual { position:relative; display:grid; place-items:center; }
.ph-a-hero__arch { position:absolute; width:78%; height:90%; top:5%; right:6%; background: linear-gradient(160deg, var(--ph-wine), var(--ph-wine-dark)); border-radius:240px 240px 18px 18px; opacity:.12; }
.ph-a-hero__visual img { position:relative; width:100%; max-width:420px; aspect-ratio:4/5; object-fit:cover; border-radius:240px 240px 14px 14px; box-shadow: var(--ph-shadow-lg); }

.ph-a-story { display:grid; grid-template-columns:1fr 1.1fr; gap:50px; align-items:center; }
.ph-a-story__title { font-size: clamp(1.6rem,2.8vw,2.2rem); color: var(--ph-espresso); }
.ph-a-story__text { color: var(--ph-muted); margin-bottom:22px; }
.ph-a-gallery { display:grid; grid-template-columns: repeat(3,1fr); grid-auto-rows:128px; gap:14px; }
.ph-a-gallery__cell { border-radius:12px; overflow:hidden; background: var(--ph-cream); }
.ph-a-gallery__cell img { width:100%; height:100%; object-fit:cover; }
.ph-a-gallery__cell--1 { grid-column: span 2; grid-row: span 2; }

.ph-why { background: var(--ph-cream); padding:64px 0; }
.ph-why__grid { display:grid; grid-template-columns: repeat(5,1fr); gap:20px; }
.ph-why__item { text-align:center; background:#fff; border:1px solid var(--ph-line); border-radius:14px; padding:30px 16px; transition: transform .25s var(--ph-ease), box-shadow .25s; }
.ph-why__item:hover { transform: translateY(-5px); box-shadow: var(--ph-shadow); }
.ph-why__icon { display:inline-grid; place-items:center; width:58px; height:58px; border-radius:50%; background: var(--ph-cream); color: var(--ph-gold-dark); margin-bottom:14px; }
.ph-why__item strong { display:block; color: var(--ph-espresso); margin-bottom:6px; }
.ph-why__desc { font-size:.84rem; color: var(--ph-muted); }

/* =========================================================================
   CLIENT LOGOS
   ========================================================================= */
.ph-clients { background:#fff; border-top:1px solid var(--ph-line); border-bottom:1px solid var(--ph-line); padding:40px 0; }
.ph-clients__lead { text-align:center; text-transform:uppercase; letter-spacing:2px; font-size:.74rem; font-weight:600; color: var(--ph-muted); margin-bottom:24px; }
.ph-clients__grid { display:grid; grid-template-columns: repeat(6,1fr); gap:24px; align-items:center; }
.ph-clients__cell { display:grid; place-items:center; height:72px; }
.ph-clients__cell img { max-height:54px; max-width:100%; width:auto; object-fit:contain; filter:grayscale(1); opacity:.7; transition:.2s; }
.ph-clients__cell img:hover { filter:none; opacity:1; }
.ph-clients__ph { display:grid; place-items:center; width:100%; height:100%; border:1.5px dashed var(--ph-line); border-radius:10px; color: var(--ph-muted); font-size:.78rem; letter-spacing:1px; }

/* Footer social */
.ph-footer__social { display:flex; gap:10px; margin-top:16px; }
.ph-footer__social a { width:38px; height:38px; border-radius:50%; background: rgba(255,255,255,.08); color: rgba(255,255,255,.8); display:grid; place-items:center; transition:.2s; }
.ph-footer__social a:hover { background: var(--ph-gold); color: var(--ph-espresso); }
.ph-footer__social svg path { fill: currentColor; }

/* =========================================================================
   404
   ========================================================================= */
.ph-404 { padding: clamp(50px,7vw,96px) 0; background:
		radial-gradient(120% 80% at 50% 0%, rgba(194,161,77,.10), transparent 60%),
		linear-gradient(180deg, var(--ph-cream-2), #fff); text-align:center; }
.ph-404__inner { max-width:680px; margin:0 auto; padding:0 24px; }
.ph-404__code { display:flex; align-items:center; justify-content:center; gap:6px; font-size: clamp(4rem,12vw,8rem); font-weight:900; color: var(--ph-wine); line-height:1; }
.ph-404__trophy { color: var(--ph-gold); display:inline-grid; place-items:center; }
.ph-404__title { font-size: clamp(1.5rem,3vw,2.2rem); color: var(--ph-espresso); margin:18px 0 8px; }
.ph-404__text { color: var(--ph-muted); max-width:46em; margin:0 auto 24px; }
.ph-404__search { max-width:460px; margin:0 auto 22px; }
.ph-404__actions { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
.ph-404__cats { margin-top:30px; font-size:.9rem; color: var(--ph-muted); }
.ph-404__cats span { display:block; margin-bottom:10px; text-transform:uppercase; letter-spacing:1px; font-size:.74rem; }
.ph-404__cats a { display:inline-block; margin:4px; padding:7px 16px; border-radius:999px; background:#fff; border:1px solid var(--ph-line); color: var(--ph-ink); font-weight:600; font-size:.85rem; }
.ph-404__cats a:hover { background: var(--ph-wine); color:#fff; border-color: var(--ph-wine); }

/* =========================================================================
   HOMEPAGE v2 — pixel-built to the brand mockup
   ========================================================================= */
.ph-btn--light { background:#fff; color: var(--ph-espresso); box-shadow: inset 0 0 0 1px var(--ph-line); }
.ph-btn--light:hover { background: var(--ph-cream); color: var(--ph-espresso); }
.ph-btn--cream { background:#fff; color: var(--ph-wine); }
.ph-btn--cream:hover { background: var(--ph-cream); color: var(--ph-wine); }
.ph-ar { display:inline-block; transition: transform .2s var(--ph-ease); }
.ph-btn:hover .ph-ar { transform: translateX(3px); }
.ph-eyebrow--gold { color: var(--ph-gold-dark); }

/* Decorative centered heading with gold flanking lines */
.ph-deco-head { display:flex; align-items:center; justify-content:center; gap:20px; margin-bottom:42px; }
.ph-deco-head::before, .ph-deco-head::after { content:""; height:2px; width:min(96px,11vw); border-radius:2px; }
.ph-deco-head::before { background: linear-gradient(90deg, transparent, var(--ph-gold)); }
.ph-deco-head::after { background: linear-gradient(90deg, var(--ph-gold), transparent); }
.ph-deco-head h2 { margin:0; font-size: clamp(1.3rem,2.4vw,1.8rem); letter-spacing:3px; text-transform:uppercase; color: var(--ph-espresso); font-weight:800; }

/* ---- Hero ---- */
.ph-hh { position:relative; overflow:hidden; background:
		linear-gradient(to right, var(--ph-bg) 0%, var(--ph-bg) 38%, #FBF8F3 52%, #FFFFFF 100%); }
.ph-hh__inner { display:grid; grid-template-columns: 1fr 1.1fr; align-items:center; gap:0;
	max-width:1920px; margin:0 auto;
	padding: clamp(28px,4.5vw,56px) 0 clamp(34px,4.5vw,60px) max(24px, calc((100vw - var(--ph-container)) / 2 + 24px)); }
.ph-hh__copy { max-width:560px; }
.ph-hh__title { font-size: clamp(2.3rem,5.2vw,4.1rem); font-weight:800; line-height:1.05; letter-spacing:-1px; color: var(--ph-espresso); margin:.18em 0 .42em; }
.ph-hh__title span { color: var(--ph-gold-dark); }
.ph-hh__sub { color: var(--ph-muted); font-size:1.05rem; max-width:30em; margin-bottom:1.5em; }
.ph-hh__btns { display:flex; gap:14px; flex-wrap:wrap; }
.ph-hh__dl { display:inline-flex; align-items:center; gap:8px; margin-top:18px; font-weight:600; font-size:.92rem; color: var(--ph-wine); }
.ph-hh__dl:hover { color: var(--ph-gold-dark); }
.ph-hh__stats { display:flex; gap: clamp(22px,3.5vw,46px); margin-top:34px; }
.ph-hstat { display:flex; align-items:center; gap:11px; }
.ph-hstat__ic { color: var(--ph-gold-dark); flex:none; }
.ph-hstat__t strong { display:block; font-size:1.5rem; font-weight:800; color: var(--ph-espresso); line-height:1; }
.ph-hstat__t em { font-style:normal; font-size:.8rem; color: var(--ph-muted); }
.ph-hh__media { position:relative; align-self:center; display:flex; align-items:center; }
.ph-hh__media img { width:100%; height:auto; object-fit:contain;
	-webkit-mask-image: linear-gradient(to right, transparent 0%, #000 18%);
	        mask-image: linear-gradient(to right, transparent 0%, #000 18%); }
@media (min-width:861px) {
	.ph-hh__media img { max-height: 600px; }
}

/* ---- 2026 catalog card ---- */
.ph-cat2026 { padding: 22px 0 12px; }
.ph-cat2026__card { display:grid; grid-template-columns:auto 1fr; gap: clamp(24px,4vw,56px); align-items:center; background: linear-gradient(120deg,#fffefb,#fffbf4); border:1px solid var(--ph-line); border-radius:20px; padding: clamp(24px,3vw,42px); position:relative; overflow:hidden; }
.ph-cat2026__card::after { content:""; position:absolute; right:-40px; bottom:-40px; width:240px; height:240px; border-radius:50%; background: radial-gradient(circle, rgba(194,161,77,.12), transparent 70%); }
.ph-cat2026__cover { width: clamp(150px,17vw,220px); position:relative; z-index:1; }
.ph-cat2026__cover img { width:100%; height:auto; border-radius:8px; box-shadow:0 18px 36px rgba(46,16,25,.28); transform: rotate(-3deg); }
.ph-cat2026__body { position:relative; z-index:1; }
.ph-cat2026__title { font-size: clamp(1.5rem,2.6vw,2rem); font-weight:800; color: var(--ph-espresso); margin-bottom:.3em; }
.ph-cat2026__title span { color: var(--ph-wine); }
.ph-cat2026__body > p { color: var(--ph-muted); max-width:34em; }
.ph-cat2026__feats { display:flex; flex-wrap:wrap; gap:18px 26px; margin:20px 0 24px; }
.ph-cat2026__feat { display:flex; flex-direction:column; align-items:center; gap:7px; text-align:center; width:74px; font-size:.76rem; font-weight:600; color: var(--ph-espresso); }
.ph-cat2026__ic { width:46px; height:46px; border-radius:50%; background:#fff; border:1px solid var(--ph-line); color: var(--ph-gold-dark); display:grid; place-items:center; }

/* ---- Browse collections (tall colored cards) ---- */
.ph-browse { padding: 50px 0; }
.ph-browse__grid { display:grid; grid-template-columns: repeat(5,1fr); gap:18px; }
.ph-bcard { position:relative; display:block; min-height:300px; border-radius:16px; overflow:hidden; padding:22px 20px; box-shadow: var(--ph-shadow); transition: transform .25s var(--ph-ease), box-shadow .25s; }
.ph-bcard:hover { transform: translateY(-6px); box-shadow: var(--ph-shadow-lg); }
.ph-bcard__txt { position:relative; z-index:2; display:block; max-width:85%; }
.ph-bcard__txt strong { display:block; font-size:1.15rem; line-height:1.15; margin-bottom:6px; }
.ph-bcard__txt span { display:block; font-size:.82rem; line-height:1.45; opacity:.92; }
.ph-bcard__img { position:absolute; z-index:1; right:-8%; bottom:0; width:80%; max-height:80%; height:auto; object-fit:contain; filter: drop-shadow(0 10px 18px rgba(0,0,0,.4)); }
.ph-bcard__arrow { position:absolute; z-index:2; left:20px; bottom:20px; width:40px; height:40px; border-radius:50%; display:grid; place-items:center; border:1.5px solid currentColor; font-size:1.1rem; transition: background .2s, color .2s, border-color .2s; }
.ph-bcard:hover .ph-bcard__arrow { background: var(--ph-gold); border-color: var(--ph-gold); color: var(--ph-espresso); }
.ph-bcard--wine { background: linear-gradient(160deg,#7c2331,var(--ph-wine-dark)); color:#fff; }
.ph-bcard--dark { background: linear-gradient(160deg,#2a2522,#141210); color:#fff; }
.ph-bcard--cream { background: linear-gradient(160deg,#efe7d8,#e1d4be); color: var(--ph-espresso); }
.ph-bcard--cream .ph-bcard__txt span { color: var(--ph-muted); }
.ph-bcard--navy { background: linear-gradient(160deg,#27344f,#161f30); color:#fff; }
.ph-bcard--espresso { background: linear-gradient(160deg,#2f221b,#170e09); color:#fff; }

/* ---- Value props strip ---- */
.ph-vp { padding: 4px 0 38px; }
.ph-vp__card { display:grid; grid-template-columns: repeat(6,1fr); gap:0; background:#fff; border:1px solid var(--ph-line); border-radius:16px; padding:30px 8px; box-shadow: var(--ph-shadow); }
.ph-vp__item { text-align:center; padding:6px 14px; position:relative; }
.ph-vp__item + .ph-vp__item::before { content:""; position:absolute; left:0; top:14%; height:72%; width:1px; background: var(--ph-line); }
.ph-vp__ic { display:inline-grid; place-items:center; color: var(--ph-gold-dark); margin-bottom:10px; }
.ph-vp__item strong { display:block; font-size:.95rem; color: var(--ph-espresso); }
.ph-vp__d { display:block; font-size:.78rem; color: var(--ph-muted); margin-top:4px; line-height:1.4; }

/* ---- Featured collections ---- */
.ph-fcol { padding: 40px 0; }
.ph-fcol__grid { display:grid; grid-template-columns: repeat(4,1fr); gap:24px; }
.ph-fcard { display:flex; flex-direction:column; background:#fff; border:1px solid var(--ph-line); border-radius:14px; overflow:hidden; box-shadow: var(--ph-shadow); transition: transform .25s var(--ph-ease), box-shadow .25s; }
.ph-fcard:hover { transform: translateY(-6px); box-shadow: var(--ph-shadow-lg); }
.ph-fcard__media { position:relative; display:block; aspect-ratio:4/3; overflow:hidden; background: var(--ph-cream); }
.ph-fcard__media img { width:100%; height:100%; object-fit:cover; transition: transform .5s var(--ph-ease); }
.ph-fcard:hover .ph-fcard__media img { transform: scale(1.05); }
.ph-fcard__body { padding:18px 18px 20px; position:relative; }
.ph-fcard__body strong { display:block; font-size:1.02rem; color: var(--ph-espresso); margin-bottom:6px; }
.ph-fcard__d { display:block; font-size:.85rem; color: var(--ph-muted); padding-right:32px; }
.ph-fcard__arrow { position:absolute; right:16px; bottom:18px; width:34px; height:34px; border-radius:50%; background: var(--ph-cream); color: var(--ph-wine); display:grid; place-items:center; transition: background .2s, color .2s, transform .2s; }
.ph-fcard:hover .ph-fcard__arrow { background: var(--ph-wine); color:#fff; transform: translateX(2px); }

/* ---- Explore complete collection (maroon) ---- */
.ph-xpl { padding: 28px 0 50px; }
.ph-xpl__card { display:grid; grid-template-columns: .9fr 1.1fr; align-items:center; gap: clamp(24px,4vw,56px); background: linear-gradient(120deg, var(--ph-wine), var(--ph-wine-dark)); border-radius:20px; padding: clamp(26px,4vw,52px); color:#fff; overflow:hidden; }
.ph-xpl__book img { width:100%; height:auto; border-radius:10px; box-shadow:0 22px 42px rgba(0,0,0,.4); }
.ph-xpl__body h2 { color:#fff; font-size: clamp(1.5rem,2.6vw,2.1rem); }
.ph-xpl__body > p { color: rgba(255,255,255,.85); }
.ph-xpl__checks { list-style:none; padding:0; margin:20px 0 26px; display:grid; grid-template-columns:1fr 1fr; gap:12px 24px; max-width:480px; }
.ph-xpl__checks li { position:relative; padding-left:30px; font-size:.92rem; color: rgba(255,255,255,.92); }
.ph-xpl__checks li::before { content:"✓"; position:absolute; left:0; top:-1px; width:21px; height:21px; border-radius:50%; background: var(--ph-gold); color: var(--ph-espresso); font-size:.7rem; font-weight:700; display:grid; place-items:center; }

/* ---- Client logos ---- */
.ph-logos { padding: 38px 0; background:#fff; border-top:1px solid var(--ph-line); border-bottom:1px solid var(--ph-line); }
.ph-logos__lead { text-align:center; text-transform:uppercase; letter-spacing:2px; font-size:.72rem; font-weight:600; color: var(--ph-muted); margin-bottom:22px; }
.ph-logos__grid { display:grid; grid-template-columns: repeat(6,1fr); gap:24px; align-items:center; }
.ph-logos__cell { display:grid; place-items:center; height:64px; }
.ph-logos__cell img { max-height:48px; max-width:100%; width:auto; object-fit:contain; }
.ph-logos__ph { display:grid; place-items:center; width:100%; height:100%; border:1.5px dashed var(--ph-line); border-radius:8px; color: var(--ph-muted); font-size:.78rem; letter-spacing:1px; }

/* ---- Custom award band (dark) ---- */
.ph-cband { padding: 22px 0 64px; }
.ph-cband__card { display:grid; grid-template-columns: 1.1fr 1.25fr auto; align-items:center; gap: clamp(22px,3vw,40px); background: linear-gradient(120deg,#2b1e17,#130b07); border-radius:18px; padding: clamp(26px,3vw,40px); color:#fff; }
.ph-cband__head { display:flex; align-items:center; gap:18px; }
.ph-cband__badge { flex:none; width:60px; height:60px; border-radius:14px; background: rgba(194,161,77,.15); color: var(--ph-gold-light); display:grid; place-items:center; }
.ph-cband__head h2 { color:#fff; font-size:1.4rem; margin-bottom:.2em; line-height:1.15; }
.ph-cband__head p { color: rgba(255,255,255,.78); margin:0; font-size:.9rem; }
.ph-cband__steps { list-style:none; margin:0; padding:0; display:grid; grid-template-columns: repeat(4,1fr); gap:14px; }
.ph-cband__steps li { display:flex; flex-direction:column; align-items:center; gap:8px; text-align:center; font-size:.76rem; font-weight:600; color: rgba(255,255,255,.9); }
.ph-cband__sic { width:42px; height:42px; border-radius:50%; background: rgba(255,255,255,.08); color: var(--ph-gold-light); display:grid; place-items:center; }
.ph-cband__btns { display:flex; flex-direction:column; gap:12px; }
.ph-cband__btns .ph-btn { white-space:nowrap; }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.ph-product-grid { grid-template-columns: repeat(3, 1fr); }
	.ph-trust__grid { grid-template-columns: repeat(2, 1fr); }
	.ph-browse__grid { grid-template-columns: repeat(3,1fr); }
	.ph-vp__card { grid-template-columns: repeat(3,1fr); gap:24px 0; }
	.ph-vp__item:nth-child(3n+1)::before { display:none; }
	.ph-fcol__grid { grid-template-columns: repeat(2,1fr); }
	.ph-cband__card { grid-template-columns: 1fr; gap:28px; text-align:left; }
	.ph-cband__steps { grid-template-columns: repeat(4,1fr); }
	.ph-cband__btns { flex-direction:row; flex-wrap:wrap; }
	.ph-clients__grid { grid-template-columns: repeat(3,1fr); gap:20px; }
	.ph-why__grid { grid-template-columns: repeat(3,1fr); }
	.ph-pdp-usp { grid-template-columns: repeat(2,1fr); gap:14px 0; }
	.ph-pdp-usp__item:nth-child(odd) { border-left:0; }
	.ph-usp__grid { grid-template-columns: repeat(3, 1fr); gap: 18px 8px; }
	.ph-usp__item:nth-child(3n+1)::before { display:none; }
	.ph-feat-grid { grid-template-columns: repeat(2, 1fr); }
	.ph-coll-grid { grid-template-columns: repeat(3, 1fr); }
	.ph-footer__grid { grid-template-columns: 1.5fr 1fr 1.2fr; }
	.ph-footer__about { grid-column: 1 / -1; }
}
@media (max-width: 860px) {
	.ph-home-hero__inner { grid-template-columns: 1fr; gap: 30px; text-align:center; }
	.ph-home-hero__sub { margin-left:auto; margin-right:auto; }
	.ph-home-hero__actions, .ph-home-hero__stats { justify-content:center; }
	.ph-home-hero__visual { order:-1; min-height: 260px; }
	.ph-home-hero__img { max-height: 360px; }
	.ph-catalog__inner { grid-template-columns: 1fr; text-align:center; }
	.ph-catalog__points { margin-left:auto; margin-right:auto; }
	.ph-catalog__actions { justify-content:center; }
	.ph-catalog__cover img { transform:none; }
	.ph-custom__steps { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 860px) {
	.ph-nav { position: fixed; inset: 78px 0 auto 0; background: #fff; box-shadow: var(--ph-shadow); transform: translateY(-150%); transition: transform .3s var(--ph-ease); margin: 0; }
	.ph-nav.is-open { transform: translateY(0); }
	.ph-menu { flex-direction: column; gap: 0; padding: 8px 24px 16px; }
	.ph-menu li { border-bottom: 1px solid var(--ph-line); }
	.ph-menu a { display: block; padding: 14px 0; }
	.ph-burger { display: flex; }
	.ph-header__cta .ph-btn--wa span { display: none; }
	.ph-header__cta .ph-btn--wa { padding: 12px; border-radius: 50%; }
	.ph-single { grid-template-columns: 1fr; gap: 28px; }
	.ph-cat-grid { grid-template-columns: repeat(2, 1fr); }
	.ph-footer__grid { grid-template-columns: 1fr 1fr; }
	.ph-pdp { grid-template-columns: 1fr; gap: 30px; }
	.ph-pdp-detail { grid-template-columns: 1fr; gap: 36px; }
	.ph-c-hero__inner, .ph-a-hero__inner { grid-template-columns: 1fr; gap: 30px; }
	.ph-c-hero__visual, .ph-a-hero__visual { order:-1; }
	.ph-c-grid { grid-template-columns: 1fr; }
	.ph-a-story { grid-template-columns: 1fr; gap: 32px; }
	.ph-coll-grid { grid-template-columns: repeat(3, 1fr); }
	.ph-hh__inner { grid-template-columns: 1fr; gap: 26px; padding-left:24px; padding-right:24px; }
	.ph-hh__media { order:-1; }
	.ph-hh__media img, .ph-hh__media .ph-ph { max-width:480px; margin:0 auto; }
	.ph-cat2026__card { grid-template-columns: 1fr; text-align:center; justify-items:center; }
	.ph-cat2026__feats { justify-content:center; }
	.ph-cat2026__body > p { margin-left:auto; margin-right:auto; }
	.ph-xpl__card { grid-template-columns: 1fr; text-align:center; }
	.ph-xpl__checks { margin-left:auto; margin-right:auto; }
	.ph-fcol__grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 600px) {
	body { font-size: 16px; }
	.ph-product-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
	.ph-section { padding: 52px 0; }
	.ph-cat-grid { grid-template-columns: 1fr; }
	.ph-trust__grid { grid-template-columns: 1fr; }
	.ph-footer__grid { grid-template-columns: 1fr; gap: 30px; }
	.ph-footer__about { grid-column: auto; }
	.ph-single__features { grid-template-columns: 1fr; }
	.ph-cta-band__inner { flex-direction: column; text-align: center; }
	.ph-cta-band__actions { justify-content: center; }
	.ph-modal__dialog { padding: 26px 20px; }
	.ph-usp__grid { grid-template-columns: repeat(2, 1fr); }
	.ph-usp__item:nth-child(3n+1)::before { display:block; }
	.ph-usp__item:nth-child(2n+1)::before { display:none; }
	.ph-feat-grid { grid-template-columns: 1fr 1fr; gap:16px; }
	.ph-coll-grid { grid-template-columns: 1fr 1fr; gap:14px; }
	.ph-coll-card { min-height: 260px; }
	.ph-coll-card__img { height: 150px; }
	.ph-home-hero__stats { gap: 22px; flex-wrap:wrap; }
	.ph-custom__head { flex-direction:column; text-align:center; }
	.ph-custom__steps { grid-template-columns: 1fr; }
	.ph-custom__actions { justify-content:center; }
	.ph-sectors__list li { font-size:.85rem; padding:7px 14px; }
	.ph-pdp__features { grid-template-columns: 1fr; }
	.ph-pdp__buy-top { flex-direction:column; align-items:stretch; }
	.ph-pdp__actions { justify-content:stretch; }
	.ph-pdp__actions .ph-btn { flex:1; }
	.ph-pdp-usp { grid-template-columns: 1fr; }
	.ph-pdp-usp__item { border-left:0 !important; border-bottom:1px solid var(--ph-line); padding-bottom:14px; }
	.ph-pdp-usp__item:last-child { border-bottom:0; }
	.ph-c-methods { grid-template-columns: 1fr; }
	.ph-clients__grid { grid-template-columns: repeat(2,1fr); }
	.ph-why__grid { grid-template-columns: 1fr 1fr; }
	.ph-a-stats { gap:16px 24px; }
	.ph-a-stat strong { font-size:1.5rem; }
	.ph-a-gallery { grid-auto-rows:100px; }
	.ph-c-cta__inner, .ph-c-cta__inner { flex-direction:column; text-align:center; align-items:flex-start; }
	.ph-browse__grid { grid-template-columns: 1fr 1fr; gap:14px; }
	.ph-bcard { min-height:230px; }
	.ph-bcard__txt strong { font-size:1.02rem; }
	.ph-vp__card { grid-template-columns: repeat(2,1fr); gap:22px 0; }
	.ph-vp__item:nth-child(3n+1)::before { display:block; }
	.ph-vp__item:nth-child(2n+1)::before { display:none; }
	.ph-fcol__grid { grid-template-columns: 1fr 1fr; gap:16px; }
	.ph-hh__stats { gap:18px; flex-wrap:wrap; }
	.ph-hstat__t strong { font-size:1.3rem; }
	.ph-cband__steps { grid-template-columns: repeat(2,1fr); gap:18px; }
	.ph-cband__head { flex-direction:column; text-align:center; }
	.ph-cband__btns { width:100%; }
	.ph-cband__btns .ph-btn { flex:1; justify-content:center; }
	.ph-logos__grid { grid-template-columns: repeat(3,1fr); gap:18px; }
	.ph-deco-head h2 { font-size:1.1rem; letter-spacing:2px; }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .001ms !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
}
