/* /featured: "see yours" (functions/_funnel.js), MacPip's public/funnel.css. A window, the maker's own app in each paid spot,
   and one buy box. The phone is the home page's own (public/phone.css), the island Pip's own (public/notch.css .fnnotch).
   Tokens only, logical sides. */
.fn{max-width:1120px;margin:0 auto;padding:32px 20px 56px}
.fnwin{background:var(--paper);border:1.5px solid var(--ink);border-radius:14px;box-shadow:5px 5px 0 var(--ink);overflow:hidden}
.fntools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 24px;border-bottom:1px solid var(--line);background:var(--cream)}
.fnseg{display:inline-flex;border:1px solid var(--ink);border-radius:8px;overflow:hidden;background:var(--paper)}
.fnseg button{border:0;border-inline-end:1px solid var(--line);background:none;font:13.5px var(--sans);padding:7px 14px;color:var(--mute);cursor:pointer;white-space:nowrap;min-height:40px}
.fnseg button:last-child{border-inline-end:0}
.fnseg button.on{background:var(--ink);color:var(--paper)}
.fnwho{display:inline-flex;align-items:center;gap:6px;margin-inline-start:auto}
.fnwho img{width:20px;height:20px;border-radius:5px}
.fnwho a{text-decoration:underline}
.fnin{padding:24px}
.fngrid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px;align-items:start}
.fn h1{font:500 clamp(30px,3.6vw,38px)/1.08 var(--serif);margin:0 0 8px;letter-spacing:-.01em}
.fnlead{color:var(--mute);margin:0 0 20px;font-size:15.5px}
.fnsmall{font-size:13px;color:var(--mute);margin:8px 0}
.fnsmall a,.fnsrc a,.fnnote a,.fnfold a{text-decoration:underline}
.fnmini{background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:12px;overflow:hidden}
.fncap{font:10px var(--pixel);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin:0 0 18px}
.fnyou{position:relative;outline:2px dashed var(--ink);outline-offset:4px;border-radius:12px}
.fnyou:before{content:"Yours";position:absolute;top:-14px;inset-inline-end:10px;z-index:4;font:9px var(--pixel);letter-spacing:.08em;text-transform:uppercase;background:var(--ink);color:var(--paper);padding:2px 6px;border-radius:4px}
/* The big iPhone as the home page draws it, centred. Yours is marked with the same dashed line. */
.fnphone .stage2{margin:0;display:grid;justify-items:center}
.fnphone .pwrap{align-items:center}
.fnphone .stage2>.cl-label{text-align:center}
.fnme{outline:2px dashed var(--ink);outline-offset:3px;border-radius:14px}
.fnstill .bigphone{pointer-events:none}
.fnstill .pic,.fnstill .pwdg{cursor:default}
.fnsec{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}
.fnsec h2{font:500 21px var(--serif);margin:0 0 8px}
.fnnums{display:flex;flex-wrap:wrap;gap:6px 24px;margin:6px 0 2px;font-size:13.5px;color:var(--mute)}
.fnnums b{font:500 22px var(--serif);color:var(--ink);margin-inline-end:4px}
.fnsrc{font-size:12px;color:var(--faint,var(--mute));margin:2px 0 12px}
.fnfold{border-top:1px solid var(--line);margin-top:16px}
.fnfold summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;padding:14px 0;font:500 18px var(--serif);min-height:44px;box-sizing:border-box}
.fnfold summary::-webkit-details-marker{display:none}
.fnfold summary:after{content:"+";margin-inline-start:auto;font:16px var(--sans);color:var(--mute)}
.fnfold[open] summary:after{content:"\2212"}
.fnfold summary small{font:13px var(--sans);color:var(--mute)}
.fnfold p{font-size:13.5px;margin:0 0 10px}
.fnbuy{position:sticky;top:84px;border:1.5px solid var(--ink);border-radius:12px;background:var(--paper);padding:22px;box-shadow:3px 3px 0 var(--ink)}
.fnbuy h2{font:500 22px/1.15 var(--serif);margin:2px 0 2px}
.fnlbl{font:10px var(--pixel);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin:0}
.fnlens{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border:1px solid var(--ink);border-radius:8px;overflow:hidden;margin:12px 0}
.fnlens button{border:0;border-inline-end:1px solid var(--line);background:var(--paper);padding:9px 4px;font:13.5px/1.25 var(--sans);color:var(--ink);cursor:pointer;min-height:44px}
.fnlens button:last-child{border-inline-end:0}
.fnlens button small{display:block;font-size:11.5px;color:var(--mute)}
.fnlens button.on{background:var(--ink);color:var(--paper)}.fnlens button.on small{color:var(--box2)}
.fnprice{display:flex;align-items:baseline;gap:8px;margin:6px 0}
.fnprice b{font:500 34px/1 var(--serif)}.fnprice span{font-size:13px;color:var(--mute)}
.fncal{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;margin:6px 0}
.fncal.fnweeks{grid-template-columns:repeat(6,minmax(0,1fr))}
.fnday{border:1px solid var(--line);border-radius:6px;background:var(--cream);color:var(--ink);text-align:center;padding:5px 0 4px;font:11px/1.2 var(--sans);cursor:pointer;min-height:44px}
.fnday b{display:block;font:500 15px var(--serif);white-space:nowrap}
.fnweeks .fnday b{font-size:13px}
.fnday i{display:block;font:7.5px var(--pixel);font-style:normal;color:var(--mute);margin-top:2px;white-space:nowrap}
.fnday.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.fnday.on i{color:var(--y)}
.fnday:disabled{opacity:.42;cursor:default}
.fnticks{list-style:none;padding:0;margin:14px 0;display:grid;gap:7px;font-size:13.5px}
.fnticks li{display:flex;gap:8px}
.fnticks li:before{content:"\2713";flex:none;width:17px;height:17px;border-radius:4px;border:1px solid var(--ink);background:var(--y);color:var(--ink);font-size:10px;display:grid;place-items:center;margin-top:1px}
.fngo{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 14px;border-radius:8px;background:var(--ink);color:var(--paper);font:600 14.5px var(--sans);text-align:center;overflow:hidden;text-decoration:none}
.fngo:after{content:"";position:absolute;inset-inline:0;bottom:0;height:3px;background:var(--stripes)}
.fngo.off{opacity:.45;pointer-events:none}
.fnfine{font-size:12px;color:var(--mute);margin:12px 0 0;line-height:1.5}
.fnstart .fnin{max-width:640px;margin:0 auto;padding:40px 24px}
.fnask label{display:block;font-size:13.5px;margin:0 0 6px}
.fnaskrow{display:flex;gap:8px}
.fnaskrow input{flex:1;min-width:0;min-height:46px;box-sizing:border-box;margin:0;padding:0 14px;border:1.5px solid var(--ink);border-radius:8px;background:var(--paper);font:16px var(--sans);color:var(--ink)}
.fnaskrow button{min-height:46px;padding:0 18px;border:0;border-radius:8px;background:var(--ink);color:var(--paper);font:600 15px var(--sans);cursor:pointer}
.fnnote{margin:10px 0 0;font-size:13.5px}
.fnchips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 14px}
.fnchip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px 0 8px;border:1px solid var(--line);border-radius:999px;background:var(--cream);font-size:13.5px;color:var(--ink);text-decoration:none}
.fnchip img{width:20px;height:20px;border-radius:5px}
.fnjump{display:none}
@media (max-width:900px){
  .fngrid{grid-template-columns:minmax(0,1fr)}.fnbuy{position:static}
  .fnjump{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;margin:-6px 0 16px;border:1.5px solid var(--ink);border-radius:8px;font-size:14px;background:var(--paper)}
  .fnjump:after{content:"\2193";margin-inline-start:6px}
}
@media (max-width:640px){
  .fn{padding:16px 12px 40px}.fnwin{box-shadow:3px 3px 0 var(--ink)}.fnin{padding:16px}.fntools{padding:10px 12px}
  .fnseg{width:100%;overflow-x:auto}.fnseg button{flex:1;padding:8px 8px;font-size:13px}.fnwho{margin-inline-start:0}
  .fncal{grid-template-columns:repeat(5,minmax(0,1fr))}.fncal .fnday:nth-child(n+6){display:none}
  .fncal.fnweeks{grid-template-columns:repeat(3,minmax(0,1fr))}.fncal.fnweeks .fnday:nth-child(n+6){display:block}
  .fnaskrow{flex-direction:column}
}
